Title
AWS re:Invent 2023 - Modernization of Nintendo eShop: Microservice and platform engineering (GAM306)
Summary
- Taiji Iwai from AWS Japan and Shinya Ogura from Nintendo Systems presented the modernization journey of the Nintendo eShop.
- The eShop supports over 120 million Nintendo Switch users globally, offering a web-based e-commerce service.
- The modernization involved transitioning from on-premise infrastructure to AWS, adopting microservices, and engaging in platform engineering.
- The eShop's backend was refactored from a monolithic system to microservices to improve agility, maintainability, and scalability.
- The team structure evolved to include cross-functional teams with embedded DevOps engineers, aiming for self-service capabilities and reduced cognitive load.
- Platform engineering at Nintendo eShop involves creating an internal developer platform (IDP) with components like application frameworks, container orchestrators, and API gateways.
- Amazon ECS was chosen over EKS for its managed cluster and ease of use for developers unfamiliar with Kubernetes.
- AWS Organizations is used to manage multiple AWS accounts for microservices, ensuring security and compliance.
- A successful case study was presented, showcasing the launch day performance of a major game title using the microservice architecture.
- Plans for expanding the Nintendo eShop into a wider API platform service were discussed, with an emphasis on an API gateway for centralized request management.
Insights
- The transition to microservices was driven by the need for long-term maintainability and the ability to adopt new technologies.
- The hierarchical approach to microservice architecture, informed by domain-driven design, helped estimate the number of services and maintain team manageability.
- The shift in team structure towards cross-functional teams with embedded DevOps engineers reflects a broader industry trend towards DevOps and agile methodologies.
- The decision to use Amazon ECS over EKS was strategic, considering the team's expertise and the need for a managed service that simplifies operations.
- The use of AWS Organizations to manage multiple AWS accounts for each microservice demonstrates a commitment to security and scalability.
- The case study of a major game title's launch day performance illustrates the practical benefits of the microservice architecture and platform engineering in a high-demand scenario.
- The move towards an e-commerce API platform indicates a strategic shift to make Nintendo's e-commerce functionalities more accessible to various developers and customer touchpoints.
- The use of Kong OSS as an API gateway and JSONnet for configuration management shows a sophisticated approach to API management and deployment automation.