How to use the simulator
Set up a quiet 50 minutes (45 for the round plus 5 to diff). Have a whiteboard, paper, or Excalidraw open. When the timer starts, work through the phases at the suggested pace — don't get stuck on phase 02 trying to do exact math; back-of-envelope is fine. When the timer ends, open the reference and look for the gaps. The first two or three rounds will feel slow; this is normal. Most candidates internalise the phase rhythm within a week of practice.
A common pattern is to do one round every other day for two weeks before a loop. That's seven rounds — enough to surface the recurring gaps, not so many that you burn out. Pair it with the distributed-systems flashcards on the off days.
Why these seven phases
The structure mirrors what experienced interviewers grade against. Phases 01 (clarify) and 02 (capacity math) demonstrate that you scope problems before solving them — candidates who skip phase 01 are the candidates who solve the wrong problem. Phase 03 (API + schema) shows you can move from requirements to interface. Phase 04 (high-level architecture) is where most candidates spend too much time — keep it boxes-and-arrows. Phase 05 (deep dive) is where you separate from other candidates; it's the part the interviewer remembers, and the largest minute allocation in the round reflects that. Phase 06 (scaling and failure modes) shows you can think one order of magnitude ahead. Phase 07 (trade-offs and follow-ups) shows self-awareness about your design's seams.
Some companies allocate 50 minutes or 60 minutes; the proportions stay similar. If your loop runs longer, give yourself another two minutes per phase from clarify through deep dive, and three to scaling. The minute counts here are the ones we have seen work best at the 45-minute Google / Meta / Amazon shape.
Phase 01 — clarify in five minutes
This is the phase candidates most often shortchange. Five minutes feels long when the clock is ticking, but a round that drifts into a 400 QPS write path when the real requirement was 4M QPS spent the whole hour solving the wrong problem. Ask five to six questions — not twenty. The six that matter most:
- Read/write ratio. "Mostly reads" and "mostly writes" lead to very different designs. For a news feed, expect ~100:1 reads to writes; for a write-heavy logging pipeline, the inverse.
- Latency budget. "P99 under 200 ms" rules out cross-region synchronous calls. "Under 50 ms" rules out chained service hops. State the budget you're designing for in phase 01 and reference it in phase 05.
- Availability target. Three nines, four nines, five nines? "Available" without a number is a red flag. Five nines (5 minutes/year) drives a very different design than three nines (8 hours/year).
- Consistency model. Read-your-writes, monotonic-read, eventual, strict serialisable. The product team rarely specifies; you have to ask. For a chat app, eventual is fine; for a payment ledger, it isn't.
- What's a "hot key"? A viral post on a news feed, a celebrity user on a social graph, a popular product on an e-commerce SKU. Naming the hot key up front lets you design around it in phase 05.
- Geography. Single region, multi-region active-passive, active-active. Each step up in geography roughly doubles the design complexity. Don't pick multi-region if the prompt doesn't require it.
Phase 02 — capacity math on a napkin
Senior candidates lose points here in two ways: by skipping the math entirely, or by spending eight minutes calculating to four significant figures. Aim for one order of magnitude. The three numbers you almost always need:
- Peak QPS = daily traffic × 2 (peak factor) ÷ 86 400. A billion requests a day is roughly 23k average QPS, 50k peak. State the multiplier you used.
- Storage = rows × bytes per row × replication factor × growth horizon. A billion rows at 1 KB each, replicated 3×, doubling annually, is 3 TB now and 6 TB in a year.
- Bandwidth = QPS × payload size. 50k peak QPS × 4 KB request = 200 MB/s = 1.6 Gbps. One commodity NIC. Multiply by 3 if you're fanning out to replicas synchronously.
Memorise the powers of two and the seconds in a day. 2^10 ≈ 10^3, 2^20 ≈ 10^6, 2^30 ≈ 10^9, 2^40 ≈ 10^12. 86,400 seconds/day; ~30M seconds/year. The printable cheat sheets include a one-page version of these numbers.
Phase 05 — picking the deep dive
Twelve minutes is the longest single section. The candidates who do well in this section nominate the deep dive — they point at the load-bearing component and say "the rest depends on this; let me go deep here". The candidates who do badly wait for the interviewer to ask. By then, the interviewer has lost some confidence.
How to pick: the load-bearing component is usually the hot read path (for read-heavy systems), the write fan-out (for systems with high write multiplication, like notifications or feed-on-write), the matching or ranking algorithm (for systems where the algorithm is the value), or the failure-recovery flow (for systems where availability is the headline requirement). One per round. Defend the pick: "of these four components, this one is where the design lives or dies because X."
Common mistakes that cost senior rounds
Boxes-and-arrows for forty-five minutes
Drawing client → load balancer → app → cache → database for the full round is the most common L4-grade answer at an L5 interview. The interviewer wants you to pick something in that diagram and go deep on it. If you don't nominate the deep dive, you have implicitly answered "everything is equally important" — which is never true.
Naming patterns without owning the cost
"We use consistent hashing" is a statement. "We use consistent hashing because it bounds key movement to K/N keys when a node joins or leaves, at the cost of an extra hop on miss" is an owned trade-off. Senior rounds grade the second; the first reads as memorised. The same applies to CAP, idempotency, sagas, and CRDTs — each pattern is a knob; name what it costs.
Refusing to commit
Walking through three options without picking one is a senior anti-pattern. Pick, state the trade-off you accepted, defend it. The interviewer will push back, and you will refine — but the design has to start somewhere. Indecision under pressure is a leadership signal.
No failure-mode discussion
Senior rounds expect at least one substantive answer to "what fails first?". Hot keys, slow downstream services, region outages, queue backpressure, runaway clients — pick one and walk through symptom, detection, blast radius, recovery. If you've run anything in production, this is the phase where that shows.
Ignoring the clock
A round that ends mid-phase-04 has effectively skipped phases 05–07 — the phases the interviewer cares most about. Pace yourself. The phase clock at the top of this simulator exists for that reason. If you're behind, cut detail from earlier phases; do not skip later ones.
After the round
Open the reference; spend five minutes diffing your work against it. If your high-level architecture was off, work through the playbook walkthrough. If you ran out of time before deep dive, the next round practise that specific transition. Track the recurring gaps over five to ten rounds — they're almost always the same two or three areas (write fan-out, hot-key handling, idempotency are the usual suspects).
Walk back to the system-design study path if a specific topic keeps tripping you up, and to the fourteen-entry playbook for the full reference solutions.
Frequently asked questions
How many rounds should I do before an interview loop?
Five to ten timed rounds in the two weeks before the loop. Less than five and the pacing hasn't internalised. More than ten and you start memorising specific prompts rather than the general structure. Quality over quantity — diff each round against the reference, write down two gaps, fix them before the next round.
Should I use a whiteboard, paper, or a digital tool?
Practise on what your interviewer will use. Most virtual loops in 2025 use Excalidraw, Whimsical, or Miro; some still use a Google Doc with ASCII boxes. In-person loops are still mostly whiteboards. Pick your tool a week in advance and practise on it — fumbling the tool in the round costs minutes you can't get back.
What if the interviewer asks a follow-up I can't answer?
Say so. "I don't know off the top of my head — here's how I'd think about it" is a strong senior answer. "Let me reason through it: if X then Y, so the answer is probably Z" demonstrates the same reasoning the interviewer wants. The worst answer is to bluff a confident wrong answer; the interviewer will dig and you will lose ground.
How much should I draw vs. talk?
Draw the high-level architecture (phase 04) and the deep dive (phase 05). Everything else — clarify, capacity, API sketch, scaling, trade-offs — can be talked through, with key numbers written down. Drawing for the sake of drawing eats your minute budget.
Are these prompts good for L6 / staff-level prep too?
Yes. The prompts are the same at L5, L6, and staff. The grading bar is different — at L6, expect to be pushed harder in phases 05 and 06 (deep dive and scaling), and to be asked to defend more controversial trade-offs in phase 07. The structure of the round, and the prompts, do not change.