* This article is a translation of the Japanese article written on Dec. 25th, 2021.
2021 is nearly over. Looking back over the last year has shown that a lot has happened with the Mercari engineering organization; that also includes taking on some new challenges.
Before getting to the meat of this article, let’s review some of the major events that occurred over the year. First was the major update to the web version of Mercari.
- Reference articles:
We first began implementing microservice migration in 2017. This year, we finally reached a significant milestone, with nearly all teams now developing using microservices.
- Reference article: Microservice Migration at Mercari: The Ideal and the Real
As our next step, we are now truly focused on a “Robust Foundation for Speed” to invest in enhancing our business infrastructure.
- Reference article: Why is Mercari Investing in Business Infrastructure Enhancement Now? All About the “Robust Foundation for Speed” Project
Now let’s move on to the rest of the article! So, what else happened in 2021 (other than the events covered by the articles mentioned above)? What initiatives were taken?
We asked team members leading the engineering organization to look back on the previous year and to discuss the initiatives they’ll be taking next year.
This interview was conducted by @afroscript in the Engineering Office. The following individuals joined the discussion.
- @kwakasa: CTO
- @stanaka: VP of Backend
- @mtsuka: Developer Productivity Engineering Team Director
- @CaDs: Personalized Marketplace & Engagement Platform Team Director
- @kimuras: AI & Search Team Director
- @hisahiko: Engineering Office Team Director
Table of contents
- Lasting impressions from 2021 (technical)
- Lasting impressions from 2021 (organizational)
- Enthusiasm for 2022
- Hiring Information
Lasting impressions from 2021 (technical)
Handling an incident across multiple Mercari groups
— Let’s get started. First of all, what happened this year that left a lasting impression on you, in terms of technology?
Okay, I would not want to start with a negative, but we can’t ignore that incident where a third party gained unauthorized access to Codecov.
- Reference article: Mercari’s Response to the Codecov Vulnerability and Related Notification on Personal Information Exposure
This incident (see the reference article [Mercari’s Response to the Codecov Vulnerability and Related Notification on Personal Information Exposure]) resulted in some source code and some customer information being leaked outside the company. We want to take this opportunity to apologize again to our customers.
Modern software development incorporates various supply chains. We weren’t completely unaware of the threat of attacks targeting supply chains (“supply chain attacks”), but we definitely needed to be more aware of them.
There were still some engineering practices in the technical resources we’ve accumulated within Mercari that were not up to par, which played a role in the supply chain attack.
— How did you handle this incident?
This was a result of linking data that shouldn’t have been linked, so we focused on improving that. A similar incident could occur in the future, so we will need to continue to focus on prevention during the software life cycle.
Right, I’m sure we can all agree that it’s important to use tools and systems properly. I think this is part of software engineering literacy that needs to be taken seriously. Of course, we can’t simply rely on individual effort; as an organization, we need to invest in systems that reliably detect issues and provide alerts.
This was definitely a result of not doing what we needed to do. However, if we lean too hard into strict governance, we could lose what makes Mercari great. So I think striking the right balance is important. We’re a listed company, so we need to work not as individuals but as a team. Having said that, relying too much on the team aspect to the detriment of individual work makes it difficult to adapt. Through this adversity, I came to really understand how difficult it is to get just the right balance.
I understand what you mean. There are a lot of ultra-diligent people working at Mercari. That’s a good thing, but it also means that people sometimes tend to think in binary terms. It’s important to strike the right balance. You need to work on both offense and defense, so to speak. You can’t focus too much on one or the other. To continue with the sports analogy, it’s closer to playing soccer, as opposed to a sport like baseball, where you are regularly switching between total offense and total defense.
I’d also like to think more about the proper engineer mindset. We’ll be introducing and using more and more tools, such as CI. These tools all carry some degree of risk, but that doesn’t mean we stop using tools—it means we need to consider the risks and use the tools properly. I want to focus on cultivating this awareness and mindset.
I’d like to take a different perspective. This incident is the first one we’ve handled across multiple Mercari Group entities since the engineering organization reached its current size. Each group took leadership in its own way, and some team members stepped up to work on organizing information. In that sense, I saw this as a really great opportunity for some new leaders to emerge.
Definitely. As Mercari grows as a service, the relationships between each organization and team become more complex. Each team member needs to work autonomously to gather information and work toward resolving the issue. This was truly an opportunity for us to once again recognize the importance of “Accountable Autonomy*,” which is something we’ve been advocating within the organization.
* Accountable Autonomy: Working autonomously with a sense of independence (reference article: What Are the Biggest Challenges Facing the Mercari CTO Today? Looking Back on Both the Technology and the Organization)
Establishing Souzoh and launching Mercari Shops
— What else left an impression on you during 2021?
We also established Souzoh and launched Mercari Shops (“Shops”).
- Reference articles:
Souzoh is an independent company, so it has a different development organization. However, it does share a lot in common with Mercari, and so we were involved in development related to its release. What struck me most was how quickly the Souzoh development team reached its decision to develop Shops in a loosely-coupled manner. Although there were arguments for and against this, they decided to apply the Souzoh value of “Move Fast” during development and made the decision to “Go Bold.”
I was involved in integration with Souzoh from the Mercari side. At first, I thought we would just add a tab in the Mercari app and that Shops would exist independently there. However, we focused on the user experience and decided that it would be better to provide an experience closer to that of using Mercari. For example, the same “like” function from Mercari can be used in Shops as well. I think we were able to provide “All for One” support leading up to the release of Shops.
I want development to be loosely-coupled and the customer experience (CX) to be seamless. These are not easy tasks. Currently, Mercari is structured in such a way that loosely-coupled development could interrupt CX. In order to deliver excellent CX, we need to provide functions and data over well-defined interfaces, especially in interface areas. While this is something we already understood, our work on Shops development made it even clearer.
If we look at the history of computer science, operating systems didn’t always exist; the same is true for the Internet and TCP/IP— computer science history contains many examples of shared layers like these. We have to do the same thing at Mercari too—that’s what makes a tech company. Platforms and ecosystems are the results of this being done at a high level.
— I also heard there was a lot of trial-and-error involved in developing the search engine.
It definitely did. The search engine was also built by Mercari, and Mercari’s products are very unique: Our customers list a wide variety of products, there are a lot of listings, and there is no concept of inventory.
On the other hand, Shops does have a concept of inventory since products are listed as a business. A customer using Shops will generally have fewer listings than our normal customers, which makes it more challenging to balance search result rankings. However, there are no best practices for search engines that combine these kinds of updates with different listing frequencies, so we’ll need to figure out on our own how to tune search results. This is a unique issue with regard to the search engines that are available now, and I think it’s a compelling engineering issue.
In addition to considering the perspective of customers listing products, we also need to keep in mind how best to provide services to make purchasing more comfortable for buyers, from both individuals and Shops alike. This involves both the system architecture and UI/UX, and we need to think about how we can meet our customers’ expectations. In order to solve this, we need to obtain quantitative data, as well as qualitative data such as customer needs, and combine that data with high-level engineering to implement improvements suggested from this information. This will be extremely difficult, but I think it will also be interesting.
Building a data utilization platform and providing personalization
— Was there anything regarding technology from 2021 that left an impression on you??
In addition to what I talked about earlier, 2021 was also a year of focusing on building our data platform. We were able to enhance recommendations and personalization, and strengthen the Experimentation Platform.
Mercari has a history of analyzing customer behavior and making rapid and continuous UI/UX improvements. Our efforts resulted in an MAU of over 20 million. However, in order to further improve UX, as a company, we will need to become more data-driven and focus on improving services. That’s why we began focusing on using AI.
Personalization is a service that has an especially significant impact on data utilization, so we are trying to focus even more on that. We are trying to provide a UX that helps customers find what they need and discover new things, even if they aren’t searching for a particular product.
We will need to be able to use the correct data in real-time in order to accomplish that. That’s why we continued to work on building a system for accurately managing client event logs and associated data. While we have already started using this system, we continually improve it. For example, we created a system that can take into account products purchased by a particular customer, or products that they liked or commented on, and apply that data in real-time to personalization. We can then use that data to predict information that might interest that customer and to provide recommendation services that make searching easier.
We also built an A/B test platform called Experimentation Platform. We can use the Experimentation Platform to correctly sample customers and perform consistent A/B tests. We’ve already introduced this in each of our efforts, for use in data-driven decision-making and service improvement.
We can also now manage universal control groups, isn’t that right?
Yes, that is correct. A universal control group is the group during an experiment that doesn’t receive any adjustments or changes. For example, if we make a lot of fine improvements to the search engine or run an A/B test, it can be difficult to determine six or 12 months later if these improvements actually had any effect. The solution is to have a certain portion of customers not receive the experimental improvements— in other words, they become the universal control group. Then we can compare the universal control group with the group of users that received the improvements to determine how effective our improvements were. This function is also embedded in the Experimentation Platform.
— What specific personalization functions have been implemented?
The function that was most effective is “recommendations based on customer’s viewed items.” This predicts products a customer might like based on previously viewed items, and uses the log data management system mentioned earlier to make real-time recommendations. Conversion rates have improved significantly since its release.
In addition to that, we are currently building and testing a wide range of other recommendation components. As for components appropriate for individual customers, we have a higher level component called Layout Optimizer that runs optimization logic. The benefit here is that we are testing multiple components. Each component has a different axis, such as for the like and comment functions. There’s no single “best” axis for making recommendations, as it varies by individual customer. We’re focusing now on optimization, which means providing components that are appropriate for each individual customer.
- Reference articles:
Lasting impressions from 2021 (organizational)
Hiring during the COVID-19 pandemic, and a new style of working
— Let’s talk about the organization. What left a lasting impression on you with regard to organization building?
The first thing that comes to mind is recruiting during the COVID-19 pandemic. We stopped recruiting for a period during 2020, and it was difficult to reconnect with candidates we lost during that time.
Definitely. Stopping recruiting, even for a short while, had a huge impact.
I don’t think it was necessarily wrong to stop recruiting, though. We had no idea what would happen during the pandemic, especially at first, so we couldn’t make the kinds of investment decisions we’d been making previously. It was the right decision at the time, but I think the after-effects were a lot worse than we had anticipated.
I kept up with my recruiting work within my sphere of responsibility, albeit at a very low level. I think this helped keep costs down when we started recruiting again. But I also think that recruiting has definitely changed into something different than it was before, so there’s a lot of work to do.
I agree. For example, it’s become difficult to meet with candidates over a meal. We’ve adjusted to the times and can now do this online, so in that sense, things have improved. But we have had to change how we communicate the benefits of working at Mercari to potential hires.
Yeah, the norms for hiring have totally changed, haven’t they?
True. Now is probably a good time for us to consider new forms of recruiting that assume things will be done online. One good takeaway from all of this is that we have been able to set a KPI that indicates how strong a connection we have with a given candidate.
Good point. I think it’s great that we focus on that now, rather than the number of people that have been recruited.
An objective called “All Tech Recruiters” has even been set as a company OKR, so recruitment is a top priority for the entire company now and not just the engineering side. I think this has also been a good opportunity to establish a “hiring culture” throughout the entire company.
— In September, Mercari introduced [YOUR CHOICE] (https://about.mercari.com/en/press/news/articles/20210901_yourchoice/), a “new normal” work style. What has the reaction been?
People go away from job interviews with the feeling that we’re different from a traditional company. We’re seeing a split among tech companies. You have companies like Meta (formerly Facebook) and Twitter going more remote, while Amazon and Google are going more on-site. There’s been a lot of discussion on this topic, but people seem to like the Mercari approach of Go Bold.
There are a lot of brilliant people who aren’t living in the middle of cities; everyone is different, and everyone has their own preference for where they want to live. I like that Mercari is giving people the freedom to choose where they want to live—it’s a win-win situation for them and us.
The response has been overall positive from our engineers. Some have even used this as an opportunity to move to where they really wanted to live in the first place. Not everyone wants the same lifestyle, so I think it’s great that people can choose. I also think it suits the current situation, and it’s also important from a D&I perspective.
Switching quickly to remote work also sets a good foundation to take the leap into Your Choice. It’s now been over a year since we switched to remote work, and I think we can now safely say that it works.
I think what’s great is that nothing bad happened even after switching to remote. There were a lot of concerns, but other than some minor device trouble, we didn’t really have any problems. Several members of my team have even moved to the countryside, and there haven’t been any issues.
It’s a good thing that people can live how they like, based on their own individual values.
I think there are a lot of people that, due to life events like needings to provide caregiving, either can’t or won’t be able to live within commuting distance to the office. This means we can keep people employed while also respecting the things going on in their personal lives. It’s definitely a good thing.
What does communicating look like when the majority of employees are from outside of Japan?
— You could describe 2021 as a year of promoting D&I companywide. For example, in January, the “D&I Council” was established as an internal committee under direct control of the CEO(Available only in Japanese). How is D&I being promoted in the engineering organization?
Here are some easy examples. Continuing from last year, we held Build@Mercari, and launched Mercari Restart Program. With these, we’ve begun laying the groundwork to help people who have left their careers for one reason or another to resume working as software engineers.
Internally, more than 50% of the engineering organization is from outside of Japan, and diversity is spreading even at the leadership level. For example, @CaDs is a director.
— With the proportion of engineers from outside Japan increasing, how has internal communication changed?
More people in the organization are trying to use English, even if their English isn’t great. You don’t have to speak perfect English—what’s important is that your meaning gets across. After all, English is just another tool; some people are good at it, and some people aren’t. We need to be inclusive so that even people that don’t speak English fluently can work together with everyone else. That’s one way that Mercari is truly seeking to become an inclusive environment.
Only around 20% of our English speakers are native speakers, so that means you often have two non-native speakers using English to communicate. It’s important to be understanding of the fact that everyone in the company has different language abilities and levels. I’m Japanese and English is not my native language, so I have to do my best to use English to communicate. If I’m talking with someone, they are probably in the same boat. I think everyone has gained a better understanding of this.
Our Language Education Team also holds “Yasashii Communication Workshops” to teach people how to reach a mutual understanding with others. “Yasashii” means “easy” or “kind” in Japanese. One way to make it easier to communicate with non-native speakers is to keep sentences short and avoid using idioms and slang.
We always make sure to hold one of these workshops whenever we get a new team member— they’re really great because you learn a lot of things that you wouldn’t normally realize on your own.
Creating opportunities for growth
— The internal transfer system was also launched this year in the engineering organization. What kind of system is it and why was it launched?
stanaka: It’s pretty much exactly what it sounds like. It’s a system that allows engineers to apply to be transferred to teams that are hiring. The company maintains a list of teams that are currently hiring. Employees can even apply for jobs outside of their current technical fields, and positions are filled using the same standards and processes used for hiring from outside the company.
The system began with an engagement survey that was conducted internally, which suggested a correlation between the level of engagement and availability of growth opportunities. We built this system to allow employees to challenge themselves and seek their own growth opportunities.
Although Mercari isn’t really a massive company, we have grown in size and continue to add new businesses and types of work. So, we decided to provide opportunities to people inside the company the same way we provide opportunities for potential external hires, and to do so in a manner that does not give any unfair advantages to those applying from within Mercari (and vice versa).
We also hope to show people who are thinking of leaving the company to seek new challenges that there are plenty of opportunities for them right here at Mercari. That’s a win for everyone, if we can find a match. After all, what someone wants to do is not always the same as what they are good at doing.
We started implementing this system because we wanted to properly distribute opportunities, and because we wanted to provide more choices to help employees develop as the company grows.
— The system has been in place for a year now. What kinds of reactions have you received so far?
Good question. We have people who’ve used this system to transfer, and they are still working in the company, just in a different organization. It’s a way to get people to realize there are still plenty of opportunities available, even if they’ve been at Mercari for a long time.
One problem that we’re currently facing though is that it can have a negative impact on the motivation of remaining team members when one person transfers out to a different team. When someone transfers, that means one less member of the team, and so we need to keep thinking about solutions for that. I think this kind of system necessitates that there already be some degree of flexibility within the team. If a team is already pressed for resources and people start transferring out, it can put an unfair burden on the remaining team members.
Similarly, when one team member transfers to another team, it could potentially breed resentment between those two teams.
Yeah. That’s why I think a certain degree of leeway in the team from which an employee wishes to transfer should be a requirement. I want to make it so that the engineering side has a lot of leeway across the board so that our engineers can continue to make use of this system. I think it’s a good system.
Enthusiasm for 2022
— Let’s end by discussing next year. What do you want to do? What are you enthusiastic about?
I’d like to continue to strengthen our foundation on both a technical and organizational level, to help rapidly expand Mercari Group businesses and services.
I plan to update our mechanisms, architectures, and teams, so that our engineers can autonomously work toward increasing their productivity.
My theme for next year is “more with less”— I want to do as much as I can, with as few resources as possible. I want to focus on the principles of KISS (keep it simple, stupid) and YAGNI (you ain’t gonna need it) and spread them throughout the organization. With regard to the Robust Foundation for Speed project I’m leading, I want to ensure that anyone will be able to recognize results.
CaDs: I want to work on improving the backend architecture, and on conducting a range of experiments with Growth Engineering Teams.
We still have a lot of work to do to build an organization capable of engaging in data-driven decision-making in a way that’s coupled closer with our customers. I want to enhance data management and refine our organization building so that we can make even better use of data. Although improving how data is used is an endless process, I believe that continuing to refine data utilization will make our development teams and customers happy.
I feel like next year will be even more challenging than this year in many ways. I want to bring the engineering organization up a level or two, so that we can accomplish all sorts of things.
— Thank you very much!
Mercari is hiring!! If you are interested in joining us, please take a look at the application guidelines on Mercari Careers of Special page of “Robust foundation for Speed”.