Design an intersection traffic-light system
Company: Amazon
Role: Software Engineer
Category: System Design
Difficulty: hard
Interview Round: Technical Screen
Design a traffic-light control system for a multi-road intersection. State explicit goals and assumptions (e.g., number of lanes, pedestrian/bike crossings, turn arrows, emergency vehicles, public transit priority, sensor availability). Define core components (controllers, sensors, actuators), data model, and APIs. Specify the state machine for signal phases, timing calculations (fixed-time vs. adaptive), coordination across approaches, and handling of peak/off-peak patterns. Explain strategies for safety (conflict avoidance, all-red intervals), concurrency, preemption/priority, failure detection and safe fallback modes, monitoring/observability, deployment, and scaling to a citywide network. Follow-ups: If given more time, what optimizations would you implement? How would you design comprehensive unit tests and simulations, including deterministic time control and edge cases?
Quick Answer: This question evaluates system design competency across real-time control and safety-critical logic, API and data modeling, sensor/actuator integration, and operational scalability for traffic-signal controllers.