“Merpay Development Was Full of Firsts” – Engineering Managers Talk Behind-the-Scenes
The Mercari Group has been experiencing many firsts – building the Group’s first payment service, developing microservices for the first time, and restructuring the entire organization with many new recruitments – all happening concurrently in favor of releasing Merpay, the aforementioned smartphone payment service.
Merpay was established as a company under Mercari Group in November 2017. We were curious to ask the Merpay development team was it was like to create and prepare the service for release in this vertical start-up environment.
Mercan interviewed VP of Engineering Hideo Kimura (@hidek), Engineering Manager Keita Arai (@cocoiti), and Engineering Manager Junichiro Takagi (@tjun). We asked these three members, who have been through the thick and thin with the team and the service, all sorts of behind-the-scenes stories that they can freely talk about now that so much time has passed. The interviewer is Akihiro Matsuo from Merpay HR.
The deciding factor for joining Merpay was the Mercari synergy and CTO Sogawa
First of all, congratulations for releasing Merpay! Can you share your honest feelings about it?
All: We are so relieved!
-Thank you for your honest feelings. (laughs) I have all sorts of questions about how you worked on development of not only the product but also the organization. To start off, let me ask each of you the reason why you joined Merpay.
@hidek: I was already a fan of services that could serve as the foundation of a business, and developed such services at DeNA, my previous job. Just as I was saying to myself; “If there is a next time, then I want to build a service that can be the foundation of a fintech or healthtech business,” I heard about the Merpay start-up.
@hidek (VP of Engineering at Merpay)
-What was the decisive factor for you joining?
@hidek: I can give you three major reasons. The first one was the potential for success as a fintech business. The second reason, the fact that I would be able to synergistically use Mercari’s data and development technologies. The third, I was just so drawn to Merpay CTO (Chief Technical Officer) Sogawa’s character. I thought, “if all these elements are coming together, we can definitely create something very interesting,” and I decided to join.
@tjun: I think my motivation was similar to @hidek’s. In my previous job at Sony, I was working at software R&D, as well as starting up new businesses. Just as I was considering changing my job, I happened to have the chance to talk directly with Mr. Sogawa. I felt like I wanted to work with him, so I joined Merpay as an SRE (Site Reliability Engineer) member.
But you @cocoiti, you had four years of experience in Mercari as a backend engineer, a manager for the entire product, as well as other roles, correct?
@cocoiti: Correct. Before I joined Merpay, I was working on payment features like deferred payment, which gave me a lot of opportunities to work in coordination with the “Mercari Common ID” development team from Souzoh, a Group company. Let me tell you something about that team, their talent is out of this world. Common ID is a feature that allows logging in to various services with a Mercari ID. We can even call it the predecessor to Merpay. After Merpay was established, I heard the entire Common ID development team was going to transfer there. I thought it would be my chance to get to work with them even more closely than before, so I applied for a transfer to Merpay as well.
Merpay development frustratingly complicated?
-The big premise for Merpay’s development was the microservice migration led by the Mercari Group, which actually is still going on. Did you face any difficulties about that?
@hidek: Microservices meant a democratic revolution to a historically centralized and authoritarian structure by creating services aligned with the notions and discretions of the actual members who develop them. Just imagine each feature and/or service declaring its own independence. Merpay’s development started with that idea in mind, but frankly it was a pretty rough start.
-What do you mean by that?
@hidek: You can’t have a democratic revolution if you don’t have a country to revolutionize, but that was basically what we tried to do with Merpay. We didn’t have a foundation, a land to democratize in the first place, so the process took longer than we anticipated. Obviously, chasing that ideal brought us to this point, so it was a success eventually, but it was not easy making progress while finding the optimal formula of mixing ideals and reality.
@cocoiti: We all expected hardships, but once the process actually started we quickly realized that our concerns paled in comparison with reality. Common ID was already in development during the Mercari era, but Merpay is a much bigger service than that. It was really difficult to rebuild something while building something else completely from scratch.
@cocoiti (Engineering Manager at Merpay)
@hidek: Simply put, Merpay’s development was just full of firsts. Developing microservices, building and operating a system within Kubernetes, which is a software on the Google Cloud Platform, and starting a payment business at the same time. These were all new challenges for the Mercari Group. I remember feeling so much frustration and thinking to myself, “Why do we have to make it this complicated?!” (Laughs)
@tjun: In my case I had already worked with GCP in my previous job, so I was used to it. Also, since there are so many talented members in Mercari’s SRE team, I just thought I could stick close to them and I would be fine for a while. But when I actually joined, I saw that there was no one in Merpay’s SRE team. I was the team. That’s why initially I sat next to Mercari’s Microservice Platform Team, asked them all about basic notions and architecture, and increased my input of knowledge.
Difference of development styles, abundance of stakeholders
-Did you observe differences between the development styles of Merpay and Mercari?
@hidek: Due to Merpay’s nature as a payment service, we have all sorts of stakeholders including the merchant businesses who actually utilize the service. Obviously, that means we have to promise certain delivery dates for the development process. Therefore we had to consider and design all the features early on and then implement them in the Waterfall method all the way until release.
-And you had to make it in time before the grand launch.
@hidek: In order to preserve quality while also delivering releases on time, there are times when you have to tell your team “we are not changing the specs anymore”, or “we are freezing the code at this point”. Also, since Merpay is a payment service, we had to set SLOs (Service Level Objectives) to guarantee safe and secure operation. We consulted you @tjun, the one-man SRE team, for that, right?
@tjun: Right. We decided early on that everyone would prepare for operation together. The SLOs were a part of that decision. When setting our SLOs, we made sure not to place the whole responsibility on engineers who had ownership of each microservice, but to comprehensively consider what target values our product managers wanted to provide to our users, as well as the values that tech leads thought were achievable, and have team-wide consensus on our goals.
@tjun (Engineering Manager at Merpay)
@cocoiti: During Mercari’s initial phase, if the system was to crash, everything would crash. Back then the goal for the entire company was to just keep the system up. We have already achieved that goal, but having a payment service demanded that we provide a high level of safety and security, which meant every team had to work responsibly as they do now.
-I believe you especially have seen many releases in the Mercari Group. Compared to those past experiences, what did you feel about Merpay?
@cocoiti: Me personally, I used to think the most difficult release we had was Raku Raku Mercari Delivery, but because of how many stakeholders we have for Merpay, the difficulty was on a whole other level. I can say Merpay ranks number one on the list of Most Difficult Releases. (laughs)
@hidek: I think I know what you mean. (laughs) This holds true for Mercari as well, but the best thing about Merpay is the respect the executives have for the engineers. It is true that we sometimes had heated discussions about delivery dates, but after a while it would work out. I remember Mr. Yamamoto, the VP of Business Development and Sales, telling me “I don’t mind waiting, so please create something good.” As an engineer, those words made me incredibly happy. I faced my work with even more seriousness.
The next phase: tackling organizational issues, and nurturing growth in the company
-Merpay is trying to become a major pillar of Mercari Group as a payment service. Now that the initial release is accomplished, what do each of you see as the next phase?
Akihiro Matsuo (Merpay HR)
@cocoiti: Now that I’ve experienced the development cycle all the way up to release, I feel like I have more things I can do. Because of this, I’d like to keep increasing development speed, refine our development structure, and create a team where new engineers who will join the company in the future can say “we have an amazing work environment!”
@tjun: We do have a lot of lacking points in our team structure as well as development flow. I also want to improve our team while increasing the number of people in it. I also want to strengthen our internal bonds, and aim for a high-standard service that can be used with stability and security.
-And you, @hidek?
@hidek: I can say this now because it’s all in the past, but @cocoiti was my mentor when I joined the company and I’m going to be honest now… I don’t remember him doing anything for me! I feel like we skipped so many things before getting to this point. (laughs)
@hidek: Thanks to that however, I had the painful realization that the team as it was made it too easy for new members to feel isolated. That’s why I decided to refine our onboarding process. As the VP of Engineering, it is my mission to nurture growth in the engineering organization. Especially since we have released the product, now I think it is time to focus on creating an organization that allows newly-joined members to perform 120% and help grow the company further.
@tjun: Right now for onboarding we are focused on a structure that allows for new members to catch up to the company technologies. Up until now the program included internal study sessions and the like to teach new members about architecture, et cetera. Going forward, we want to have more sessions about GCP, infrastructure, as well as each microservice we are developing. The end goal is to have an engineer kickstarter manual that can bring newly hired engineers to a level where they can jump right into development.
@hidek: After its establishment, Merpay went through a vertical start-up process for every element of its being, such as its development flow, organizational structure and hiring system. We are noticing some issues that originate from how fast the growth happened. Of course, not only do we have to keep improving the service, we have to face these issues and resolve them, so we are bracing ourselves for the road ahead.
-I appreciate that you didn’t sugarcoat anything. I think it’s very Merpay-like to see the negative points and focus on improving them. You are embodying Be Professional, which is one of Mercari Group’s values, very well. You still have challenges to face ahead, so please do your best!
Started his career as an engineer at SP, worked at communication carriers and independent start-ups, then joined DeNA in 2009. He helped start up the Mobage Open Platform, then worked on its global expansion and management. After starting up Automotive, he became the Executive Officer for System and Design. He joined Merpay as the VP of Engineering in May 2018.
After experiencing various careers, he joined Unou Inc, where he acted as both an engineer and a producer at the film community website Eiga Seikatsu. At Unou he had his first interaction with MySQL, which he used for load balancing for the social game “Machitsuku!”. After the company was bought out by US Zynga, he became responsible for infrastructure, as well as IT whenever they moved offices, since he knew how to build networks. After that he worked with a large-scale IT giant, and eventually joined Mercari. He contributed to the service as a software engineer on the server side. After that he transferred to Merpay, where he is now.
Won an IPA (Information-technology Promotion Agency) award in his student years for the sensor databases he developed. After graduation, he joined Sony, and became responsible for developing network libraries for many types of Sony products. He helped with new start-ups at Sony Computer Science Laboratories in 2014. He joined Merpay as the first SRE member in April 2018, and now is an EM, building the infrastructure.
Joined En-Japan as a new graduate, and was in charge of starting up the web media Career Hack. After working as the Chief Editor of the website, he joined the Mercari HR team in March 2016. Since moving to Merpay HR in 2018 he has been focusing on planning and hiring.