Customer Stories / Software and internet / Japan

2024
Nintendo Systems Co., Ltd.

Nintendo Systems Powers Up Productivity through Platform Engineering with AWS Managed Services

120

Amazon ECS tasks on the launch day of a major game

10x

Growth in total digital content sales from 2017 to 2023

Streamlined development

with platform engineering

Self-service infrastructure development

and deployment by app developers

Reduced operational workloads

on app developers using managed services

Overview

Nintendo Co., Ltd. established Nintendo Systems Co., Ltd. in April 2023 to create systems for smoothly delivering entertainment to customers. The new company, which is also modernizing the Nintendo eShop platform, adopted Platform Engineering in 2020. Nintendo Systems chose Amazon Web Services (AWS) Managed Services to modernize a shared internal platform for developing customer-oriented systems. AWS technology empowers Nintendo Systems to internally develop systems that can withstand access surges in a self-service manner.

AWS re:Invent 2023

The content of this case study is presented at AWS re:Invent 2023 in the 'Modernization of Nintendo eShop: Microservice and Platform Engineering' session. Please watch the video for more information.

Opportunity | Modernize Architecture to Support Service Growth

Nintendo Systems is responsible for developing and operating Nintendo network services such as Nintendo Account and Game News. Nintendo eShop, an online store that allows users to download software and purchase additional content via the Internet, is one of the services offered by the company.

Launched in 2011, the Nintendo eShop now offers 24/7 service in more than 40 countries for the Nintendo Switch, which has sold more than 130 million units worldwide. Sales of Nintendo's digital content grew more than tenfold between 2017 and 2023, and today, nearly 50 percent of Nintendo’s total game sales are digital purchases.

Nintendo initially ran the eShop platform on-premises but migrated it to AWS in 2015 to accommodate rapid user growth during holiday shopping season. “We chose AWS because of Amazon RDS for Oracle, a managed service for using Oracle databases, and its proven track record within our company,” says Junichi Furutaka, Chief of the System Development Department at Nintendo Systems.

Despite the migration to AWS solving problems with scaling Nintendo’s architecture remained monolithic. Consequently, restrictions on Amazon Relational Database Service (Amazon RDS) instance sizes limited the scalability of the entire eShop service during heavy traffic.

Additionally, newly added functions and meeting international legal requirements as a global service were making the infrastructure increasingly complicated and black boxed in terms of application development. According to Shinya Ogura, Manager from the System Development Department of Nintendo Systems, “As time went on, we had fewer engineers who understood our prior logic. To remove barriers to enhancing functionality and increasing productivity, modernizing the architecture was a must.”

kr_quotemark

We’ve found that our platform engineering approach with AWS has led to more efficient development and faster launch of new services for applications and infrastructure.”

Shinya Ogura
Manager, System Development Department, Nintendo Systems

Solution | Building a Platform Engineering Approach

For the modernization project, Nintendo Systems separated services by adopting a microservices architecture for long-term maintainability, better productivity, faster release cycles, and cost-effective scalability. Previously, each service was developed by an app developer and a DevOps engineer, with the roles of the two distinguished based on compliance and governance. DevOps engineers were responsible for deployments and architectural changes.

The company switched to a platform engineering approach for efficient development and administration. This approach automates infrastructure operations through self-service capabilities that make the jobs of app developers smoother and more productive.

“Given the shortage of DevOps engineers, we needed to create a system that boosted development productivity by enabling app developers to autonomously develop applications and infrastructure,” explains Ogura. “However, end-to-end deployment by app developers isn’t realistic. We therefore decided to use platform engineering, which provides a shared self-service infrastructure, to ease app developer workloads.”

The key to platform engineering was a new Internal Developer Platform (IDP), which includes an application framework, a container orchestrator, and CI/CD (continuous integration/continuous delivery). Nintendo Systems runs a platform to execute applications on Amazon ECS on AWS Fargate managed services while its developers build applications and infrastructure using IDP.

“We compared Amazon ECS and Amazon Elastic Kubernetes Service (Amazon EKS) as candidates for the application execution infrastructure,” says Furutaka. “For governance, we created dedicated AWS accounts for each service but found it difficult to run Kubernetes for every account. We chose the Amazon ECS on AWS Fargate platform to empower developers unfamiliar with Kubernetes to easily build and operate applications in containers.”

Architecture Diagram

Click to enlarge for fullscreen viewing. 

Outcome | Faster Launches of Application and Infrastructure Services

The platform engineering effort has transformed awareness among app developers and DevOps engineers and driven development of components that comprise the IDP. In preparation for the May 2023 release of the Legend of Zelda: Tears of the Kingdom game, app developers leveraged IDP components for self-service development, Amazon ECS on AWS Fargate as an application platform, Amazon DynamoDB for databases, and AWS CloudHSM to manage digital rights.

The system weathered release day traffic peaks thanks to app developers using launch predictions and pre-orders for the game to scale Amazon ECS to 120 tasks, scale AWS CloudHSM instances, and change Amazon DynamoDB’s capacity mode.

“We’ve found that our platform engineering approach with AWS has led to more efficient development, faster launch of new services for applications and infrastructure, and quicker development times,” says Ogura. “We’ll continue to promote platform engineering across all service teams.”

For the next step, Nintendo Systems will adopt Amazon ECS Service Connect and Amazon VPC Lattice to propel self-service further by simplifying cross-account and cross-VPC connections.

According to Furutaka, “AWS provided us with ample information from the architecture selection stage onward. Requests to review our architecture during development were met with generous advice and our many technical questions were answered through direct channels. AWS managed services are indispensable for self-service development. Going forward, we’ll continue to apply new AWS features to improve our service platform.”

About Nintendo Systems

Nintendo Systems was established in April 2023 with a team of engineers from Nintendo and DeNA Co., Ltd. to develop systems for delivering Nintendo entertainment to users. Workers apply their wide variety of strengths, extensive knowledge of Nintendo's novelty and DeNA’s technology, and an appreciation of originality and flexibility to engage in discussions aimed at creating amazing results and systems that can only be achieved by a team.

Shinya Ogura

Junichi Furutaka

AWS Services Used

Amazon ECS on AWS Fargate

AWS Fargate is a technology that you can use with Amazon ECS to run containers without having to manage servers or clusters of Amazon EC2 instances. 

Learn more »

Amazon Aurora

Amazon Aurora is a MySQL and PostgreSQL-compatible relational database built for the cloud, that combines the performance and availability of traditional enterprise databases with the simplicity and cost-effectiveness of open source databases.

See here for details »

Amazon DynamoDB

Amazon DynamoDB is a key-value and document database that delivers single-digit millisecond performance at any scale. It's a fully managed, multiregion, multimaster, durable database with built-in security, backup and restore, and in-memory caching for internet-scale applications.

Learn more »

AWS Organizations

AWS Organizations are useful to centrally manage and supervise the environment according to the increase in AWS resources and scaling.

Click here for details »

More Software and internet Customer Stories

no items found 

1

Get Started

Organizations of all sizes across all industries are transforming their businesses and delivering on their missions every day using AWS. Contact our experts and start your own AWS journey today.