Case study
Uber
Mobility & marketplace
Overview
Uber’s core loop—request → match → trip → pay—runs in cities with different regulations, vehicle types, and supply patterns. The interesting systems problems blend maps, pricing, and real-time streaming.
Students can relate trip state to finite state machines and geospatial indexes (e.g. finding nearby drivers).
Technical problems at scale
Geospatial matching at scale
Driver supply moves continuously; matching uses spatial indexes, ETA models, and business rules (priority, promotions). Surge pricing balances supply and demand.
Trip lifecycle and safety
GPS streams, route polyline updates, and SOS flows require reliable mobile connectivity and backend stream processing.
Payments and multi-party payouts
Splitting fares between platform, driver, and incentives mirrors marketplace ledgers and tax reporting requirements.
Systems & patterns you will hear about
- Geospatial DBs / grids
- Streaming (Kafka, Flink)
- Dynamic pricing
- Mobile telemetry
Case-study angles
Compare pickup ETA vs trip duration prediction—which has noisier inputs and why?
List failure modes if the pricing service is slow but matching is fast.