Hi this is @yasu_shiwaku from the Engineering Office.
This is the last article for Mercari Advent Calendar 2022.
As introduced in the Advent Calendar up to today, Mercari Engineering Organization was taking on many projects in 2022. Mercari Shops, the B2C marketplace platform operated by the subsidiary company Souzoh, has reached its 1st anniversary from the official launch, and also worked on multiple challenges as a same Engineering Organization under Marketplace business.
This article will be a summary of highlight projects and events for the Engineering Organization in Mercari’s Marketplace business in 2022, presented by the Board members with their personal look backs for this year and the aspiration for the coming year.
The comments are presented by the following Board members;
- @kwakasa: CTO Marketplace / Managing Director of Mercari India
- @CaDs: VP of Product Engineering, Mercari JP
- @kimuras: VP of Platform Engineering, Mercari JP
- @mtsuka: Director, Developer Productivity Engineering
- @keigow: Director, Head of Engineering, Souzoh
Launch of the GU App (by @CaDs)
The Mercari Ground UP (GU) App for both iOS and Android platforms, which were launched in September 2022, was probably one of the biggest challenges that we have faced up to this date in Mercari Engineering. At some point, I’m convinced that almost all engineers were part of this effort in one way or another.
There are so many things that happened during this program that it is super hard to summarize. Instead, I would recommend reading this article in which we explain the motivation behind this project and the challenges that we faced.
In a sense, this project was a clear embodiment of our three core values.
Go Bold: We managed to release a full rewrite of both apps used by our millions of customers. We did while minimizing end-user impact, and managed to deliver a better user experience without any major issue.
All for One: This rewrite was done mainly by our mobile engineers, but everyone (PMs, web and backend engineers, etc) were actively doing dogfooding, providing early feedback, and hunting bugs that might lead to bad user experience. On top of that, many engineers across the whole group chimed in to support a successful release of the new aps.
Be a Pro: There were plenty of different technical challenges our engineers faced in the different stages of this project. It is amazing seeing how, no matter how complex the challenge was, our teams came up with solutions that not only solved the issues at hand but also went beyond and above to provide the best customer experience for our customers.
Check this article from our lead architects if you are interested in their experience.
Establishment of Mercari India (by @kwakasa)
Hello, everyone. I’m Ken (@kwakasa), CTO Marketplace. I’m currently also in charge of Mercari India as its Managing Director as well.
Here is a look back over the establishment of our India development center, which has made significant progress in 2022.
At the beginning of 2022, we kicked off one of our most recent strategic projects to reinforce Mercari Group’s product development and engineering capability.
We have been reaching out to and welcoming global tech talents from the world over the last few years to strengthen our capability to accomplish our mission of creating value in a global marketplace where anyone can buy & sell. However, as our product and service portfolio continues to expand, it became apparent that our engineering and development capabilities could not keep pace with ever-increasing business needs as well as the complexity and scale of implementations that empower our products.
That’s why we decided to spearhead our new journey to establish Mercari’s first-ever global center of excellence in Bengaluru, India. We believe that it’s one of the necessary steps we have to take to become a global tech company.
Thanks to everyone’s support, we were able to welcome our very first dozen members so far. We are very much looking forward to welcoming even more new members in 2023! We are very grateful to all Mercari members and partners for their relentless efforts to embody our values, Go Bold, All for One, and Be a Pro.
Please check out the blog post by Mohan, our head of engineering for GCoE (global center of excellence), for more details about our endeavor over the last several months.
Proceeding of the RFS (by @mtsuka)
Hello I am @mtsuka, the Director of Mercari’s Developer Productivity Engineering(DPE).
“Robust Foundation for Speed (RFS)” started last October as a mid-term project of group-wide refactoring by analyzing and improving the current system on a large scale.
As a person in charge, I would like to look back at the year 2022 of this project. The first half of this year was focusing on determining the scope of the project and solidifying the measuring method, then in the latter half, we worked within that area to produce the specific results.
RFS is basically about refactorings and migrations, and it is our nature as an engineer to make everything clean and well structured, but we have to be able to be accountable for the investment. In order to do so, we first decided to prioritize extracting the frequently modified components, and decoupling/migrating those DBs. Such measures were taken to make the promotional campaigns faster and easier since Mercari occasionally runs the point promotion campaigns. As the quality of the product is not only responsible for the engineers, we collaborated with the Technical Product Managers (TPMs)/ Product Managers (PMs) to assure the quality, and align the consensus with the product roadmap.
In the latter half of 2022, we continuously decoupled and migrated the DBs in the latter half of the year. Our main mindset was based on DRY(Don’t repeat yourself), and also abstracting the system by questioning ourselves like “What can we do so we don’t have to repeat the same hard work?” and “How can we make the same things happen easier?” We kept the tagline the same for the whole year, so by the end of the year, we were sharing the same values without saying. This made it easier for us to reach consensus when setting the target or the goals. It especially was conspicuous in the area of Transaction and CSTool, where our initial target scope is visible now, and the task force almost reaching our goal.
The detailed projects of what our team has been working on is published as a series of blogs below. Please take a look at them (sorry its only in Japanese)
- 連載:技術基盤強化プロジェクト「RFS」の現在と未来 | メルカリエンジニアリング
- プロジェクトスタートから1年経過した「Robust Foundation for Speed」、技術基盤強化以上に組織にもたらした価値をいま改めて問う | mercan (メルカン)
To sum up on what was good this year as RFS;
- We did not make the project an initiative for the engineers by engineers (collaborated with TPM/PMs
- Keeping the tagline the same is important to obtain shared values
We would like to keep on improving our product and keep observing the measurements. There are of course numerous improvements that have to be made, so it will be important for each member to be accountable for the product’s quality with or without the structure of the task force.
Start of the FinOps project (by @kimuras)
Hi this is @kimuras, VP of Platform Engineering. We started the activity of FinOps this year, and the achievements we made were very fruitful. I’ll talk the overview and summary here, and let the detailed project explain to bungo’s article as follows (Japanese only);
- FinOpsへの取組 エンジニア組織の意識を変えた「データストーリーテリングに基づいたコスト可視化」 | メルカリエンジニアリング
- FinOpsへの取組 地道な計数管理とデータ加工の日々 | メルカリエンジニアリング
Up to recently, Mercari was developing its service at a high speed, as well as migrating the architecture from Monolith to Microservices. However, looking back at the past high-speed development, we have reached the stage where we have to re-review our architecture and infrastructure costs. Migrating the architecture to Microservices does not simply solve the issues we had, but to keep on improving the service, we need to enhance the productivity of the engineers and review the cost that follows. Based on this background, we started reviewing the fundamental infrastructure costs as a FinOps project.
Making the FinOps team itself is not hard, but bringing it to the stage where the cost improvement is visible was not easy at all. This is due to the situation where not only the Mercari app uses Google Cloud Platform, but also the subsidiaries such as Mercari US, Merpay and Mercari Shops share the platform. This background made the cost structure complex, and created difficulty in the monitoring system to track the cost.
In order to produce a good result, we had to determine the delegates of the FinOps from each division, and periodically discuss the strategy of how to improve our cost reduction.
We still are amidst the optimal solution, but through the collaboration of FinOps members from each division, we have managed to visualize the cost structure for the cloud services, leading to more sophisticated projection of the infrastructure costs. Also, we can now notice the unintentional cost increase earlier than before, and quickly correspond with the responsible team.
Actually, the largest achievement of this project was not the reduction of the infra cost itself, but making the engineers aware of the infrastructure costs. By sharing the future projection of the costs, each engineer became naturally aware of how the cost fluctuates as well as understanding the current cost correctly. Our ultimate goal of FinOps is to create an environment where each team can optimize the cost on its own. I believe we have made the foundation of that ideal situation in this first year.
One Year since Mercari Shops release (by @keigow)
This is keigow, the Head of Engineering at Souzoh. A full year has passed since Mercari Shops was released publicly in October 2021. Here I will briefly look back on what had happened at Souzoh and Mercari Shops.
Mercari Shops is a product created with the concept of allowing shop owners to create their own virtual shops within the Mercari app.
Despite the fact that when we started the beta service in July after a very short period of development which started in January, by the end of the year we were able to develop features such as:
- Shipping via specialized services (Mercari express / Refrigerated Mercari Shipping)
- Bulk inventory management using CSV files.
- APIs for external integration
- Limited time offers
We still have many things we would like to provide to our customers, and we are planning to steadily keep making improvements to this product.
As discussed in this article, at Souzoh we value the principle of “Move Fast”. So far we have been able to deploy many releases on a day-to-day basis, which is the result of every engineering proactively making improvements on components they have ownership for. We intend to keep this going for the foreseeable future.
At the same time we have been seeing new growing pains. Mercari Shops was initially designed to be as independent as possible from the original Mercari app in order to accelerate development speed at the very beginning. But this has been causing some problems to make the customer (especially the buyers) experience better and smoother.
As these products were developed as independent applications, we need to come up with solutions on how to make them work together better: How do we simultaneously bring the items from each application? Or even before that, what is the best approach that we should take for the customers? In the coming year, we hope to tackle these big challenges both in terms of product design and engineering solutions, but either way, we look forward to working on these challenges.
Hack Fest 2022 (by @CaDs)
What best way to wrap up the year than doing some hacking? That’s exactly what we did last November.
We have talked previously about Mercari’s Hack Week. This time we introduced some modifications to the format and duration of the event, rebranding it into what we called Hack Fest.
Three days for our engineers to innovate and find ways to improve our service. This way, they can explore different areas of our product on which they might not have the chance to interact much during the daily work and make use of their creativity and talent to propose ways of improving Mercari.
You can read more details about our Hack Fest in this article.
We had 96 ideas submitted. After filtering and consolidating these 26 teams were assembled and these teams demoed their solutions.
I have to say that, on each iteration, our engineers keep pushing the bar higher and higher. Some of the ideas that were presented this round were just incredible.
I’m really looking forward to seeing these rolling out in production in upcoming months!
Hiring Information
Mercari is hiring!! If you are interested in joining us, please take a look at the application guidelines on Mercari Careers, or the project page for “Robust foundation for Speed” and “Mercari India” as follows;
Thank you for reading Mercari Engineering Blog’s Advent Calendar 2022 up to here! Have a Merry Christmas and a Happy New Year.