Learning path / 20 published lessons
Designing for scale
Turn product workloads into system designs: choose data models, request paths, asynchronous work and recovery policies. Revisit each design when a traffic or consistency assumption changes.
What you’ll work toward
- Bound behavior, load and failure requirements
- Trace architectural mechanisms to falsifiable requirements
- Compare four designs with consistent capacity arithmetic
- Explain acknowledgement, consistency and recovery boundaries
Completion is stored on this device only. Nothing is locked; start where it makes sense.
Start this pathBefore the first lesson
- Basic service and database concepts
These are the starting lesson’s prerequisites, not requirements for every advanced topic below.
How to practise this subject
Estimate demand with units, draw the critical path, identify its bottleneck and rehearse one failure. Justify a tradeoff rather than treating a vendor diagram as the answer.
- 01
Designing for Scale · Requirements to Architecture
Convert prompts into testable requirements, capacity constraints and failure contracts through four worked designs and a traceable review method.
- 02
Designing for Scale · The Storage Decision Tree
Storage selection has several independent axes. A source-bounded lesson with worked reasoning, failure analysis and explicit runtime limitations.
- 03
Designing for Scale · CAP and the Consistency Spectrum
CAP is a history argument, not a database label. A source-bounded lesson with worked reasoning, failure analysis and explicit runtime limitations.
- 04
Designing for Scale · URL Shortener
Identifier probability and redirect policy. A source-bounded lesson with worked reasoning, failure analysis and explicit runtime limitations.
- 05
Designing for Scale · Chat and Real-time Communication
Transport, durable acceptance and per-conversation order. A source-bounded lesson with worked reasoning, failure analysis and explicit runtime limitations.
- 06
Designing for Scale · Newsfeed and Fan-out
Hybrid fan-out is a workload decision, not a law. A source-bounded lesson with worked reasoning, failure analysis and explicit runtime limitations.
- 07
Designing for Scale · Typeahead and Search Autocomplete
Prefix lookup, top-k maintenance and hot prefixes. A source-bounded lesson with worked reasoning, failure analysis and explicit runtime limitations.
- 08
Designing for Scale · Notification Systems
The provider acknowledgement is an uncertainty boundary. A source-bounded lesson with worked reasoning, failure analysis and explicit runtime limitations.
- 09
Designing for Scale · Real-Time Analytics
Provisional and final aggregates must agree on ownership. A source-bounded lesson with worked reasoning, failure analysis and explicit runtime limitations.
- 10
Designing for Scale · Change Data Capture (CDC)
Build CDC and transactional-outbox reasoning around coordinated snapshots, durable intent, replay identity, schema evolution and WAL retention.
- 11
Designing for Scale · The Data Lakehouse
Explain atomic table snapshots over immutable files, writer conflicts, row deletes, schema identity, maintenance and measured architecture trade-offs.
- 12
Designing for Scale · Model Serving
Budget model-serving queues, batching, memory and asymmetric scaling, then design bounded shadow deployments and controlled rollouts.
- 13
Designing for Scale · RAG and Vector Search
Build versioned authorized retrieval, compare exact and approximate search, fuse lexical and vector candidates, and test evidence boundaries.
- 14
Designing for Scale · End-to-End Design Review I
Trace video upload, processing, publication, feed fanout and deletion through a worked capacity model and guarded state machine.
- 15
Designing for Scale · End-to-End Design Review II
Protect ticket inventory through bounded admission, short transactions, durable holds and idempotent payment reconciliation with a SQLite state-machine fixture.
- 16
System Design Framework — Reqs, Capacity, HLD, Deep-Dive
A worked design-review method grounded in measurable requirements, consistent capacity arithmetic, complete request paths and defensible failure tradeoffs.
- 17
Design a URL Shortener — the Classic Warm-Up
Design a shortener around authoritative mappings, unique allocation, explicit redirect caching and takedown policies, with executable failure models.
- 18
Design a Chat System — WebSockets, Delivery, Presence
Design idempotent durable chat acceptance, ordering, replay and receipts. Mechanisms, worked examples, failure analysis and complete practice answers.
- 19
Design a Newsfeed / Recommender — Pull vs Push, Ranking
Derive push and pull costs from follower and reader activity. Mechanisms, worked examples, failure analysis and complete practice answers.
- 20
Design an AI Chat Product — RAG + Agents + Serving
Design durable turn state, authorized retrieval and tool execution. Mechanisms, worked examples, failure analysis and complete practice answers.