API & requirements cleanup
If your rounds land on "we never got to the interesting parts", the fix is here. Faster requirements, tighter APIs, idempotent writes.
For: Engineers who run out of time before reaching the architecture
After this path
Frame a prompt, bound its scope, and draft a defensible API contract in under 10 minutes.
- 1Skill
Requirements & scope framing
The first five minutes decide the next forty. Candidates who skip scoping design the wrong system brilliantly — and still fail. The ones who nail it look senior before they've drawn a single box.
Why this, here: Turn vague prompts into a designable problem in 5 minutes.
- 2Skill
Capacity estimation (back-of-envelope)
Every downstream decision — cache size, shard count, replica count — collapses onto one question: what are the numbers? Candidates who skip this are designing vibes, not systems.
Why this, here: Defensible numbers unlock every later decision.
Checkpoint
Time-box drill: set a 5-minute timer and scope + estimate a new prompt (“design a coupon service”). Writing ends at the beep. If you didn’t reach numbers, the front-half is still too slow.
- 3Skill
API contract design
The API is the contract every client writes code against. Vague endpoints here metastasize into ambiguity everywhere else in the design. Interviewers use API design to separate candidates who have shipped from candidates who have read blog posts.
Why this, here: Resource modelling, pagination, error shapes.
- 4Skill
idempotency
Every retry is a test of your idempotency design. Networks drop, clients retry, at-least-once queues redeliver — if your write path can't absorb a duplicate without double-charging or double-sending, you'll discover it at 2 AM on a Sunday.
Why this, here: Non-negotiable for payments, order creation, anything retry-safe.
- 5Skill
Data model design
"We'll put it in Postgres" is not a data model. The data model is entities, keys, relationships, cardinalities, and the access patterns each one has to serve — and it locks in every trade-off you will chase for the rest of the design.
Why this, here: Entity model before storage. Seniors don't skip this.