← Back to Directory

Uber interview notes, page 15 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·Software Engineer·Technical Phone Screen

Apr 2026
Uber SWE interview that was basically a binary tree deep dive. They had me implement the node class from scratch first, then build on it across three connected subproblems. Not the hardest thing I've done but writing the class yourself before solving anything adds a layer of pressure.
  • Implement a binary tree node class from scratch without using any library helpers.
  • Given a binary tree using your node class, compute the sum of all node values.
  • Find the maximum path value among all root-to-leaf paths, where path value is the sum of node values along the path.
  • Return the actual leaf node where the maximum root-to-leaf path value is achieved.

“They wanted the full class, not just a struct with two pointers.”

View Post

Uber·Software Engineer·Technical Phone Screen

Apr 2026
Uber SWE coding round, one algorithmic problem the whole time. They pushed for a Union-Find solution specifically which I wasn't expecting since I'd always just defaulted to BFS for grid problems.
  • Given an m x n grid where '1' is land and '0' is water, count the number of islands. Islands are groups of land cells connected horizontally or vertically.

“I know this problem cold with BFS but they wanted Union-Find, which I use way less often.”

View Post

Uber·Data Scientist·Technical Phone Screen

Apr 2026
Uber DS interview focused entirely on measuring the causal impact of a YouTube ad campaign. Heavy on experimentation design and stats, less product-y than I expected. The outlier question at the end was the one that tripped me up a bit.
  • What metrics would you use to evaluate a YouTube ad campaign for Uber, covering both marketing funnel and actual business outcomes?
  • How would you design a measurement approach to estimate the causal effect of YouTube ads, not just correlation?
  • If you're comparing treatment and control groups with a t-test, what assumptions need to hold for that to be valid?
  • Walk through how you'd run a power analysis before launching an experiment.
  • Average order value is heavily right-skewed with extreme outliers. Can you still use a t-test, and if not, what would you do instead?

“I went top-down: impressions, view-through rate, click-through rate for the funnel stuff, then flipped to business outcomes like first-trip conversion, rides per user in the following two weeks, and gross bookings.”

View Post

Uber·Software Engineer·Technical Phone Screen

Apr 2026
Uber SWE interview with a graph traversal problem disguised as a build system question. The API-driven discovery angle made it trickier than a plain topological sort.
  • You have a function get_dependencies(package) that returns the direct dependencies of a package. Given a target package, return a valid build order for it and all its transitive dependencies, discovering the graph only by calling this API. Handle cycles, missing packages, and duplicate dependencies.

“This took me a minute to even parse correctly.”

View Post

Uber·Data Scientist·Technical Phone Screen

Apr 2026
Uber data scientist technical screen, basically one big coding and design problem that took the whole session. The question was algorithmically dense and they clearly wanted you to both code it and justify the math, which I was not fully prepared for.
  • Implement a Python function that samples k items without replacement with probability proportional to their weights, given a stream of up to 100 million items. The solution must handle extreme weight values without overflow, support reproducibility via a seed, use O(k) memory, and gracefully reject nonpositive weights. You should also explain the algorithm, prove it's unbiased, discuss numerical stability, and describe how you'd test it.

“This was a lot to hold in your head at once.”

View Post

Uber·Software Engineer·Technical Phone Screen

Apr 2026
Uber SWE coding round, one graph problem, pretty standard stuff if you've seen this type before.
  • Given an n x n binary matrix where 1s represent land and 0s represent water, and the matrix contains exactly two islands (4-directionally connected groups of 1s), find the minimum number of 0s you need to flip to connect the two islands into one.

“I knew the general shape of the solution pretty quickly.”

View Post

Uber·Software Engineer·Technical Phone Screen

Apr 2026
Uber SWE interview with a clustering optimization problem. The whole thing was basically one meaty algorithmic question dressed up as a product scenario, and the expected answer was way more nuanced than just writing a loop.
  • Given the coordinates of N people, choose K shuttle pickup locations to minimize the total L1 distance from each person to their nearest pickup location. How would you approach this?

“I knew k-means from college but kept second-guessing whether the median vs mean distinction actually mattered here.”

View Post

Uber·Software Engineer·Technical Phone Screen

Apr 2026
Uber coding round for a software engineer role. The whole thing was a binary tree problem broken into three parts, and you had to write the node class yourself from scratch before touching any of the logic.
  • Implement a binary tree node class from scratch, without using any library helpers, and then solve three sub-problems: compute the sum of all node values, find the maximum path value among all root-to-leaf paths (where path value is the sum of values along the path), and return the specific leaf node where that maximum path value occurs.

“Writing the node class first was a bit of a curveball.”

View Post

Uber·Software Engineer·Onsite - System Design / Architecture

May 2026
Uber system design round for a software engineering role, full session on designing a ride-sharing backend at scale. The interview went deep on location ingestion, geospatial matching, and consistency guarantees. Felt like a lot of ground to cover in one sitting.
  • Design the core backend of a ride-sharing platform: handle real-time driver location updates at scale, match riders to nearby drivers, and keep the system available under failures.
  • How would you ingest roughly one million driver location pings per second and keep the freshest position available for matching with low staleness?
  • What geospatial indexing scheme would you use to efficiently find available drivers within a given radius of a rider's pickup location?
  • How do you guarantee a driver is never simultaneously assigned to two different riders, even when multiple match requests arrive concurrently?
  • How does the system stay available for riders and drivers during a regional network partition or partial datacenter loss?
  • How would you handle a surge of ride requests all coming from the same small area at once, like right after a stadium event ends?
  • How would you extend this to a multi-region active-active setup, and how do you prevent a driver crossing a regional boundary from getting double-assigned by two different regions?
  • What are the top metrics you'd monitor for this system, and what would you set alerts on?

“This is the main prompt and it's massive.”

View Post

Uber·Software Engineer·Technical Phone Screen

May 2026
Phone screen for a software engineering role at Uber, just one question: design a parking lot system. Short and focused.
  • Design a parking lot system using object-oriented principles.

“Classic OOD question and I still fumbled the class hierarchy a bit.”

View Post