We are looking for a software engineer for one of the teams in the Platform Group who has a strong background (or interest) in platform or infrastructure system development. Someone who is passionate about increasing developer productivity and has a pragmatic ability to release and migrate features to large-scale systems gradually.
Team
The Platform Group is responsible for helping engineers at Mercari and its subsidiaries to build and deliver better products to our customers. We provide infrastructure and DevOps toolchains to increase the reliability of the service and make the work of engineers easier.
Currently, the Platform Group consists of four teams:
- Platform DX: Working on improving the developers experience by providing better abstraction and automated workflows
- CI/CD: Providing testing infrastructure, toolings, and the delivery system to make service delivery faster and more reliable
- Network: Responsible for end-to-end network infrastructure from the edge (CDN) to the cloud & service mesh (Istio) and physical data centers
- Platform Infra: Working on the base infrastructure operations as the cloud (GCP & AWS) and Kubernetes admin, as well as building the observability platform
Responsibilities
- Design, develop, and maintain platform features and toolings which support the entire software development cycle from build to test through to deploy and operate
- Support migration and adoptions of new platform features and toolings
- Improve platform security and reliability with the SRE and Security teams
- Improve and automate daily platform operations and reduce toils
- Communicate with internal developers to understand their needs
Requirements
- Shared understanding and belief in our company’s mission and values
- Experience in infrastructure management and automation
- Experience in infrastructure and system architecture design
- Experience in writing design docs or proposals and reaching agreements with stakeholders
- Experience in using container management platforms (ex: Kubernetes) in production
- Experience in operating and being the admin of cloud (GCP or AWS) in production
- Good understanding of common software development lifecycle (SDLC)
- Platform DX team-specific requirements
- 2 years of experience using Go
- Experience in writing CLI tools and packages in Go
- Network team-specific requirements
- Experience working with network proxies such as Envoy/HAProxy/Nginx
- Strong understanding of networking, especially OSI Layer 4 to 7: load balancers, proxies, API gateways, DNS, TLS, and HTTP protocol
- Good understanding of Linux networking
- Working knowledge of cloud and Kubernetes networking
Nice to haves
While not specifically required, tell us if you have any of the following.
- Experience in a distributed system or microservices architecture
- Experience developing and supporting tools for internal customers
- Experience making technical decisions as a tech lead
- Experience of working as an SRE
- Experience writing Go (and scripting with bash)
- Japanese language ability
- Platform DX team-specific preferred experience
- Experience in frontend development with React
- Experience in interface and UI/UX design
- Network team-specific preferred experience
- Experience in using service meshes in production such as Istio or Linkerd
- Experience in using network reliability practices such as circuit breaking, rate limiting
- Experience in designing cloud-based network architectures