New to system design
Start here if you've shipped features but never designed a system from scratch in an interview. These six stops build the vocabulary and mental shape every senior engineer has internalised.
For: Junior → mid-level, first system design round coming up
After this path
Turn a vague prompt into a designable problem, sketch the right high-level shape, and defend the API contract.
- 1Skill
Requirements & scope framing
Separating functional from non-functional, surfacing assumptions, bounding scope.
Why this, here: Before anything else: how to turn a vague prompt into a designable problem in five minutes.
- 2Skill
Capacity estimation (back-of-envelope)
Deriving QPS, storage, bandwidth, memory from user-facing numbers.
Why this, here: Give every number in your design a defensible origin — not "a lot" or "millions".
Checkpoint
Before moving on: pick any consumer product you use daily and sketch its QPS, storage growth per year, and peak-hour bandwidth on a napkin in under three minutes. If you can’t, re-read — the rest of the path assumes this is muscle memory.
- 3Skill
High-level architecture
Component boundaries, request flow, sync vs async paths.
Why this, here: How to draw the shape of a system: boundaries, dataflow, sync vs async.
- 4Pattern
Read-heavy
Reads dominate writes by 10:1 or more. Every layer exists to keep the primary out of the hot path.
Why this, here: The shape 70% of prompts take. Recognise it in two minutes; design the right thing.
Checkpoint
Gut-check: name three interview prompts that are read-heavy in disguise and one that looks read-heavy but isn’t. If you can’t, the recognition isn’t sticky yet.
- 5Skill
Caching strategy
What to cache, TTLs, invalidation, write-through vs write-back, stampede.
Why this, here: The biggest lever in the read path. Know the four patterns and when each wins.
- 6Skill
API contract design
Resource modelling, idempotency, pagination, error semantics.
Why this, here: Every design ends with "walk me through the API". Be ready with idempotency + pagination + error shapes.