Medium Timed Practice
Run a 40-minute self-guided auction design session. Define bid acceptance, deadline rules, winner selection, and payment recovery.
Run a 40-minute self-guided auction design session. Define bid acceptance, deadline rules, winner selection, and payment recovery.
This is a timed, self-guided mock interview. No live interviewer, automated evaluator, or AI feedback is connected. Use the on-page timer or your own timer, speak your decisions aloud, and save your draft before reviewing the model.
Scenario and constraints
- 100,000 active auctions; one hot auction gets 5,000 bid attempts/s.
- Server-defined close time; no anti-sniping in the baseline.
- Live high-bid display may lag one second.
- One authoritative winner; payment can time out.
Your deliverables
- Minutes 0–7: state deadline, reserve-price, and tie rules.
- Minutes 7–17: model bids and atomically serialize bid/close decisions.
- Minutes 17–30: draw live display and a durable winner workflow.
- Minutes 30–40: recover a missed close job and an unknown payment.
Reason about this sequence
Figure — Auction open at version 20 → Final bid and close race → Owner applies deadline rule → One close outcome commits → Payment proceeds separately
For every step, annotate what is durable, what the caller knows, and which identity survives a retry. Identify the point where two concurrent actors could disagree. Do not assume a timeout means failure or a cache value grants ownership.
Interviewer follow-ups
- At minute 17, a final bid races the close worker.
- At minute 28, the scheduler misses the deadline.
- At minute 35, a delayed payment event arrives twice.
Answer each follow-up using the same design first. If it breaks, change the smallest boundary that repairs the invariant and explain the new cost. Show whether the change adds latency, storage, coordination, or operational work.
Staged hints
Hint 1 — reveal
Answer: Hint 1 — Bid and close must meet at the same decision boundary. A browser clock or event arrival order at the UI cannot select the winner.
Hint 2 — reveal
Answer: Hint 2 — Store auction state, deadline, current high bid, and version at the authoritative owner. Accept a bid only if the auction is open, the amount exceeds the current qualifying bid, and the deadline rule holds. The close transition uses the same authority so a concurrent bid and close have one well-defined order.
Hint 3 — reveal
Answer: Hint 3 — A scheduler crashes just before closing. The auction must not remain open forever. Request-time deadline checks reject late bids, while a recovery scan finds overdue open auctions and runs idempotent closure. If the winning payment fails, use a stated business policy such as retry, cancellation, or offering to another bidder; do not silently invent a new winner.
Evidence-based self-review
- The bid deadline uses an enforceable authoritative rule.
- Close retries cannot produce multiple winners.
- Live display is separated from acceptance authority.
- Payment and missed scheduling have explicit repair paths.
Score each item 0 if absent, 1 if named without an enforceable mechanism, or 2 if the mechanism and a failure are explained. Record evidence from your own diagram beside the score. Then choose one weak decision, revise it, and repeat the relevant follow-up. This rubric is a learning tool, not a hiring forecast.
Can a bid be accepted solely because the client timestamp is before the displayed close time?
Your design draft
Clarify assumptions, explain your approach, and test the difficult cases. Save your draft, then compare it with the study notes.
Self-review checklist
Self-guided practice. Automated AI feedback and code execution are not connected.