System design

~45 min0/6

The most structured round. Driving the conversation top-to-bottom IS the grade.

~42 min · run it top to bottom

  1. 1. Functional requirements5 min
    5:00

    Clarify scope. Pin the 1–3 core use cases out loud and explicitly cut the rest for now.

    Interviewer grades: Do you scope it, or try to boil the ocean?

    Say it in your own words — but hit these: core use case · out of scope · the main flow

    checking microphone…

  2. 2. Non-functional + scale5 min
    5:00

    Scale numbers, latency target, consistency vs availability. A back-of-envelope estimate.

    Interviewer grades: Do you quantify, and do you name the consistency model?

  3. 3. Core entities + API7 min
    7:00

    The data model and the key endpoints (resource URLs, the transition endpoint).

    Interviewer grades: A clean data model and a resource-based API.

  4. 4. High-level design8 min
    8:00

    Client → API → service → Postgres + cache + queue + workers. Draw it on the canvas.

    Interviewer grades: One coherent end-to-end path, components earning their place.

  5. 5. Deep dive12 min
    12:00

    The 1–2 hard parts: the bottleneck, the failure modes, how it scales 10×.

    Interviewer grades: Depth on the hard part — this is where the round is won or lost.

  6. 6. Tradeoffs + monitoring5 min
    5:00

    Name the tradeoff for each choice and what you'd monitor/alert on.

    Interviewer grades: Tradeoff reasoning and operational maturity.

    Say it in your own words — but hit these: source of truth · idempotent · outbox · async workers

    checking microphone…