Mercari’s future as envisioned by CTO Namura: An organic and leadership-based organization
On July 2nd, Developers Summit 2019 was held as an event allowing app-developing engineers to take the stage. Several companies presented, sharing their knowledge on technology, products, development processes, and engineering organizations.
This year, CTO Namura and Backend VP Shinji Tanaka represented Mercari on stage. They talked about the microservices migration that Mercari started in July 2018, focusing on topics such as the background that led to the decision to migrate to microservices, the type of engineering organization that the company wants to create, and what the road towards microservices is actually like. They also shared actual examples from organizational and technical perspectives.
We will be sharing Namura’s report from the event. He discussed the issues faced by Mercari’s engineering organization, as well as the company’s vision of becoming an organic organization with strong leadership.
*This article features an edited version of Namura’s presentation, arranged by Mercan’s editorial team.
Mercari’s challenges: Declining ownership and lack of information transparency
Microservices are a development method involving multiple small services that are linked, managed, and operated. One characteristic is that members and teams are given the discretion to freely work on development. Mercari has been using monolithic services since it was founded, so why did the company decide to switch to microservices, the complete opposite method?
Namura： Mercari’s engineering organization is currently divided into 4 main parts.
・ Product Development・・・Mainly includes frontend and client side teams, which work on implementing services while communicating with product managers
・ Backend・・・Includes backend and SRE teams, which oversee the product’s backend systems. Also involves work on microservice migration.
・ Data・・・Mainly includes machine learning & AI, BI, and search system teams. Involves the usage of data to improve services.
・ Engineering Organization・・・Includes onboarding teams that focus on hiring and training.
Namura: However, with recent events like the Merpay payment service being launched, these systems are becoming more and more complicated. Work is being divided within the teams, and individual team members are finding that they have smaller scopes of responsibility. This has led to a decrease of ownership, along with the decline of members’ visions of what they want Mercari to become. Also, a hierarchy has inevitably developed in line with the organization’s growth. Because of that, the transparency in the organization has decreased and voices like “I don’t know who to ask” and “I don’t know who made this decision” are becoming more common. These are some of the issues that Mercari is currently facing.
One goal of the microservices migration is to help establish an “organic and leadership-based organization.”
As businesses get more complicated, more tasks are divided and ownership declines. Due to the stronger hierarchy, there is less transparency regarding recent events and information. Mercari is taking on microservices as one way to solve these issues. We can foresee our “ideal organization” that we will achieve after solving issues regarding the drops of ownership and transparency (Namura spoke more regarding this topic).
Namura: There are four elements involved in achieving the “ideal organization” that will be formed after solving these issues.
Namura: The first involves establishing a training-based organization. This basically means that we are aiming to make an engineering organization where members will be able to grow just by being part of it. Mecari is often seen as a company that is “hiring aggressively,” but it is rare to hear comments like “engineers coming from Mercari are really skilled.” This is why we are creating an environment that will allow Mercari’s engineers to grow continuously. There is no doubt that business growth is linked to member growth. The opposite mindset is also true – if we focus on member growth, the business will naturally grow as well.
Next is microdecisions. This involves giving engineers as much authority as possible and having them make decisions as they carry out their work. This concept is essential for establishing the training-based organization mentioned earlier. It is also an important point that can strengthen ownership.
Also, “Everyone is a software engineer.” I mentioned this earlier, but Mercari is currently dividing up work and defining the job positions between the engineers. There are cases where we’ll hear things like “iOS engineers only work in that field and nowhere else.” Of course, the point is not to deny members the chance to raise their knowledge and technical skills in their fields of specialty ーWe simply view technology as a method for us to make our products with. In addition to our goal of creating the best possible product, we also believe that we should not narrow down the scope of job definitions.
The last element is an open organization. This is a mindset that has become more prevalent recently. There is also an “open source” concept where engineers share product development methods and achievements with each other outside of the office. That gave us an idea: “Why don’t we share information about our organization, too?” Mercari plans to share more and more about its mindset and internal systems.
Suguru Namura (Mercari CTO)
A training-based organization, microdecision, “everyone is a software engineer,” and an open organization. Namura stated that any organization capable of accomplishing these can be considered organic and leadership-based.
Namura: What do we get when all four of these elements are met? It’s a concept that’s difficult to explain in any language, but it would essentially lead to the birth of an organic and leadership-based organization.
Namura: We’re not denying the existence of a hierarchy. We simply are aiming to share the overall direction in a top-down manner, while taking various ideas and decisions in a bottom-up manner, in order to create a great product in the end. All living things – not just humans – have evolved and survived through trial and error. As a company aiming to have strong leadership, Mercari too greatly values the ideas of its members and aims to have an organization where members can freely take on new challenges. Mercari is also looking forward to various phases of evolution that will push us beyond our imaginations.
Why are microservices needed in an organic and leadership-based organization?
So what is needed to become an organic and leadership-based organization? Namura brought up the following six items: Microservices, micro components, design systems, data platform, feature flags, and an engineering ladder.
Namura: These are the necessary elements for an organic and leadership-based organization.
Namura: “Microservices” has become a trendy word, as many people may have noticed. Mercari has been working on the migration to microservices and is making steady progress. Micro componentsinvolve a frontend-like mindset, and are essentially a method for dividing up roles. When these two are combined, it provides a structure allowing individuals to work at their best, even after the organization grows very big.
Design systems are a method for defining statements and applying them in systems. When engineers request certain features, designers don’t respond by making designs from scratch each time. Instead, they gather and arrange the components needed to complete the feature. Although it is already used at companies like Uber and Airbnb, Mercari’s defined design systems are similar to the material designs used at Google.
We will also emphasize data-based decisions from now on. That will be used to make a data platform and make various decisions based on data. This is where we use feature flags, a similar feature to AB tests. They are used to check how effective features are with certain users. However, individual decisions are important when it is deemed that a feature is not effective for certain users. The closer we are to being an organic organization, the more important it is to make successful decisions in a bottom-up way. There are times when people tend to make decisions based on gut feeling, or just because something “feels right.” Data-based decisions are especially important in these situations. Mercari in particular has clear factors to pay attention to, like improving the customer experience. This is why the company will really be emphasizing the use of clear and concrete data to make decisions.
Last is the engineering ladder. This refers to the career matrix for engineers. Mercari is currently defining what engineers should be able to do if they possess certain skills. These definitions will be linked to the internal evaluation system.
This is where microservices, one of the main topics, come into place. I’d also like to clarify why we chose microservices.
Namura: So why did we choose microservices? I think that they are an essential element for becoming an organic organization. It’s very important to have an environment where members can take ownership and make decisions. However, it can be difficult to make decisions when one’s scope of responsibilities is too large.
Namura: The first thing to do is to make a concise scope of responsibilities, creating an environment where decisions can be made easily. In addition to delegating authority, this allows us to keep systems cleanly separated by scope. This is relatively easy to do and is important as the first step toward achieving our desired organic organization. Microservices, micro components, design Systems, data platform, feature flags, and an engineering ladder – Having all of these elements will allow us to become a continuously growing organization, and ultimately will lead to excellent products as well.
Making the engineering organization open source while migrating to microservices
Mercari’s microservice migration is coinciding with the re-establishment of the engineering organization. Namura finished by expressing his desire to share Mercari’s engineering organization and recruitment process with external parties.
Namura: An example is the engineering ladder mentioned earlier. We will take our ladder and evaluation process for engineers and share it abroad. By making this information more and more open, we believe we can make the engineering industry an even happier one. A problem faced by recent startups is that they aren’t sure how to evaluate their engineers. Mercari aims to make its career, evaluation criteria, and recruitment criteria open, and have it spread as a prime example of an effective organization.
This won’t end with the ladder, of course. Mercari also plans to openly share its recruitment process and internal information. In addition, we are hoping to make our organization an open source one. I also think it would be interesting if a movement started where other companies start sharing their processes and characteristics as well.
What we want to accomplish with microservices is to make sure all engineers at Mercari can take ownership while developing, and experience growth as part of an organic and leadership-based organization. These are the elements that we’ll be working to unlock in the future.
After joining Cyber Agent, Inc. in 2004, Namura worked on launching new services including Ameba Pigg, AWA, and AbemaTV. He joined Mercari in July 2016, and after leading development of the US version of Mercari, he took on the position of CTO in April 2017.