Code Room
System designHard
Question
Design the order placement flow for a high-demand flash-sale system (think limited-stock ticket/sneaker drops): inventory is finite and contended, and an order must reserve stock, then collect payment, then confirm — with payment happening asynchronously (could take seconds to minutes). Reserved-but-unpaid stock must auto-release after a timeout so it isn't lost. Peak ~20,000 reservation attempts/sec on a few thousand SKUs. Describe how you prevent overselling and how you coordinate reserve → pay → confirm consistently.
What a strong answer looks like
Clarify scale and constraints first. Propose a clean component breakdown, then go deep on the hard parts — data model, bottlenecks, consistency, failure modes — and name the trade-offs you are making.
Learn the concepts
Loading whiteboard…
Run or narrate your approach, then ask the coach.