Design a ticket or hotel reservation system
Company: Meta
Role: Software Engineer
Category: System Design
Difficulty: medium
Interview Round: Onsite
Design a reservation system (Ticketmaster-style event seats or hotel rooms).
Requirements:
- Users search availability by date/event.
- Users select specific inventory (seat/room) and place a temporary hold.
- Users checkout and pay; inventory should not be oversold.
- Holds expire automatically.
- Must handle high contention (popular events).
Out of scope: full payments risk, complex pricing rules.
Quick Answer: This System Design question evaluates understanding of distributed systems, concurrency control, inventory consistency, temporary reservation/hold mechanics, expiration semantics, and scalability under high contention.