Problem Description
Design a parking lot management system, encompassing both software and core components, that supports multiple entry and exit gates, various spot types, ticketing, and payment processing.
Functional Requirements
- Vehicles enter through an entry gate and receive a ticket.
- Vehicles must park in an appropriate available spot (e.g., compact, large, EV, handicap).
- Vehicles exit via an exit gate and pay a fee calculated based on the duration parked, potentially adjusted by vehicle or spot type.
- The system must:
- Track parking spot occupancy and availability in near real-time.
- Support parking lots with multiple floors or zones.
- Handle scenarios such as lost tickets and payment failures gracefully.
Non-Functional Requirements
- Ensure correctness under concurrent arrivals and departures.
- Maintain high availability for all gate operations, allowing ticket issuance and exits even during partial system outages.
- Achieve low latency at gates to prevent long queues.
- Provide auditable records for all payments and occupancy changes.
Deliverables
Candidates are expected to provide:
- A high-level architectural overview.
- The core data model.
- Key APIs.
- Main system flows (e.g., vehicle entry, parking, exit, payment).
- An approach to concurrency and consistency.
- Strategies for failure handling.
AI interview prep
Core dilemma
Balancing near real-time, consistent state management (spot availability) across distributed gates with high availability and low latency requirements, while ensuring transactional integrity for payments and auditability.
3 tradeoffs and 3 stress tests locked
Interview prep
Unlock the interviewer X-Ray rubric, tradeoff matrix, stress tests, clarifying questions, and key concepts.
Problem Description
Design a parking lot management system, encompassing both software and core components, that supports multiple entry and exit gates, various spot types, ticketing, and payment processing.
Functional Requirements
- Vehicles enter through an entry gate and receive a ticket.
- Vehicles must park in an appropriate available spot (e.g., compact, large, EV, handicap).
- Vehicles exit via an exit gate and pay a fee calculated based on the duration parked, potentially adjusted by vehicle or spot type.
- The system must:
- Track parking spot occupancy and availability in near real-time.
- Support parking lots with multiple floors or zones.
- Handle scenarios such as lost tickets and payment failures gracefully.
Non-Functional Requirements
- Ensure correctness under concurrent arrivals and departures.
- Maintain high availability for all gate operations, allowing ticket issuance and exits even during partial system outages.
- Achieve low latency at gates to prevent long queues.
- Provide auditable records for all payments and occupancy changes.
Deliverables
Candidates are expected to provide:
- A high-level architectural overview.
- The core data model.
- Key APIs.
- Main system flows (e.g., vehicle entry, parking, exit, payment).
- An approach to concurrency and consistency.
- Strategies for failure handling.