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.
30 resources
Ambry: Distributed Immutable Object Store at LinkedIn
A SREcon talk on Ambry, LinkedIn's distributed object store for immutable blobs: its architecture, key features and operational flows.
Case StudiesIntermediateBy LinkedIn engineers · LinkedIn
Automated Fake Account Detection at LinkedIn
To maintain a safe and trusted professional community on LinkedIn, we require that every LinkedIn profile must uniquely represent a real person. One of the ways we ensure that accounts are real is by building automated detection systems …
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn
Boosting Site Speed Using Brotli Compression at LinkedIn
A real-world engineering write-up from LinkedIn on performance Optimization by Brotli Compression.
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn
Brooklin: Distributed Service for Near Real-Time Data Streaming at LinkedIn
Brooklin—a distributed service for streaming data in near real-time and at scale—has been running in production at LinkedIn since 2016, powering thousands of data streams and over 2 trillion messages per day. Today, we are pleased to ann…
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn
Concourse: Generating Personalized Content Notifications in Near-Real-Time at LinkedIn
Social media are computer-mediated platforms that facilitate creation and sharing of information, ideas, career interests, and other forms of expression via virtual communities and networks. In the last few years, notifications have been…
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn
Couchbase Ecosystem at LinkedIn
The tools, libraries and monitoring services LinkedIn built around its large Couchbase deployment so it could be operated at scale.
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn
Data Infrastructure at LinkedIn
Shirshanka Das describes LinkedIn’s Big Data Infrastructure and its evolution through the years, including details on the motivation and architecture of Gobblin, Pinot and WhereHows.
Case StudiesIntermediateBy LinkedIn engineers · LinkedIn
Data Pipeline Monitoring System at LinkedIn
Monitoring big data pipelines often equates to waiting for a long-running batch job to complete and observing the status of the execution. The status can result in “Failed” or “Successful” or even “Incomplete.” From there, it’s the team’…
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn
Dynamometer: Scale Testing HDFS on Minimal Hardware with Maximum Fidelity at LinkedIn
LinkedIn's open-source Dynamometer, which emulates an HDFS cluster of thousands of nodes on a small fraction of the hardware to test NameNode performance before changes ship.
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn
Espresso: Distributed Document Store at LinkedIn
Authors: Aditya Auradkar, Tom Quiggle Espresso is LinkedIn
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn
Fixing Linux filesystem performance regressions at LinkedIn
The learnings we took away from these prior efforts allowed us to build a more refined and automated process for reimaging servers going forward, and to more crisply define the lifecycle of the servers on which we deploy LinkedIn’s produ…
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn
Galene: Search Architecture of LinkedIn
Introducing LinkedIn’s new search architecture Authors: Sriram Sankar, Asif Makhani Search is one of the most intensely studied problems in software engineering. It brings together information retrieval, machine learning, distributed sys…
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn
Garbage Collection in Java Applications at LinkedIn
High-performance applications form the backbone of the modern web. At LinkedIn, a number of internal high-throughput services cater to thousands of user requests per second. For optimal user experience, it is very important to serve thes…
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn
Kafka at LinkedIn
If data is the lifeblood of high technology, Apache Kafka is the circulatory system in use at LinkedIn. We use Kafka for moving every type of data around between systems, and it touches virtually every server, every day. The complexity o…
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn
Merging Code in High-velocity Repositories at LinkedIn
The product ecosystem at LinkedIn is vast, and managing its infrastructure can be daunting. Nearly 10 years ago, we transitioned away from a single monolithic codebase toward a microservice architecture, allowing teams to manage their ow…
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn
Multi-Clustering: Improving Resiliency and Stability of a Large-scale Monolithic API Service at LinkedIn
How do you increase the resiliency and stability of a monolithic API service that is used by three different platforms, serving 500+ million members, developed by over 400 engineers, deployed three times per day, and consuming almost 300…
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn
Nuage: Cloud Management Service at LinkedIn
LinkedIn is committed to providing economic opportunities for every member of the global workforce, and we’re growing at a rapid pace. Our platform is built on a collection of large-scale multi-cluster services functioning in harmony to …
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn
Operations (11 parts) at LinkedIn
Editor’s Note: This is part of the series “Every Day Is Monday in Operations”. All posts in the series will link back to this introduction and every post will be linked in the index below as they are published.
Case StudiesIntermediateBy LinkedIn engineers · LinkedIn
Privacy-Preserving Analytics and Reporting at LinkedIn
Key desiderata Coverage and utility: It is desirable for the aggregate statistics to be available and reasonably accurate for as many action types, entities, demographic attribute/value combinations, and time ranges as possible for the a…
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn
Real-time Distributed Tracing at LinkedIn
Co-authors: Chris Coleman , Toon Sripatanaskul With LinkedIn’s service-oriented architecture, a single page view request can fan out calls to downstream services spanning multiple backend tiers, many levels deep. Though applications depe…
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn
Real-time Presence Platform at LinkedIn
Have you ever wondered how those green online indicators (or “presence indicators”) that are so pervasive in every instant messaging application and social network actually work? How does one display them in real time for roughly 500 mil…
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn
Resilience Engineering with Project Waterbear at LinkedIn
Founder & CEO, AskNio | Voice AI that puts your best frontline knowledge into every customer and employee conversation
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn
Samza: Stream Processing System for Latency Insighs at LinkedIn
Traditional request response metrics are fairly easy to measure. There is a clearly defined start time (when the request is received) and a clearly defined end time (when the last byte of the response is sent and the connection is closed).
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn
Scaling Hadoop YARN cluster beyond 10,000 nodes at LinkedIn
A real-world engineering write-up from LinkedIn on big Data.
Case StudiesIntermediateRead hereBy LinkedIn engineers · LinkedIn