Skip to main content
Doctrine

The six-phase framework

Every system-design interview has the same skeleton. Once you internalize the six phases, the surface question becomes irrelevant — you drive the interview the same way whether it's a URL shortener or an ad-serving platform. Master the process; the specific problem then becomes a fill-in-the-blank.

1

Requirements

What are we building — and what are we not?

Nail this and you've already de-risked 40% of the interview. Skip it and everything downstream is guesswork.

2

Core entities

The nouns of the system. Draw them.

Two or three entities, their relationships, and one primary key each. That's it.

3

API

The contract with the caller.

Three to five endpoints — enough to prove the entities work end-to-end.

4

High-level design

The picture of the system at rest.

Client → LB → services → storage. Then evolve as the interviewer probes scale.

5

Deep dive

Pick one component and go three levels down.

The interviewer is silently picking which sub-problem to probe. Read the room and go there before they ask.

6

NFRs & failure

Availability, latency, failure scenarios.

The last 10 minutes. Name three failure scenarios and how you'd mitigate each.

Practice the framework on the flagship problem

Six phases, six weak-vs-strong answer pairs. Read the goal, guess your own answer, then compare against ours.

Interactive walkthrough · flagship: URL Shortener
1 / 6
1
Requirements

Name the read:write ratio, availability target, and one thing that's explicitly out of scope.

Example: URL Shortener

Time budgets by interview length

These are recommended budgets, not laws. If the interviewer keeps pushing on the deep dive, spend more time there — the last 10 minutes for NFRs can be brief but never skipped.

InterviewRequirementsCoreAPIHigh-levelDeepNFRs
30 min3m2m3m7m10m5m
45 min4m3m4m10m15m9m
60 min5m5m5m15m20m10m

Take the next step

The URL Shortener page runs the entire framework live at four different scales. Watch how the same six phases produce four different systems.