Uber Interview Prep

Uber’s interview loop for SDE-2+ emphasizes distributed systems heavily. The system design round expects depth on real-time systems, geo-indexing, and event-driven architectures. Uber open-sourced many of their internal tools (Cadence/Temporal, Ringpop, H3) — knowing these shows domain awareness.


HLD Problems Asked at Uber

# Problem Difficulty Link
1 Uber / Lyft (Ride Sharing) Advanced Read →
2 Zomato / Uber Eats (Food Delivery) Advanced Read →
3 Distributed Job Scheduler Advanced Read →
4 Rate Limiter Beginner Read →
5 Notification System Intermediate Read →

DSA Problems Frequently Asked at Uber

# Problem Pattern Link
1 Merge Intervals Sorting + Greedy LeetCode →
2 Sliding Window Maximum Monotonic Deque LeetCode →
3 Group Anagrams HashMap + Sorting LeetCode →
4 LRU Cache HashMap + Doubly Linked List LeetCode →
5 Word Break DP + Trie LeetCode →
6 Task Scheduler Greedy / Heap LeetCode →
7 Cheapest Flights Within K Stops BFS / Bellman-Ford LeetCode →
8 Longest Consecutive Sequence HashSet LeetCode →
9 Find Median from Data Stream Two Heaps LeetCode →
10 Graph Valid Tree Union-Find / DFS LeetCode →

Tips for Uber Interviews

  1. Know their open-source stack. Mentioning Cadence/Temporal for workflow orchestration, H3 for geo-indexing, or Ringpop for consistent hashing shows you understand Uber’s domain.
  2. Real-time is expected. Uber builds real-time systems (matching, tracking, pricing). Show comfort with WebSockets, event streaming, and sub-second latency requirements.
  3. Geo-spatial thinking matters. If you’re designing anything location-related, discuss geohash, H3 hexagons, or Redis Geo. Don’t just say “store lat/lng in a database.”
  4. Distributed systems depth. Uber expects senior candidates to discuss distributed locking, exactly-once delivery, saga patterns, and failure handling without prompting.

Other Company Prep

💬 Comments