The system design library
Search and filter every curated system design video, article, repository and paper in one place.
97 resources
Computer Networks: A Systems Approach
How networks are built and why: protocols, routing, congestion control and the internet's architecture. The authors publish it free online under CC BY 4.0.
BooksIntermediateFree from the authorBy Larry Peterson, Bruce Davie · Systems Approach
Android Developers Blog
The latest updates from the Android team: new features and platform releases, looks at what’s launching and why it matters.
BlogsIntermediateBy Google engineers · Google
Architecture of Chat Service (3 parts) at Riot Games
Playing League of Legends for years now, I’ve formed a meaningful network of social connections with other gamers around the world. Whether they’re friends from work, former classmates, or players I’ve been matchmade with, they all have an…
Case StudiesIntermediateRead hereBy Riot Games engineers · Riot Games
AWS Compute Blog
AWS Lambda now exposes Availability Zone metadata through an endpoint in the execution environment, so your function can discover its AZ ID with an HTTP request. Use it to prefer same-AZ endpoints for services like ElastiCache, Amazon RD…
BlogsIntermediateBy Amazon Web Services engineers · Amazon Web Services
AWS Networking Blog
Modernizing a monolith into microservices may require placing each new service in its own AWS account for isolation, independent scaling, and clear ownership. During that migration you hit a hard question: how do you shift a small, preci…
BlogsIntermediateBy Amazon Web Services engineers · Amazon Web Services
Basic Architecture of Slack
Written with contributions from the Shared Channels Team. Slack was originally built to be the collaboration hub for the work within your company. As the network of companies using Slack for internal work grew, we saw the value of allowi…
Case StudiesIntermediateRead hereBy Slack engineers · Slack
Blue Green Deployment
Running two identical environments and switching traffic between them for near-zero-downtime releases.
BlogsBeginnerBy Martin Fowler
Box Graph: Spontaneous Social Network at Box
By now it's no secret that the amount of content that is being created and shared is increasing exponentially. To help extract value from all of that content, we introduced Box Skills, a framework that brings machine learning innovations…
Case StudiesIntermediateRead hereBy Box engineers · Box
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
Challenges with distributed systems
A tour of why distributed systems are hard: partial failure, unreliable networks, queues and retries.
BlogsIntermediateBy Amazon Builders' Library · Amazon Web Services
Chrome Developers Blog
Latest news from the Chrome Developer Relations team
BlogsIntermediateBy Google engineers · Google
Cloudflare Blog
Deep technical posts on networking, DNS, CDN, security and edge computing from a company that runs a huge global network.
BlogsIntermediateBy Cloudflare engineers · Cloudflare
Cloudflare Engineering
Cloudflare's engineering posts, on topics like memory optimisation, Rust Workers, server hardware and data platforms.
BlogsIntermediateBy Cloudflare engineers · Cloudflare
Compression Techniques to Solve Network I/O Bottlenecks at eBay
eBay’s data storage related to Shopping Cart information relies on two different data stores.
Case StudiesIntermediateBy eBay engineers · eBay
Computerphile
Short, clear explainers on computing concepts, including networking, security and algorithms.
YouTubeBeginnerBy Computerphile · University of Nottingham
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
Cross-Cluster Traffic Mirroring with Istio at Trivago
The price of reliability is the pursuit of the utmost simplicity.— C.A.R. Hoare, Turing Award lectureHave you ever enthusiastically released a new, delightful version to product...
Case StudiesIntermediateBy Trivago engineers · Trivago
Cross-Lingual End-to-End Product Search with Deep Learning at Zalando
How We Built the Next Generation Product Search from Scratch using a Deep Neural Network
Case StudiesIntermediateRead hereBy Zalando engineers · Zalando
Cross-Region Caching Library at Wix
At the Wix server infrastructure group we work daily on a set of tools that help make the lives of our backend developers easier, while also helping them deliver their code to production faster and safer. Wix handles huge traffic with mo…
Case StudiesIntermediateRead hereBy Wix engineers · Wix
Deploying Brotli for Static Content at Dropbox
Most representations of data contain a lot of redundancy, which provides an opportunity for greater communication efficiency by compressing the content. Compression is either built-in into the data format — like in the case of images, fo…
Case StudiesIntermediateRead hereBy Dropbox engineers · Dropbox
Designing Large-Scale Systems
I’ve been thinking about the lessons distributed systems engineers learn on the job. A great deal of our instruction is through scars made by mistakes made in production traffic. These scars are useful reminders, sure, but it’d be better…
BlogsIntermediateBy Somethingsimilar engineers · Somethingsimilar
Distributed Cache at Zalando
Using Akka cluster-sharding and Akka HTTP on Kubernetes
Case StudiesIntermediateRead hereBy Zalando engineers · Zalando
Druid - Real-time Analytics Database
Apache Druid, a real-time analytics database: the project site and its documentation.
DocumentationIntermediateBy Apache engineers · Apache
End-to-End Arguments in System Design (paper)
The principle that reliability is best checked at the endpoints, behind many design choices in networking and retries.
PapersIntermediateBy Saltzer, Reed and Clark · MIT