System design
Learning paths
Topics
Roadmaps
Games
Search articles, topics...
⌘K
Library
Topics
Reliability
Staying up, failing gracefully, and recovering fast when you do not.
Path
System design
AI engineering
Databases
Distributed systems
Articles
Level
Foundation
Core
Senior
Staff
Design questions only
Patterns
Claim with an expiry
Fan out on write or on read
Safe retries
One owner per key
The answer that never came
Narrow
Scaling
1
Estimation
1
Load balancing
1
Networking
1
Caching
1
Replication
2
Consensus and coordination
2
Transactions and locking
1
Concurrency
1
Storage and indexes
1
SQL
1
Queues and streams
5
Real-time
1
API design
1
Observability
3
Architecture and deployment
2
Rate limiting and overload
2
Payments
3
Remote work
1
India scale
1
Agents
1
23 pages
Scaling from one server
System design · Foundation · 18 min
Scaling
Load balancing
Availability and the nines
System design · Foundation · 16 min
Observability
Estimation
Message queues
System design · Core · 15 min
Queues and streams
Observability as a design component
System design · Core · 11 min
Observability
Design a notification service
System design · Core · 32 min
Queues and streams
Real-time
Design a distributed job scheduler
System design · Senior · 30 min
Queues and streams
Consensus and coordination
Design a UPI style payment rail
System design · Staff · 37 min
Payments
Transactions and locking
India scale
Human in the loop and durable agents
AI engineering · Senior · 7 min
Agents
Backups and recovery
Databases · Core · 8 min
Storage and indexes
Partial failure
Distributed systems · Foundation · 12 min
Networking
Retries, backoff and circuit breakers
Distributed systems · Senior · 12 min
Rate limiting and overload
Failure detection and gossip
Distributed systems · Senior · 9 min
Replication
Leader election, leases and locks
Distributed systems · Senior · 12 min
Consensus and coordination
Concurrency
Exactly-once in practice
Distributed systems · Senior · 12 min
Queues and streams
Payments
Idempotency keys
Articles · Core · 9 min
API design
Payments
At most, at least, exactly once
Articles · Core · 7 min
Queues and streams
Blue-green vs canary vs rolling
Articles · Core · 8 min
Architecture and deployment
SLA vs SLO vs SLI
Articles · Core · 8 min
Observability
Rate limiting vs backpressure
Articles · Core · 7 min
Rate limiting and overload
Mitigation vs root cause
Articles · Core · 9 min
Remote work
Cache stampedes
Articles · Senior · 11 min
Caching
Active-passive vs active-active vs cells
Articles · Senior · 13 min
Replication
Architecture and deployment
Zero-downtime migrations
Articles · Senior · 12 min
SQL