System Design Foundations
The building blocks of scalable systems — load balancing, caching, queues, partitioning, and the reliability work around them.
Intermediate1h 37m4 modules14.8k students

What you’ll learn
Assemble the building blocks
Know what load balancers, caches, and queues each solve, and what they cost you.
Scale the data layer
Partition and replicate data, and reason clearly about the consistency you gave up.
Design resilient APIs
Handle retries, idempotency, and rate limiting so failures do not compound.
Estimate capacity
Do the arithmetic that turns a hand-wavy design into a defensible one.
Tracklist
4 modules · 1h 37m
1Core Building BlocksThe three components that appear in nearly every architecture diagram, and what each one is actually for.38m 9s
2Data at ScaleWhat happens to your database when one machine is no longer enough.17m 52s
3API Design at ScaleThe contract other systems depend on, and how it behaves when they misbehave.20m 32s
4Reliability and OperationsKnowing what your system is doing, and what it does when a dependency stops answering.20m 55s