Competitive retail architecture with microservices
summary
A retail platform refactors a 2014 monolith into ~270 microservices across ~50 teams, using Docker/Swarm then Google Cloud, JVM languages plus Node.js, and Apache Kafka for asynchronous communication; independent deploys, one database per service, and eventing as an API enable autonomy and failure isolation. Kafka stores compacted full-entity events, supports replay/reread for recovery or schema evolution, and teams avoid breaking changes. A Node.js gateway assembles HTML/CSS/JS fragments at runtime—dynamic UI composition—and this architecture already runs mobile, marketplace and a food fulfillment center.
AI-written summary · about
chapters (21)
- 0:00Intro
- 1:22Our history (Spoiler alert)
- 5:05Organization and Architecture at Rewe Digital
- 7:04Design Goals
- 7:45Conway's law
- 8:24How to organize teams to build a scalable system?
- 9:36Customer journey defines subdomains
- 13:16Guarding rails for developers
- 15:34Autonomy principles
- 18:29Challenges
- 21:26Autonomy opens your tech stacks
- 22:17Automation principles
- 23:58Communication principles
- 24:49Problems in HTTP/REST-only architectures
- 26:27Communication in microservice worlds
- 27:20Eventing with Apache Kafka
- 31:48Lessons learned with microservice APIs
- 34:41Usage of API gateways as entry points
- 36:16Dynamic frontend composition
- 44:02Dynamic Ul composition with DUC
- 46:38Git Project: rewe-digital/integration-patterns
related talks
38mFrom Monolith to Microservices at Zalando
01h 07mMicroservices from the Trenches. A Guide through the Architecture, Design, Code
57mSplitting Monolith Application to Microservices
43mPatterns for Reactive node.js Microservices
23mLegacy, Open source, microservices and data architecture
50mA Practical Use Case of Software Architecture Evolution
34mMicro-services for a Billion people
46mMicroservices from the Trenches
