Uber L5A Interview Prep ​
Read my intro — background, experience, and what I've worked on.
Role Context ​
L5A = Senior Software Engineer at Uber (team-level impact). Maps to Google L5, Meta E5, Amazon SDE II→III. Typical project scope: 2-4 engineers across 2-3 teams, spanning 1-3 quarters. Uber bisected L5 in 2022 — L5A is "Senior," L5B is "Staff-adjacent."
This prep is oriented toward the Backend track (primary). A complete Frontend alternate track is preserved.
Interview Loop — Backend (5 rounds) ​
| # | Round | Focus | Time |
|---|---|---|---|
| 1 | Elimination / BPS Coding | 1 LC Medium. Gatekeeps the rest of the loop. | 60 min |
| 2 | Coding — DSA | 2-3 DSA problems (DP, graph, arrays, strings). | 60 min |
| 3 | Coding — Depth / LLD | Real working code, 2-3 key methods of an OO design. Evaluated on SRP, naming, extensibility. | 60 min |
| 4 | System Design (HLD) | Distributed backend design — ride matching, ETA, surge, notifications, payments, logging. | 60 min |
| 5 | Hiring Manager | 45 min project deep dive + 30 min behavioral. Bar Raiser folds in. | 75 min |
Core Notes ​
| File | Topic |
|---|---|
| 01-interview-loop | Round-by-round breakdown, what interviewers test, red flags |
| 05-backend-fundamentals | Databases, concurrency, caching, messaging, networking, distributed systems primitives |
| 06-behavioral-questions | STAR bank mapped to Uber values |
DSA Problems (15) ​
Each problem is a self-contained breakdown following the HelloInterview-style template (Pattern Recognition → Approach → Walkthrough → Implementation in C++/TS → Complexity → Edge Cases → Related Problems).
| Problem | Pattern | LC |
|---|---|---|
| Alien Dictionary | Topological sort | 269 |
| Bus Routes | Multi-source BFS | 815 |
| LRU Cache | HashMap + Doubly LL | 146 |
| Number of Islands | Grid BFS/DFS | 200 |
| Longest Increasing Path Matrix | DP + DFS memo | 329 |
| Trapping Rain Water | Two pointer / stack | 42 |
| Largest Plus Sign | DP | 764 |
| Meeting Rooms II | Heap / sweep | 253 |
| Rotting Oranges | Multi-source BFS | 994 |
| Min Time Objects Meet | Binary search + intervals | — |
| Min Obstacle Removal | 0-1 Dijkstra | 2290 |
| Min Cost Grid Traversal | Dijkstra | — |
| Coin Change | DP | 322 |
| Partition Equal Subset Sum | DP | 416 |
| Min Times Append String | DP / two pointer | — |
LLD Problems (12) ​
Each is a full HelloInterview-style LLD breakdown with Java/C+++TS implementations, design patterns, thread-safety, and extensibility scenarios.
| Problem | Patterns | Notes |
|---|---|---|
| Hit Counter | Sliding window, atomics | Single + multi-threaded |
| Meeting Room Reservation | TreeMap intervals | Frequent at Uber |
| In-memory File System | Composite, RWLock | LC 588 |
| Leaderboard | ConcurrentSkipListSet | Top-K |
| Train Platform Management | Dual index | |
| Movie Ticket Booking | State, Observer, locking | |
| Parking Lot | Strategy, Factory, CAS | Frequent |
| Restaurant Food Ordering | Composable filters | |
| Text Editor (Undo/Redo) | Command pattern | |
| Car Rental | Inventory mgmt | |
| Cart System | Strategy, Observer | |
| In-memory Twitter | Heap merge | LC 355 |
System Design — HLD (7) ​
| Problem | Focus |
|---|---|
| Ride Matching | H3 geo-indexing, dispatch — Uber's signature |
| Surge Pricing | Real-time supply/demand streaming |
| ETA Service | Map data, ML prediction |
| Driver Location Streaming | WebSocket fan-out, Connection Service |
| Notification Service | Multi-channel, fan-out, retries |
| Payments / Wallet | Idempotency, ledger, sagas |
| Distributed Logging | Fan-in aggregation at scale |
Frontend Track (alternate) ​
| File | Focus |
|---|---|
| 07-frontend-machine-coding-problems | Grid Light Box, Progress Bar, Rate Limiter, Memoize async |
| 08-frontend-system-design | Autocomplete, Collaborative Calendar, Widget Builder |
| 09-frontend-js-react-fundamentals | Event loop, polyfills, React rendering |
Revision Checklist — Backend ​
Before Elimination Round (R1) ​
- [ ] Practice LC Mediums to 25-min target — this round filters 40-50%
- [ ] Alien Dictionary, Bus Routes, LRU Cache, Longest Increasing Path, Number of Islands
Before LLD Round (R3) ​
- [ ] Code Parking Lot, Hit Counter, Meeting Rooms, LRU Cache end-to-end
- [ ] Know Strategy, Observer, Factory, Singleton, State patterns cold
- [ ] Be ready for thread-safety follow-ups
Before Backend System Design (R4) ​
- [ ] Master ride matching with geo-indexing (H3), surge pricing, ETA
- [ ] Know back-of-envelope math — QPS, storage, bandwidth
- [ ] Low-latency + high-throughput patterns
Before Hiring Manager Round (R5) ​
- [ ] Pick ONE project (1-3 quarter scope) and memorize: users, RPS, latency, tradeoffs
- [ ] Prepare 6-8 STAR stories mapped to Uber values
Cross-References ​
| Topic | Where |
|---|---|
| Design Patterns (Strategy, Observer, Factory) | Paytm 02 |
| SOLID principles | Glomopay 03 |
| HLD fundamentals (CAP, sharding, caching) | Paytm 04 |
| C++ interview reference | C++ Guide |
| Amazon LP behavioral (overlapping themes) | Amazon LP Part 1 |