Resources
76 curated resources
Illustrated walkthroughs of how large systems are put together.
Essays on databases, distributed systems, and the algorithms underneath them.
Marketplace, mapping, and payments systems at ride-sharing scale.
Streaming infrastructure, resilience testing, and microservice operations.
Edge networking, caching, and security written from the operator's chair.
API design, idempotency, and careful database migrations for money movement.
Real-time messaging, storage migrations, and language rewrites at scale.
Graph storage, feeds, caching tiers, and the infrastructure behind them.
How a large code host ships, scales, and recovers.
Multiplayer editing, conflict resolution, and rendering performance.
Messaging reliability, workspace sharding, and deploy practices.
Commerce infrastructure under flash-sale load.
Fintech infrastructure and internal tooling notes.
Serverless compute and GPU scheduling from the people running it.
Running untrusted code for millions of users.
Editor infrastructure, indexing, and inference serving notes.
Distributed systems research explained by the author of DDIA.
A long-running archive of real-world architecture write-ups.
Scaling a photo product from a handful of servers to billions of users.
Feed ranking, streaming logs, and graph infrastructure.
Globally distributed databases and the patterns built on top of them.
Reference architectures and well-architected reviews.
Running apps close to users, with plenty of Postgres detail.
Distributed SQL internals: consensus, replication, transactions.
Metrics pipelines, tracing, and operating observability at scale.
File sync, blob storage, and large migrations.
Safety analyses of databases and queues under partitions and faults.
Recommendation systems, sharded MySQL, and image infrastructure.
Service migration, search ranking, and payments platform notes.
Martin Kleppmann
Alex Xu
Alex Xu and Sahn Lam
Artur Ejsmont
Sam Newman
Alex Petrov
Roberto Vitillo
Mark Richards and Neal Ford
Michael Nygard
Beyer, Jones, Petoff, Murphy
Remzi and Andrea Arpaci-Dusseau
Maarten van Steen and Andrew Tanenbaum
Cache / Data store · In-memory structures for caching, counters, queues, and leases.
Message streaming · Partitioned, replicated logs for event streams.
Relational database · The default relational store for most of the designs in this course.
Reverse proxy · HTTP server, reverse proxy, and load balancer.
Containers · Package a service with its dependencies into a portable image.
Orchestration · Schedule, scale, and heal containerized services.
Monitoring · Pull-based metrics and alerting.
Observability · Dashboards over metrics, logs, and traces.
Search engine · Distributed full-text search built on Lucene.
Message broker · A broker for work queues and routed messages.
Service discovery · Service registry, health checks, and a small KV store.
Distributed KV store · Consistent key-value storage behind Kubernetes.
Service proxy · Edge and sidecar proxy for service meshes.
Infrastructure as code · Declarative provisioning across providers.
Distributed tracing · Trace requests across many services.
Observability · Vendor-neutral instrumentation for traces, metrics, and logs.
Storage engine · An embeddable LSM-tree key-value store.
Distributed SQL · Serializable SQL on top of Raft-replicated ranges.
Distributed KV store · Strict ACID transactions with layered data models.
Object storage · S3-compatible object storage you can run yourself.
Stream processing · Stateful computation over unbounded streams.
Workflow orchestration · Schedule and monitor DAG-shaped pipelines.
Geospatial database · Spatial types and indexes for PostgreSQL.
YouTube · Short animated system design explainers.
YouTube · Whiteboard-style interview walkthroughs.
YouTube · Backend fundamentals: protocols, proxies, and databases.
YouTube · Deep system design series with a focus on tradeoffs.
YouTube · System design concepts explained step by step.
YouTube · Interview-oriented design walkthroughs.
YouTube · Structured roadmaps for coding and design interviews.
YouTube · Fast tours of tools and concepts.
YouTube · Performance and systems programming commentary.
YouTube · Software design and architecture in practice.
YouTube · Recorded lectures on distributed systems.
YouTube · Database internals lectures and talks.