

Category · Architecture
How to design a system that survives a million users
Step by step, the way a system design interview goes. Course plan: 1. The interview and requirements. 2. Scaling and the load balancer. 3. Caching. 4. Databases under load. 5. Queues and async processing. 6. CDN and static content. 7. API design and rate limiting. 8. Monolith or microservices. 9. Reliability and observability. 10. Case study: a URL shortener. 11. Case study: a news feed. The first ten lessons are available now, the news feed case study is coming soon.
10 lessons114 min
To the first lessonCheatsheet nowTopics, each as its own lesson

01How a system design interview goes and where to startDemoRequirements and numbers first, then the diagram. Not the other way round.
11 min
02Scaling: vertical, horizontal and the load balancerA bigger server or more servers, and who spreads the requests between them.
10 min
03Caching: cache-aside, TTL and invalidationHow to serve hot data from memory without showing stale data.
11 min
04Databases under load: replicas, sharding, consistencyHow to offload reads, split writes, and what you will have to give up.
12 min
05Queues and async processingNot everything has to happen while the user waits for a response.
11 min
06CDN and static contentImages, scripts and video should come from a server close to the user, not from yours.
10 min
07API design and rate limitingClear resources, pagination, safe retries and protection from overly busy clients.
12 min
08Monolith, microservices or serverlessHow to split a system into parts, and why microservices are not the starting point.
11 min
09Reliability and observabilitySLOs, retries with backoff, circuit breakers and how to find out what exactly broke.
12 min
10Case study: a URL shortenerA classic interview problem from requirements to scaling, step by step.
14 min0/10 topics open. This is the course intro, not the whole course on one page.
In the knowledge base
Reference pages for the technologies on this topic: who maintains them, when to use them and what interviews ask.