Adidas: Be Fast, Stay Fast – How Adidas Manages Microservices Complexity with Business Architecture ‘Capability Diamonds’
With a team of 1,400 engineers they deploy to production 4,000 times a year, with a 99.5% success rate.
Speaking at the Enterprise DevOps Summit, Adidas presented on their practices for delivering the rapid digital innovations that powers a global scale e-commerce platform for Adidas.
The talk was delivered by:
- Fernando Cornago, Vice President — Digital Tech, adidas.
- Thomas Gieling, Senior Director Domain Architecture – Digital, adidas.
Global E-Commerce
Adidas operates a vast e-commerce business, with $5 billion in digital revenues and 360 million global members. This requires supporting an enormous traffic load and engagement across hundreds of countries, meaning a highly complex software organization.
They have unique complexities, they operate in a multichannel environment across 62 markets, with a range of over 13k articles that they merchandise for multiple personas, catering to the needs of both casual and professional athletes across a wide range of sports as well as fashion shoppers while personalising the experience for everyone. On top of that they have to deal with huge peak loads due to their hyped product launches.
With a team of 1,400 engineers they deploy to production 4,000 times a year, with a 99.5% success rate. For every hour of downtime they lose €1m. With a motto of ‘Be Fast, Stay Fast’ their goal is rapid digital innovation, such as being the first to integrate with Tik Tok for live streaming e-commerce, a development so successful that within a couple of months it was driving a third of their digital business.
Digital Value Delivery
From 12m:45s they define their approach to organizational structure and capabilities that makes this innovation possible, headlined by their use of Business Architecture to organize and manage this scale of high velocity digital change and innovation, implemented through ‘PBCs’.
Packaged Business Capabilities (PBCs): Software components that represent and perform a well defined business capability. This combines microservices-based data schemas, APIs and event channels into a single entity that can be recognized both by developers and end users.
Capability Diamond
These are defined in Business Architecture terms first, before mapping to the required technology implementation, and are structured as ‘Capability Diamonds’.
This approach enabled them to abstract and group the combination of microservice functions required to achieve the business capability that delivers a specific customer experience, helping them to understand the complexity of each development.
An example is their Payment Capability, where several payment vendors are grouped, each with standardized API interfaces, and these are combined with the other modules such as e-commerce forms, to deliver the overall customer experience.
This is repeated for other functions, such as their Inventory Service, that groups interfaces to stock systems, third-party vendors and so on.
Diamonds can also be recursively integrated into other diamonds. For example their Product Wayfinding capability, which allows customers to find their desired products, groups together functions like Intelligent Search and Digital Asset Management, and also incorporates the Inventory Service.
This modular approach further enables their digital partner networks, where organizations like ASOS and JD Sports can also embed and integrate the Product Wayfinding service into their own channels.
Conclusion
What this Capability Diamond model enables for Adidas is:
- Manageable structure in a complex microservices architecture: They have hundreds of microservices, but only 20-25 capabilities.
- Understand the complex of new features early in the development life-cycle.
- Creates a common understanding between business and technology teams.
- Avoid duplication and encourage reuse.