System design case studies
How real companies build and scale their systems. Read an in-depth write-up, filter hundreds of engineering case studies, or open a similar design in the Builder.
In-depth write-ups
Each has an architecture diagram, the key components, scaling challenges and trade-offs, videos to watch and reading.
Architecture at a glance
- Service mesh of APIs
- Dynamo / DynamoDB
- SQS / SNS
- Cart & checkout
Architecture at a glance
- Application servers
- Sharded relational database
- Cache tier
- Media storage and CDN
Instagram
A photo and video feed that stays fast as the user base grows by orders of magnitude.
4 components3 challenges
Architecture at a glance
- Edge gateway (Zuul)
- Open Connect CDN
- Microservices
- Cassandra / EVCache
- +1 more
Netflix
Streaming to hundreds of millions of devices, built to survive failure.
5 components3 challenges
Architecture at a glance
- Streaming and CDN layer
- Metadata and catalogue services
- Event pipeline
- Recommendation platform
Spotify
Instant playback and personalised discovery for a global catalogue of audio.
4 components3 challenges
Architecture at a glance
- Dispatch service
- Location pipeline
- Schemaless / Docstore
- Kafka
- +1 more
Architecture at a glance
- Chat servers
- Message queue / store
- Presence service
- Media storage + CDN
Architecture at a glance
- Upload service
- Transcoding workers
- Metadata DB (Vitess)
- CDN / edge caches
- +1 more
439 engineering case studies
Write-ups from the companies themselves, with credit. Pick a company, or use the filters for topic, design area, difficulty and creator.
4 resources
How Discord Scaled Elixir to 5,000,000 Concurrent Users
How a chat service handles millions of concurrent connections with Erlang/Elixir processes and consistent hashing.
Case StudiesIntermediateRead hereBy Discord
How Discord Stores Billions of Messages
The data model and partitioning of Discord's message store on Cassandra, and the hot-partition problems it met.
Case StudiesIntermediateRead hereBy Discord
Storing Messages with Cassandra at Discord
A real-world engineering write-up from Discord on noSQL Databases.
Case StudiesIntermediateRead hereBy Discord engineers · Discord
Switching from Go to Rust at Discord
A real-world engineering write-up from Discord on performance Optimization on Languages and Frameworks.
Case StudiesIntermediateRead hereBy Discord engineers · Discord