Structure
Key technical areas and roles in the engineering organization
Software Engineer (SWE)
Always tries to use the most appropriate technology for our features, making use of any method without being limited to one in particular.The key technical areas SWE deals with are as follows.
- Backend Engineering
- Web Engineering
- Mobile Engineering
- Machine Learning
- Microservices Platform
Tech Lead (TL)
Commits to ensuring the engineering team’s productivity, in order to maximize the output of our projects. They are responsible for technical decision-making and for the team’s code quality.
Engineering Manager (EM)
Commits to creating mechanisms and solving organizational issues to ensure engineers can perform at their best. They are responsible for hiring, training, evaluating, and setting goals for engineers.
Site Reliability Engineering (SRE)
Responsible for building and operating servers and networks, for system automation and system failures, and also for development to improve the performance, reliability, and scalability of our systems.
Engineering Office
Responsible for supporting engineers to enable them to perform at their full potential. They provide an onboarding program to help engineers thrive within their team, as well as an update program so that they can be constantly informed about the ideas behind the organization’s initiatives, and a career builder program to help members acquire the necessary skills to build the career they want.
Anatomy of Mercari Engineering
Camp
Mercari employs a structure called "Camp" to keep its organization’s productivity high.
Camp is a logical grouping of multiple scrum teams. Each camp has its own goals, and is responsible for settings up the vision and decision making in its designated area.
Camp consists of cross-functional members from various areas of expertise, so that it can solve diverse sets of issues during development. Experts such as engineers, designers, managers are gathered to form a camp.
It is also encouraged to go beyond their own area of expertise and work on new challenges. For example, a frontend engineer is encouraged to work on backend development should the need arises.