← Back to Directory

Uber interview notes, page 35 of 61

Large Enterprises

Most of these Uber write-ups come from Software Engineers (407), then Data Scientists (78) and Machine Learning Engineers (65). The most reported rounds are the technical phone screen (387), the system design round (95), the product sense round (46) and the onsite coding round (23).

609 interview notes · updated Aug 2026

Uber·Machine Learning Engineer·Technical Phone Screen

Jun 2026
ML engineer screen at Uber, just one question about cross entropy. Short and a bit anticlimactic.
  • Can you explain cross entropy and how it works?

“Blanked a little on the formal derivation and ended up explaining it more intuitively, like framing it as how surprised your model is by the true label.”

View Post

Uber·Software Engineer·Technical Phone Screen

Jun 2026
Uber coding interview with a tree rerooting problem that looks manageable until you actually try to implement it cleanly under pressure. The key gotcha is recursion depth on large inputs, which I did not see coming.
  • Given a tree of n nodes represented as directed edges, for each possible root node compute the minimum number of edge reversals required so that every other node is reachable from that root. Return an array of answers, one per node.

“I got the basic idea pretty quick: root the tree at node 0, count reversals needed, then reroot by adjusting the count as you move the root along each edge.”

View Post

Uber·Software Engineer·Technical Phone Screen

Jun 2026
Uber SWE interview with a classic dynamic programming problem. Nothing too surprising but you need to actually know your interval DP or you'll flounder.
  • You're playing a number guessing game where a number is chosen from 1 to n. Each wrong guess costs you the amount you guessed, and you're told whether the answer is higher or lower. What's the minimum amount of money you need to guarantee a win no matter what number was picked?

“This is interval DP once you see it, but if you don't immediately recognize the pattern you can waste a lot of time trying to think about it as a greedy problem.”

View Post

Uber·Software Engineer·Online Assessment (OA)

Jun 2026
Uber SWE online assessment with a single algorithmic problem involving energy and time tradeoffs across elevator and stair segments. The problem looks approachable until you realize the feasibility constraint makes it non-trivial and you can't just brute force it cleanly.
  • Given n total floors, you take an elevator for m floors (gaining e1 energy and spending t1 time per floor) then climb the remaining floors by stairs (each stair floor costs e2 energy and takes ceil(c / current_energy) time). Find the integer split m that minimizes the absolute difference between total elevator time and total stair time, subject to having enough energy to complete the stairs.

“The energy feasibility check is what makes this annoying.”

View Post

Uber·Software Engineer·Technical Phone Screen

Jun 2026
Uber SWE interview with a geometry/sweep-line problem that looked deceptively clean on the surface. The algorithm constraints made it interesting but I definitely fumbled some of the edge case discussion.
  • You're given an array of lamps, each defined by a center position and radius, illuminating a closed interval on the number line. The brightness at any point is how many intervals cover it. Return the smallest coordinate with maximum brightness, using an O(n log n) algorithm without iterating over every point. Explain your approach, how you handle ties, and how you'd deal with large coordinates, negatives, and floating-point radii.

“My first instinct was a difference array which obviously breaks down with coordinates up to 1e9.”

View Post

Uber·Data Scientist·Technical Phone Screen

Jun 2026
Uber DS interview focused on a production rollout question that layered on top of an earlier experiment design problem. Pretty technical and end-to-end, covering everything from bucket sizing to launch decisions. Not a quick conceptual chat.
  • You've designed an experiment. Now walk through how you'd actually launch it in production: how would you structure the treatment buckets (e.g. different ETA multipliers) and decide on bucket sizes?
  • What guardrails would you put in place for the rollout, and at what point would you trigger an automatic rollback?
  • How would you interpret the experiment results and translate them into a launch decision? Think about confidence intervals, multiple comparisons, practical vs statistical significance, and sources of noise like interference or novelty effects.

“This part felt more like a product-eng hybrid than pure DS.”

View Post

Uber·Software Engineer·Technical Phone Screen

Jun 2026
Uber SWE coding round, one problem the whole session. Grid-based chain collection thing with magnetic plates. Harder than it looked at first glance.
  • You have n plates on a 2D grid, each with coordinates (x, y) and a magnetic power d. Picking up a plate instantly collects all other plates within d units along the same row or column (chain reaction applies recursively). You can pick one plate per second. Write a function getMinTime(n, d, x, y) that returns the minimum number of seconds to collect all plates. n can be up to 1e5, coordinates and d up to 1e9.

“I stared at the example for a solid minute before I even started talking.”

View Post

Uber·Software Engineer·Technical Phone Screen

Jun 2026
Uber SWE interview with a scheduling/simulation problem that looked straightforward until the complexity requirement hit. The two-heap constraint was the whole point and I almost missed it.
  • You have a fixed pool of servers and a stream of requests each with an arrival time and a duration. Assign each request to the lowest-id available server, drop it if none are free, and return the total number of successfully assigned requests. Your solution must run in O((R + S) log S) time using two heaps.

“My first instinct was just to scan all servers on each request, which obviously blows up.”

View Post

Uber·Software Engineer·Technical Phone Screen

Jun 2026
Uber SWE coding round with a graph/BFS problem. Pretty standard stuff but the implementation details can trip you up if you're not careful.
  • Given a binary grid with exactly two islands, find the minimum number of water cells you'd need to flip to connect the two islands.

“The core idea is BFS in two phases: first find one island completely, then do a multi-source BFS expanding outward until you hit the second island.”

View Post

Uber·Software Engineer·Technical Phone Screen

Jun 2026
Uber coding round for a Software Engineer role. One problem, tree-based, and it was a variant of a well-known palindrome path problem. Harder than it looks if you haven't seen bitmask tricks before.
  • Given a tree of n nodes where each edge has a single lowercase letter label, find the number of unordered node pairs (u, v) such that the letters along the path between them can be rearranged to form a palindrome.

“The palindrome condition is the easy part to state: at most one character with an odd frequency.”

View Post