Skip to main content

Book Exercise Lanes

This module's exercise system is local-chunk-driven. Use these chunks for targeted volume after you have already learned the concept from the guide. The four lanes align to the module's clusters.

How To Use This Page

  1. Finish the relevant concept page first.
  2. Run the drill at the end of that concept page from memory.
  3. Only then open the matching exercise lane.
  4. Keep a mistake log tagged with common errors such as jumped to solution, no numbers, wrong partition key, ignored hot partition, assumed AZ does not fail, trade-off unstated, missed SPOF, over-ran phase 1.

Lane 1: Framing, Estimation, and Hard Parts (Cluster 1)

Use this lane when your main problem is turning vague prompts into defensible numbers and a hard-parts list.

Target outcomes:

  • 5 problems framed into functional + non-functional + constraints + estimates, each in under 15 minutes
  • 5 back-of-envelope calculations done on paper without a calculator
  • 5 prompts with a 2-3 item ranked hard-parts list
  • memorized the powers-of-two row (10, 20, 30, 40) and the four core Jeff Dean latency numbers

Lane 2: High-Level Design, Storage, and Caching (Cluster 2)

Use this lane when you can frame a problem but still reach for the same storage and caching shapes by habit.

Target outcomes:

  • 4 box-and-arrow diagrams drawn from scratch, each with 6-12 labeled boxes
  • 6 seven-line storage sketches across different workloads, with a rejected alternative named each time
  • 4 five-line cache/CDN/LB justifications per diagram
  • 1 anti-pattern hunt in one of your own diagrams, with a fix applied

Lane 3: Deep Dive -- Components, Data Model, Concurrency (Cluster 3)

Use this lane when you can draw the diagram but freeze when a reviewer says "deep dive on this box".

Target outcomes:

  • 6 five-question decompositions on random boxes from your Lane 2 diagrams
  • 4 data-model sketches with primary key, partitioning key, and 2-3 indexes each
  • 4 three-line concurrency/consistency/transaction contracts per mutable table
  • 2 hot-partition fixes (time-bucket, read-fanout threshold, or similar) worked through end-to-end

Lane 4: Stress Test, Communication, and Doc (Clusters 4 and 5)

Use this lane when the design is plausible on paper but you cannot defend it under scaling or failure pressure.

Target outcomes:

  • 4 full 10× and 100× walks on different designs, each producing a ranked list of structural changes
  • 4 per-box failure tables (impact, blast radius, recovery, TTR), with AZ and region rows
  • 2 ranked bottleneck lists and 2 ranked SPOF lists, with accept-with-reason sentences written
  • 1 full design doc produced (sections 1-12 from Cluster 5 concept 15)
  • 1 timed 45-minute solo interview run that hits all four phases

Self-Curated Problem Set

Build a custom set from SDP 24: System design interview questions with these minimums:

  • 3 read-dominated systems (URL shortener, feed, content CDN)
  • 3 write-dominated systems (chat, metrics pipeline, bulk ingest)
  • 3 strongly-consistent systems (booking, inventory, payments)
  • 3 real-time systems (rate limiter, leaderboard, live scoreboard)

Rotate through them. Notice which shapes you habitually reach for and deliberately pick different ones.

Completion Checklist

  • Completed at least two lanes in full
  • Logged at least 12 real mistakes and corrections across sessions
  • Wrote at least 10 full trade-off statements in the four-slot form ("A over B because C, accepting cost D")
  • Ran at least 3 timed 45-minute sessions, at least one scoring "hit every phase on time"
  • Produced at least 1 full design doc with all 12 sections
  • Reattempted at least 4 failed estimation problems after review