← Back to Directory

Uber interview notes, page 54 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·Data Scientist·Technical Phone Screen

Jun 2026
Case-style interview for a data scientist role at Uber, all three questions were marketplace and experimentation focused. No fluff, just dense product-analytics scenarios that assumed you already knew the basics and wanted to see how far you could push.
  • The company wants to add an in-app warning that tells drivers when a passenger's drop-off location is in a high-risk neighborhood. How would you design an experiment to evaluate this feature, and what metrics would you track across business, safety, marketplace, and fairness dimensions? How does running the test across multiple cities change your approach?
  • Why does ETA accuracy matter so much in a ride-hailing product? What metrics would you use to measure it, and what approaches would you take to diagnose and improve it?
  • Uber wants to notify drivers a week in advance about a promotion they can earn by being online in specific locations during specific time windows. What effects could this create, what's wrong with a simple user-level A/B test here, what issues come up with a switchback design, and how would you estimate variance under a synthetic control approach?

“This one is harder than it looks because the fairness angle is a trap you can walk into without realizing.”

View Post

Uber·Software Engineer·Technical Phone Screen

Jun 2026
Uber phone screen, pretty much one algorithmic problem the whole time. The problem was clever enough that I almost missed the key insight until I started drawing it out.
  • Given a chronological log of ride-share events where each event records two riders who shared a ride, find the earliest timestamp at which all riders in the system are part of a single connected component. Return -1 if this never happens.

“My first instinct was BFS per timestamp which would have been a mess.”

View Post

Uber·Software Engineer·Onsite - System Design / Architecture

Jun 2026
Uber system design round for a software engineer role. Two pretty meaty questions back to back, one on distributed location streaming and one on consensus algorithms. Left feeling okay about the first but a bit shaky on the second.
  • Design a real-time driver heat map system that streams live driver locations over WebSocket, partitions the map into cell IDs, and efficiently returns the top-K busiest cells.
  • Explain how the Paxos and Raft consensus algorithms work, and what the main differences between them are.

“This one I actually enjoyed.”

View Post

Uber·Software Engineer·Technical Phone Screen

Jun 2026
Uber SWE interview with a permutation-based array problem. Nothing too wild but the question had some edge cases worth thinking through carefully.
  • Given a permutation of integers 1 through N, for each value of k from 1 to N, check whether the elements with values 1 through k all appear as a contiguous block in the array. Return a binary string where each character represents whether the condition holds for that k.

“My first instinct was to track the min and max positions of elements seen so far as I iterated k from 1 to N.”

View Post

Uber·Software Engineer·Technical Phone Screen

Jun 2026
Uber coding round for a software engineer role, two grid problems back to back. The follow-up on the second one was trickier than it looked and I'm not sure I nailed the complexity analysis on the spot.
  • Given an m x n character grid and a target word, return true if the word can be formed by moving through sequentially adjacent cells (horizontally or vertically), without reusing any cell.
  • Follow-up: now the word must be found in a straight line, no turning. Starting from any cell, pick one of four cardinal directions and every letter must fall along that line consecutively. What changes?

“Classic backtracking DFS, mark cells visited as you go (or swap in a sentinel character to avoid an extra array).”

View Post

Uber·Software Engineer·Technical Phone Screen

Jun 2026
Uber coding round for a software engineer role, one question the whole time: build a quadtree from a 2D binary grid. Seemed straightforward at first but the recursion logic took a while to get right.
  • Design a Quadtree data structure and implement a function that builds one from a 2D binary array. Leaf nodes should be created when all values in a quadrant are identical; otherwise, split the region into four sub-quadrants recursively.

“I got the node structure down pretty fast but then spent way too long second-guessing the base case.”

View Post

Uber·Machine Learning Engineer·Technical Phone Screen

Jun 2026
Uber ML engineer coding round, one question the whole time. Pretty geometry-flavored problem that looks weird at first but clicks once you see the hashmap angle.
  • Given a list of 2D integer coordinates representing bus stations, streets run horizontally, vertically, and along both diagonals through these points. For every street passing through at least one station, count how many stations lie on it. Return the stations on the street with the maximum count. If multiple streets tie, return the union of stations across all tied streets.

“My first instinct was some kind of geometric sweep and I wasted probably three minutes going down that road before stepping back.”

View Post

Uber·Software Engineer·Onsite - System Design / Architecture

Jun 2026
Uber system design round for a software engineer role. The whole session was basically one big question about building a heat-map service, and they went pretty deep on every layer of it.
  • Design a heat-map service that can ingest a stream of geo-tagged events and render density visualizations over a 2D space, supporting zoom levels, time-range filters, and live updates.
  • How would you handle real-time versus historical data differently in this system, and where do you draw the line between streaming updates and batch rollups?
  • How would you scale this to handle billions of events per day with a globally distributed user base?

“This is a meaty one.”

View Post

Uber·Software Engineer·Technical Phone Screen

Jun 2026
Uber software engineering interview with a coding question that was more approachable than I expected once I spotted the right data structure to lean on.
  • Given an array of prices and a list of queries where each query is a starting position and a budget amount, how many consecutive items starting at that position can you buy before running out of money?

“My first instinct was brute force, just simulate buying items one by one per query.”

View Post

Uber·Machine Learning Engineer·Technical Phone Screen

Jul 2026
Uber ML engineer interview with a pretty meaty algorithmic question about black-box function minimization. No gradient info allowed, just raw function evaluations. The question covered a lot of ground and I wasn't fully prepared for the integer domain twist.
  • You have a black-box function F(x) you can query at any real number x, and a search interval [a, b] where F is convex or unimodal. Design an algorithm to find an approximate minimizer x* within precision epsilon, using only function evaluations (no gradients, no derivatives). Cover the continuous case, the integer domain case, and analyze time and space complexity.

“This is basically ternary search, which I knew, but I stumbled when they pushed into the integer domain case.”

View Post