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.
16 resources
Ads Pacing Service at Twitter
In this blog, we describe how we separate Twitter’s pacing system from the serving stack to an independent service.
Case StudiesIntermediateBy Twitter engineers · Twitter
Architecture of Ad Platform at Twitter
Learn how our Revenue Platform team re-built Twitter’s Ad Platform Architecture for the future.
Case StudiesIntermediateBy Twitter engineers · Twitter
Deterministic Aperture: A Distributed, Load Balancing Algorithm at Twitter
As parts of the Twitter application grow, we can scale demands on capacity by adding more instances or replicas to a respective service cluster (i.e., horizontal scaling)
Case StudiesIntermediateBy Twitter engineers · Twitter
Dynamic Configuration at Twitter
Learn about the infrastructure that enables developers at Twitter to manage application configurations, perform experiments, and release changes safely and efficiently.
Case StudiesIntermediateBy Twitter engineers · Twitter
FlockDB: Distributed Graph Database at Twitter
A real-world engineering write-up from Twitter on noSQL Databases.
Case StudiesIntermediateBy Twitter engineers · Twitter
High-performance Replicated Log Service at Twitter
Building DistributedLog: High-performance replicated log service
Case StudiesIntermediateBy Twitter engineers · Twitter
Improving key expiration in Redis at Twitter
After updating to a new Redis version the Cache team saw a regression. This goes over the investigation and our conclusions.
Case StudiesIntermediateBy Twitter engineers · Twitter
Manhattan: Distributed Key-Value Database at Twitter
Manhattan, our real-time, multi-tenant distributed database for Twitter scale
Case StudiesIntermediateBy Twitter engineers · Twitter
MetricsDB: TimeSeries Database for storing metrics at Twitter
Using a custom storage backend instead of traditional key value store reduced the overall capacity requirements by a factor of 10. This also reduced latency by a factor of five.
Case StudiesIntermediateBy Twitter engineers · Twitter
Productionizing ML with Workflows at Twitter
Cortex automates machine learning pipelines at Twitter with Airflow.
Case StudiesIntermediateBy Twitter engineers · Twitter
Scaling Redis at Twitter
Yao Yue has worked on Twitter’s Cache team since 2010. She recently gave a really great ...
Case StudiesIntermediateRead hereBy Twitter engineers · Twitter
Search Service at Twitter (2014)
Since that first simple Tweet over eight years ago, hundreds of billions of Tweets have captured everyday human experiences and major historical events. Our search engine excelled at surfacing breaking news and events in real time, and o…
Case StudiesIntermediateBy Twitter engineers · Twitter
SplitNet Architecture for Ad Candidate Ranking at Twitter
Recently, Twitter Engineering reimagined the architecture for a key stage in our ads serving funnel. We overhauled the system to modernize our ML platform and increase system stack simplicity.
Case StudiesIntermediateBy Twitter engineers · Twitter
Stability and Scalability for Search at Twitter
In this blog, we discuss how we power real-time search for Tweets, Users, Direct Messages and more using Elasticsearch.
Case StudiesIntermediateBy Twitter engineers · Twitter
Zipkin: Distributed Systems Tracing at Twitter
A real-world engineering write-up from Twitter on distributed Tracking, Tracing, and Measuring.
Case StudiesIntermediateBy Twitter engineers · Twitter
ZooKeeper at Twitter
Apache ZooKeeper is a system for distributed coordination. ZooKeeper is used at Twitter as the source of truth for storing critical metadata. I
Case StudiesIntermediateBy Twitter engineers · Twitter