Teaching workspace

System Design

Taught through documented architectures from Facebook, Discord, Amazon, Figma, Notion and PostgreSQL — every claim traced to a primary source. One win per lesson, retrieval practice at the end, and earlier material mixed back in on purpose.

How to use this

Read a lesson in one sitting, then do the quiz before you feel ready. The options are built to be the same length so nothing leaks the answer, and the questions deliberately reach back into earlier lessons. Reloading a page a day later and re-testing is worth more than reading it twice today.

Lessons

  1. 01 The Replica Time Machine Replication & staleness Facebook · Scaling Memcache (NSDI ’13)
  2. 02 Choosing Your Failure Mode Partitioning & tail latency Discord · 2017 and 2023
  3. 03 The Dangerous Moment Cache misses & leases Facebook · §3.2.1
  4. 04 Retries Are Selfish Timeouts, retries, backoff, jitter AWS Builders’ Library
  5. 05 The Dial Quorums & the availability trade Amazon · Dynamo (SOSP ’07)
  6. 06 The Cheap Move First Sequencing the scaling moves Figma
  7. 07 Five Minutes Migrating a live database Notion
  8. 08 The Shape of an Index Storage engines · Module 1 PostgreSQL 18 documentation
  9. 09 Writing Fast and Reading Slow Storage engines · Module 1
  10. 10 The Three Amplifications Storage engines · Module 1
  11. 11 What an Index Costs Storage engines · Module 1
  12. 12 Rows or Columns Storage engines · Module 1
  13. 13 The Compatibility You Owe Data on one machine · Module 1
  14. 14 What ACID Promises Transactions · Module 2
  15. 15 Snapshots Without Locks Transactions · Module 2
  16. 16 The Anomalies Transactions · Module 2
  17. 17 Serializable and Its Price Transactions & isolation · Module 2
  18. 18 The Coordination Tax Distributed transactions · Module 2

The full curriculum plans 13 weeks and roughly 120 lessons — storage engines, transactions, consensus, async work, the network edge, reliability, observability, sixteen real architectures, and a final module on design docs and running a review. Every lesson names its primary source before it is written.

Reference sheets

The compressed essence of each lesson, built to be printed and re-read rather than worked through.

  • The Cache Miss PlaybookTwo failures live in the gap between a miss and the write-back. They look alike on a dashboard and need different fixes.
  • The Migration PlaybookThe same four phases whether you are sharding a database, changing a column type, or replacing a queue. Load phases 1–3 until phase 4 has almost nothing to do.
  • The Partitioning PlaybookChoosing a partition key, and recognising the outage when it was the wrong one.
  • The Quorum PlaybookThree numbers, one inequality, and a long list of things that inequality does not mean.
  • The Retry PlaybookTimeouts create retries, retries multiply, and backoff without jitter just gives the spike a rhythm.
  • The Scaling LadderTake the cheapest rung that clears your runway requirement. Every rung you climb permanently removes something you used to get for free.
  • The Staleness PlaybookReplicas, lag, and the four ways to make a user see their own write. Print it; it is designed to survive a black-and-white printer.
This is a course with a teacher attached. The lessons are a starting point, not the whole thing — Lessons 01 and 02 roughly tripled in size because of questions asked while reading them. Ask about anything unclear, and push on anything that sounds too tidy.