Courses

System Design Foundations

Frame a system before you draw it: the requirements that matter, the numbers behind them, the API and data model that hold up, and one design carried through a spike and a failure to a tradeoff you can defend.

Islands
6
Lessons
36
Exercises
209
DebugCode orderFill blankMultiple choiceShort answerTapTrace

Start the first lesson

  1. Island 1

    Frame and Size

    Turn a one-line ask into requirements you can design against, the targets that decide the shape, and the traffic and storage numbers that say what fits on one machine and what does not.

    1. What the System Must Do5 exercises, 5 min
    2. Nines and Percentiles5 exercises, 5 min
    3. Requests per Second5 exercises, 6 min
    4. Bytes per Day, Years of Disk5 exercises, 6 min
    5. Checkpoint: Frame and SizeCheckpoint7 exercises, 6 min
    6. Boss: The Link ShortenerBoss8 exercises, 9 min
  2. Island 2

    APIs and Data

    The contract a client can rely on, the identifier that survives growth, the schema and index that make the query cheap, and the key that makes a retry safe.

    1. The Contract Before the Code5 exercises, 5 min
    2. Choosing an ID5 exercises, 5 min
    3. The Index That Makes the Query Cheap5 exercises, 6 min
    4. Doing It Once5 exercises, 6 min
    5. Checkpoint: APIs and DataCheckpoint7 exercises, 6 min
    6. Boss: The Registration DeskBoss8 exercises, 9 min
  3. Island 3

    Components and Flow

    Where one service ends and the next begins, which steps the caller waits for and which it does not, what a queue buys and costs, and which store each kind of data belongs in.

    1. Where One Service Ends5 exercises, 5 min
    2. Sync or Async5 exercises, 5 min
    3. What a Queue Buys5 exercises, 6 min
    4. Which Store for Which Data5 exercises, 5 min
    5. Checkpoint: Components and FlowCheckpoint6 exercises, 6 min
    6. Boss: The Image PipelineBoss8 exercises, 9 min
  4. Island 4

    Scale and Performance

    The cache and its hit rate, the edge and what belongs on it, read replicas and the lag they carry, and the partition key that spreads the load or concentrates it.

    1. Cache What Repeats5 exercises, 5 min
    2. The Edge and the CDN5 exercises, 5 min
    3. Read Replicas and Their Lag5 exercises, 6 min
    4. Partitions and the Hot Key5 exercises, 6 min
    5. Checkpoint: Scale and PerformanceCheckpoint7 exercises, 6 min
    6. Boss: The Content FeedBoss8 exercises, 9 min
  5. Island 5

    Reliability and Consistency

    Timeouts and the retry budget, failover and the writes it can lose, the operations that need strong consistency and the ones that do not, and the duplicate delivery every queue eventually makes.

    1. Timeouts and Retry Budgets5 exercises, 6 min
    2. Failover Without Losing Writes5 exercises, 6 min
    3. Strong Where It Counts5 exercises, 5 min
    4. Duplicate Delivery Is Normal5 exercises, 6 min
    5. Checkpoint: Reliability and ConsistencyCheckpoint7 exercises, 6 min
    6. Boss: Inventory ReservationBoss8 exercises, 9 min
  6. Island 6

    Operate and Protect

    The four numbers to watch, backpressure before the queue eats the memory, rate limits keyed on the right thing, and the rollout that can be undone.

    1. The Four Numbers5 exercises, 5 min
    2. Backpressure5 exercises, 6 min
    3. Rate Limits and Abuse5 exercises, 6 min
    4. Rollout and Rollback5 exercises, 6 min
    5. Checkpoint: Operate and ProtectCheckpoint7 exercises, 6 min
    6. Boss: The Notification PlatformBoss8 exercises, 9 min