Uber: Requirements & High-Level Design
Design a ride-hailing service like Uber for a system design interview — positions in memory sharded by map cell, batched matching on road ETAs with offers as transactions, a trip state machine with an outbox, a stream per app, and an estimate from Uber's own figures: requirements, estimates, data model, API and high-level design.