System design
Uber system design leans heavily on geo-partitioning, real-time dispatch, and consistency-under-contention problems (e.g., surge pricing, marketplace matching).
TL;DR
Uber's loop is 4–5 rounds: two coding, one system design, one behavioral, and one 'design and implement' round where coding and design are combined. L5+ adds an architecture round.
These patterns show up most often in publicly-reported Uber loops. Master the first three before you move on.
Breadth-first for shortest unweighted paths; depth-first for exhaustive traversal.
A data structure that returns the min or max in O(log n) per operation.
Sort events by time, sweep a line, maintain an active set for overlap questions.
Break an overlapping-subproblem problem into a recurrence and cache results.
Linear ordering of a DAG consistent with its dependencies.
Uber system design leans heavily on geo-partitioning, real-time dispatch, and consistency-under-contention problems (e.g., surge pricing, marketplace matching).
Uber's cultural values rotate — stay current. Stories about shipping under ambiguity and raising the bar on engineering rigor reliably land.
Expect one round that mixes coding and design into a single 60-minute session. Budget time explicitly.
Start with the diagnostic. We'll weight your loop toward the 5 patterns above.