Mock round 2 · production trade-offs
Forty-five minutes: reason about a reliable service
Timebox: 45 minutes — 12 minutes explain, 12 minutes debug, 15 minutes design, 6 minutes follow-ups. Use a timer and leave notes closed.
Prompts
- Explain: Describe a transaction boundary for creating a project and its initial tasks. Explain what persistence context behavior you rely on, what failure you must contain, and what you would not put in the transaction.
- Debug: A test passes alone but fails in the suite after a migration. Walk through the evidence that distinguishes leaked state, an incorrect test slice, a missing rollback, and a mapping mismatch.
- Design / trade-off: Evolve TaskFlow so only owners may change tasks, admins may audit all changes, and clients receive stable error responses. Place the security, persistence, logging, and API decisions; then defend how you balance detail against sensitive-data exposure.
Follow-up: Would you choose optimistic locking, a wider transaction, or a retry for competing edits? State the condition that changes your answer.
Follow-up: What would make you move from relational storage to a document model, and what query would make you hesitate?
Follow-up: Which two automated checks give you the most confidence that authorization did not regress?
Stop point
End the timer before opening the framework. Score yourself first: one point for a clear boundary, one for a trade-off, and one for concrete verification on each prompt.
Completion evidence
Keep the timed outline and revise it once using the rubric. Mark Interview ready only after a second attempt improves a specific weak area and every design decision names an observable verification step.
Current status: Weak
Answer frameworks and rubric
Frame the answer as requirement → boundary → failure mode → trade-off → verification. State assumptions aloud; that keeps a production answer precise without pretending there is one universal setting.
- Correctness: transaction, authorization, and persistence claims match their failure modes.
- Trade-offs: chooses based on load, consistency, risk, and the product requirement.
- Verification: names a focused test, log, metric, or audit record for the decision.
- Clarity: separates assumptions, decisions, and follow-up questions under time pressure.