Uber Software Engineer interview questions

407 Software Engineers have shared notes from their Uber interviews, with the questions they were asked in each round. That is 67% of the 609 Uber interview notes on Screna AI.

407 Software Engineer interview notes

Uber·Software Engineer·Technical Phone Screen

Jul 2026
Uber coding screen for a software engineer role. One algorithmic problem, simulation-style, the kind that looks approachable until you're actually implementing it.
  • Given an m x n matrix of integers where equal values represent the same color, implement a single round of candy-crush style elimination: mark any cell for removal if at least 2 of its 4 neighbors share its value, set those cells to 0, then gravity-drop remaining values to the bottom of each column.

“The removal condition tripped me up at first.”

View Post

Uber·Software Engineer·Technical Phone Screen

Jul 2026
Uber SWE interview, coding round. One problem the whole time, stack-based simulation. Felt okay about my solution but the timestamp math tripped me up more than I expected.
  • Given execution logs from a single-threaded CPU running n functions, where each log entry records a function id, whether it started or ended, and a timestamp, compute the exclusive CPU time for each function (time the function itself ran, not counting time spent in functions it called).

“My first instinct was right, use a stack to track which function is currently running.”

View Post

Uber·Software Engineer·Onsite - System Design / Architecture

Jul 2026
Uber system design round for a software engineering role, focused entirely on a distributed data pipeline problem. The question was dense and technical, covering a lot of ground in one shot.
  • You have a massive log of meeting events with fields like user ID, start/end time, room ID, and office ID. Design a MapReduce or Spark job to compute, for each rolling 15-minute window: the number of concurrent meetings per office, and which rooms exceeded 80% utilization. Walk through your map keys and values, how you handle interval-to-window transformation, shuffle and partition strategy to avoid skew, handling of late or duplicate events, and how you'd validate the output at scale.

“This one hit me like a wall.”

View Post

Uber·Software Engineer·Technical Phone Screen

Jul 2026
Uber SWE coding round, just the one grid traversal problem. Pretty standard BFS territory but the constraints are large enough that you can't be sloppy about it.
  • Given an m x n grid of open cells (0) and walls (1), find the shortest path in steps from the top-left to the bottom-right cell moving only up/down/left/right. Return -1 if no path exists.

“Classic BFS and I knew it immediately, which was both good and bad.”

View Post

Uber·Software Engineer·Online Assessment (OA)

Jul 2026
Uber SWE OA, one algorithmic problem about simulating round-trip mission scheduling across two sorted timetables. Pretty niche problem, felt like it was pulled from an older CodeSignal bank rather than something freshly written.
  • Given two sorted arrays of departure times from locations A and B, and a mission count m, simulate m round trips (A to B and back, each leg taking 100 time units, always catching the next available departure). Return the earliest time the last mission completes back at A.

“I went with binary search first because two pointers felt fiddly to get right under pressure.”

View Post

Uber·Software Engineer·Technical Phone Screen

Jul 2026
Uber SWE interview with an OOD design question that looked simple at first glance but had a pretty sharp follow-up about scaling. The core problem was manageable but the million-inputs-per-second angle is where things got interesting.
  • Design an expiring counter class that tracks how many unexpired copies of each element are stored, with methods to add elements at a given timestamp, query the count for a specific element, and query the total count across all elements. Expiration is based on a sliding window passed at initialization.
  • Follow-up: if this counter receives around one million events per second, how would you modify your design to handle that load efficiently?

“My first instinct was to use a deque per element and just pop from the front when things expire.”

View Post

Uber·Software Engineer·Onsite - System Design / Architecture

Jul 2026
System design round at Uber for a software engineer role. The question was a full end-to-end design of the search feature for a food delivery platform, covering everything from APIs to ranking to real-time updates. A lot of ground to cover in one session.
  • Design the search function for a large-scale food delivery platform like Uber Eats, covering requirements, APIs, data ingestion, indexing, query flow, ranking, real-time updates, scaling, observability, and trade-offs.

“This one sprawls in every direction.”

View Post

Uber·Software Engineer·Technical Phone Screen

Jul 2026
Uber SWE coding round, got a classic math problem that feels easy until you actually think about the constraints. No built-in sqrt allowed, so you have to actually know what you're doing.
  • Given a non-negative integer x, return the integer square root of x rounded down, without using any built-in exponent or square root functions.

“My first instinct was to just loop from 0 upward and check when i*i exceeds x.”

View Post

Uber·Software Engineer·Technical Phone Screen

Jul 2026
Uber SWE interview with a tree path palindrome problem. Pretty niche stuff, the kind of question that sounds approachable until you realize the naive solution won't cut it at 10^5 nodes.
  • Given a tree where each edge is labeled with a lowercase character, count the number of unordered pairs of distinct nodes whose path edge-characters can be rearranged to form a palindrome.

“My first instinct was to just enumerate pairs and check each path, which obviously blows up.”

View Post

Uber·Software Engineer·Onsite - System Design / Architecture

Jul 2026
Uber SWE system design round, one question the whole time. Pretty focused session around logistics and real-time data, which made sense given the domain.
  • Design a truck tracking system that supports filtering by truck number and provides an interface for updating driver status.

“I started with the data model and worked outward, which felt right but I probably spent too long on the database schema before touching the API layer.”

View Post