How the interviewer opens it
“Design a vacation rental marketplace. Hosts publish homes, and travelers search for a place and reserve a stay.”
The prompt is vague on purpose. The first minutes are for you. Reduce the prompt to the core features and agree on the numbers before you draw.
What to clarify first
- Scale
- Read and write mix
- Search behavior
- Calendar rules
- Host changes
- Reservation flow
- Latency
- Consistency and availability
- Durability
- Scope limits
The interviewer has the answers. In a SysRound round, Alex gives these answers, as a real interviewer does.
Scope of a strong answer
Core requirements
- Publish homes with nightly prices and calendar controls
- Search homes by location, dates, and guest count
- Reserve a stay without overlap
- Cancel a reservation and release its dates
Usually out of scope
- Reviews and messages
- Third-party calendar imports
- Tax rules and complex refund policies
- Hotels with multiple rooms
- Personal search rank
What interviewers ask about
- Dates and calendar changes
- Guests reserve date ranges, not single seats. Holds, host blocks, and cancellations change the same calendar while requests run concurrently.
- Geographic search and date results
- A nearby home may lack one required night. Search must combine map bounds, date availability, and prices without checking every home.
- Reservation outcomes
- Payment responses can arrive after a hold expires or a traveler cancels. The service must resolve money and calendar state without restoring lost dates.
Common mistakes
- Treats each date check as independent and permits partial reservations.
- Trusts search availability as the final reservation authority.
- Ignores host blocks when it protects against reservation overlap.
- Allows a delayed expiry task or payment callback to alter another reservation.
- Returns a fixed set of nearby homes before date filters and misses valid results.
- Adds database shards before it estimates the modest rate of reservation writes.
The bar by level
- Senior (L5/E5)
- Covers host edits, hold expiry, price changes, and idempotency. Resolves late payments and cancellation races. Explains search projections, date filters, and useful result pages.
- Staff (L6+/E6+)
- Quantifies search work and data growth. Defines calendar ownership during failover. Explains projection repair, durable payment recovery, and safe partition boundaries without premature complexity.