System design handbook
Free guides with diagrams, from the first building blocks to distributed systems, and roadmaps that put them in order for your role.
Follow a roadmap
Start with the core, then go deeper for your role.
Core system design roadmap
Every role starts here: the building blocks every design round uses. For backend and full-stack interviews, it's most of what's tested.
Start the core roadmap- How interviews and estimates work
- Core properties
- Networking and APIs
- Storing data
- Caching
- Asynchronous work
- Distributed systems essentials
- Reliability
- Architecture and operations
- Practise full designs
Then go deeper for your role
Backend and full-stack
After the core: low-level design, APIs in depth, databases in depth and more.
Open roadmapData engineering
After the core: the data engineering design round, the shape of a data platform, batch processing and more.
Open roadmapMachine learning & AI
After the core: the end-to-end ML system, data and features, training at scale and more.
Open roadmapPlatform & infrastructure
After the core: SLOs and capacity, compute and orchestration, infrastructure and delivery and more.
Open roadmapDistributed systems
After the core: why it's hard, replication, partitioning and more.
Open roadmapFrontend & mobile
Its own path, separate from the core: the frontend interview, how the web delivers pages, performance and more.
Open roadmap
Interview soon? Readinterview preparation, interview questions and how to practice
Browse by topic
Every guide, grouped the way the sidebar groups them.
Core concepts
Foundations
The vocabulary every design discussion uses: scale, latency, availability, estimation and consistency.
Networking & APIs
How requests travel: DNS, HTTP, transports, API styles, real-time channels, load balancers and CDNs.
Databases & storage
Choosing and scaling storage: data models, indexes, replication, sharding, transactions, search and blobs.
More guides
- OLTP vs OLAP
- Indexing and storage engines
- LSM trees and SSTables
- Scaling databases
- Replication
- Change data capture
- Sharding
- Consistent hashing
- Isolation levels
- Optimistic vs pessimistic locking
- Connection pooling
- Database optimization
- Normalization
- Time-series databases
- Search and inverted index
- Object storage
- Geospatial indexing
Caching
Making reads fast without serving wrong data: placement, strategies, eviction and invalidation.
Messaging & async processing
Decoupling work in time: queues, pub/sub, event logs, delivery guarantees and distributed transactions.
Distributed systems and reliability
Distributed systems
Getting many machines to agree: failures, quorums, consensus, leaders, locks, clocks, IDs, gossip and CRDTs.
Reliability & resilience
Staying up when parts fail: rate limits, timeouts, circuit breakers, shedding load and recovering from disasters.
More guides
Architecture patterns
Shaping whole systems: service boundaries, dataflow, discovery, serverless, API conventions and fan-out.
Security
Knowing who is calling, what they may do, and keeping data private in transit and at rest.
By discipline
Real-world building blocks
The specific mechanisms behind classic design questions: typeahead, video delivery, payments, uploads and scheduling.
Low-level design (LLD)
Designing the code inside a service: object-oriented design, SOLID principles and the patterns LLD rounds expect.
Data engineering
Move data from operational sources into trusted, queryable products with reliable pipelines and clear ownership.
- Data engineering interview
- Data engineering architecture
- ETL vs ELT
- Backfill and reprocessing
- Pipeline error handling
More guides
- Materialized views
- Real-time analytics
- Data engineering patterns
- Warehouse vs lake vs lakehouse
- Lakehouse architecture
- Data mesh
- Medallion architecture
- Batch vs stream
- MapReduce
- Distributed file systems
- Windows and watermarks
- Stream processing
- Flink, Kafka Streams and Beam
- Lambda vs Kappa
- Apache Spark architecture
- Parquet, ORC and Avro
- Iceberg, Delta and Hudi
- Partitioning and clustering
- Pipeline orchestration
- Data quality
- Data contracts and schemas
Dimensional modeling
Kimball-style warehouse modeling for interviews: grain, facts, dimensions, history, integration, and two complete worked models.
Machine learning systems
Connect data, training, features, model deployment, online inference and feedback into a system that can be operated.
AI application architecture
Build useful AI products around models with retrieval, tools, safety, evaluation and reliable user-facing behavior.
Platform engineering & SRE
Running systems in production: containers, Kubernetes, infrastructure as code, delivery, observability and incidents.
Frontend & mobile
Client-side system design: rendering, state, caching, performance, offline sync and shipping to millions of devices.
Reading is half of it
Interviews test whether you can apply these ideas under time pressure and defend your choices. Practise on a design round with an AI interviewer that asks why.
Browse design roundsKnow a topic well?
Write an article for the handbook. Draft it with a live preview and our editors will help you polish it before it goes live with your name on it.
Write an article