INTERVIEW GUIDE
Uber Software Engineer Interview: Questions & Process
The interview process
Questions you're likely to get
Technical
- Given a set of points, find the k closest to the origin.
- Given meeting time intervals, find the minimum number of rooms required.
- Count the number of connected islands in a 2D grid.
- Merge a collection of overlapping intervals.
- Detect whether a course schedule with prerequisites can be completed.
- Design an LRU cache with O(1) get and put.
Role-specific
- Design a system that matches riders to nearby drivers in real time.
- How would you design surge pricing, and how do you keep it consistent under high load?
- How would you efficiently find all drivers within a 2km radius of a rider?
Behavioral
- Tell me about a time you owned a project end to end and shipped under pressure.
- Describe a time you had to make a decision with incomplete information.
- Tell me about a technical disagreement and how you resolved it.
- Describe the most challenging bug you've debugged. How did you find it?
Practice these problems live
Relevant LeetCode problems for the Uber Software Engineer loop. Start a live, AI-run coding interview on any of them — or open the problem on LeetCode.
How to answer (worked examples)
What Uber looks for
- Fast, correct medium-to-hard algorithm solving with optimal complexity
- Practical system design — spatial data, real-time updates, scaling under load
- Clear reasoning about tradeoffs, not just a single solution
- Ownership and bias to action on past projects
- Strong debugging instincts and comfort with ambiguity
- Red flag: a brute-force answer with no attempt to optimize, or hand-waving past scale in design
FAQ
How hard is the Uber SWE interview?
On the harder side. Coding rounds run medium-to-hard and you're expected to reach an optimal or near-optimal solution with clean code. The system design round is real even for some new-grad/early-career loops, so don't skip design prep.
What kinds of system design questions come up?
Often Uber-flavored: ride matching, surge pricing, location tracking, or notification systems. They want to see spatial indexing, sharding by geography, real-time data handling, and how you reason about bottlenecks.
Do new grads get a system design round?
Frequently yes, though it's weighted lighter than for senior roles. Even a basic, structured design that names tradeoffs and bottlenecks scores well — going in blind does not.
What languages can I use?
Use your strongest language. Uber's stack includes Go and Java heavily, but coding rounds are language-agnostic — they care about your problem solving and code quality.
How long is the process?
Typically a few weeks from screen to decision, depending on scheduling and team.
Uber's loop rewards speed and clear tradeoff reasoning — hard to fake if you've only read solutions. Practice the coding rounds and a ride-matching system design out loud with OfferLoop's realtime voice coach before the real thing.
Practice this interview out loud →Related
OfferLoop is an independent interview-practice tool and is not affiliated with, endorsed by, or sponsored by Uber. All company names and trademarks are the property of their respective owners.
Interview formats vary by team, level and year, and this guide is compiled from general knowledge of publicly discussed hiring processes — treat it as preparation material, not an official description of Uber's current process.