Recently completed the Uber Software Engineer Online Assessment. One sentence summary: the problems themselves are not extremely difficult, but the time pressure is very real. If you code a bit slower or spend extra time debugging, it's easy to run out of time.
Here’s the standard OA setup:
- Platform: HackerRank
- Number of Questions: 2
- Time: 90 minutes (finished ~25 minutes early)
Below are some high-frequency Uber OA questions to help you prepare more effectively:
1. Closest Driver Matching
Given a passenger’s location and multiple drivers on a 2D plane, find the K closest available drivers using either Manhattan or Euclidean distance.
- Return driver IDs sorted by distance
- If distances are equal, sort by ID
Key concepts: priority queue, sorting, distance calculation, handling large datasets efficiently.
2. Ride Scheduling
Given multiple ride requests (start time, end time, passenger count) and driver capacity constraints, determine if all rides can be assigned without overlapping schedules.
Follow-up: minimize the number of drivers needed.
Key concepts: interval scheduling, greedy algorithms, sweep line.
3. Dynamic Shortest Path
Given a road network graph where some edges dynamically change weight (traffic updates), compute shortest paths for multiple queries.
Key concepts: Dijkstra, graph preprocessing, dynamic updates.
4. Carpool Matching
Given ride requests with time windows and locations, match passengers into carpools while maximizing utilization and respecting constraints.
Key concepts: graph modeling, bipartite matching, greedy strategies.
5. Dynamic Pricing Simulation
Simulate a pricing function based on real-time supply and demand. Output final prices for each order while handling edge cases like zero demand or surge caps.
Key concepts: simulation, ratio-based adjustment, edge case handling.
Preparation Tips for Uber SWE OA
Time Management
Typically one medium and one harder problem. Aim to finish the first within 35–40 minutes to leave enough time for the second and testing.
High-Frequency Topics
- Graph algorithms (shortest path, matching)
- Greedy + sorting
- Heap / priority queue
- 2D distance computation
- Interval scheduling
Practical Tips
- Practice Uber-tagged questions on LeetCode
- Write clean code quickly (naming, structure, edge cases)
- Follow input/output format strictly (especially multi-line or JSON)
Need More Help?
If you're preparing for Uber OA and want detailed solutions, full working code, or more real questions from top companies like Google, Meta, Amazon, and Uber, feel free to reach out.
We provide professional support:
- OA assistance support (HackerRank, CodeSignal, etc.) — 100% test cases guaranteed
- Real-time interview guidance from experienced engineers
- End-to-end support from OA to offer negotiation
- Mock interviews, algorithm coaching, resume optimization
Feel free to message for a customized preparation plan based on your background and timeline.
Good luck with your OA — hope you land that Uber offer soon!
Top comments (0)