← Back to Directory

Uber interview notes, page 60 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·Research Scientist·Onsite - Multi Round

Jul 2026
Onsite scientist round at Uber, no coding, just a big open-ended experiment design prompt. The whole session was basically one long reasoning exercise about marketplace experimentation, and the bar for metric definition speed was higher than I expected.
  • Pick a marketplace metric, define it precisely, and design a full experiment to measure its causal effect, including your choice of experimentation framework, treatment structure, rollout phases, guardrails, and how you'd interpret the confidence intervals.
  • Why not just run a standard A/B test here instead of a switchback design?
  • You see an effect at the 90% confidence level but not at 95%. How do you think about that result?
  • What guardrail metric would you choose for this experiment, and why?
  • How would you choose the window length for a switchback experiment, and what are the tradeoffs?

“This is the whole round basically.”

View Post

Uber·Data Scientist·Technical Phone Screen

Jul 2026
Uber data science interview that went deep on experimentation stats, way deeper than I expected. Four questions total, all connected to a single cancellation rate scenario, and they kept pushing on edge cases I hadn't thought through.
  • Given before/after cancellation rate data from a product change, how would you set up a hypothesis test for the difference in rates and compute a 95% confidence interval? Walk through your null/alternative hypotheses and what the interval actually means in practice.
  • How would you specify a logistic regression to adjust for confounding by city and hour-of-day, including an interaction term you think matters? Write out the model formula, state your key assumptions, and explain how you'd check calibration and overdispersion.
  • Calculate the per-arm sample size needed to detect a 0.5 percentage point absolute change in cancellation rate at 95% confidence and 80% power. Then factor in an intraclass correlation of 0.02 at the driver level: what's the design effect and how does the required sample size change?
  • Describe a stratified bootstrap procedure to build a confidence interval for the cancellation rate difference across cities. When would you prefer this approach over a normal approximation?

“This felt like a warmup but I overthought the test choice.”

View Post

Uber·Data Scientist·Technical Phone Screen

Jul 2026
Uber data scientist interview with a meaty experiment design question that goes pretty deep into stats and product thinking. One question but it has about seven sub-questions packed inside it, so budget your time accordingly.
  • Design an experiment to test whether offering a bonus (cash or queue priority) increases the rate at which paperwork-complete candidates take their first action within 14 days. Cover eligibility rules, randomization unit, treatment arms (control, bonus upfront, bonus after first action, staged), stratification by motivation type, primary and secondary metrics including guardrails for quality and fraud, how you'd handle noncompliance and spillover, stopping rules, and when to roll out broadly vs. target narrowly based on heterogeneous effects. Also compute the minimum per-arm sample size to detect a 3 percentage point lift from a 20% baseline at 90% power and alpha 0.05 using a two-proportion z-test, showing the formula and a numeric answer.

“This one is basically five interviews in a single prompt.”

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·Machine Learning Engineer·Onsite - Coding / Algorithms

Jul 2026
Uber MLE onsite coding round where you pick one of four ML primitives to implement from scratch in Python/NumPy, no sklearn allowed. The math derivation is graded as hard as the code, which I did not fully appreciate going in.
  • Implement linear regression using gradient descent from scratch in NumPy, including the MSE loss and the gradient update rule. Be ready to derive the gradient on a whiteboard before writing any code.
  • Implement logistic regression with mini-batch gradient descent from scratch. Explain the binary cross-entropy loss and justify the gradient. Also handle numerical stability issues like sigmoid overflow and log(0).
  • Build a Markov chain text generator: first a function that builds a frequency map from a corpus (word to next-word counts), then a function that generates text by always picking the most frequent next word.
  • Given N rider coordinates and a target K, find K pickup locations on a grid that minimize the total L1 distance from each rider to its nearest pickup point.
  • Implement multi-head self-attention as a PyTorch nn.Module from scratch, without calling nn.MultiheadAttention. Handle the reshape from (B, T, D) to (B, H, T, D_head), scaled dot-product scores, softmax, and the output projection.
  • How would you add L2 regularization to both linear and logistic regression, and what changes in the gradient update?
  • Why does scaling attention scores by the square root of the head dimension matter?

“They really do make you derive it first.”

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·Data Scientist·Technical Phone Screen

Jul 2026
Uber DS technical screen, two parts back to back. The SQL problem was gnarly and the Python section had a twist I didn't fully see coming. Felt okay leaving but not confident.
  • Write a SQL query to compute 48-hour unique CTR for a specific campaign broken down by variant. Deduplicate sends to the earliest send per user per campaign on or after a given date, exclude internal user accounts, and define CTR as distinct users with at least one click within 48 hours of their send time divided by distinct users sent. Return campaign, variant, send counts, unique clickers, and CTR. Also return a single row showing the absolute lift between test and control, and optionally include the counts needed to compute a 95% confidence interval for that lift downstream.
  • Given a pandas DataFrame with true labels, predicted probabilities, and sample weights, write code to: plot the precision-recall curve, find the threshold that maximizes weighted F1 using the sample weights, and compute precision at the top 1% of the population by predicted score with deterministic tie-breaking.
  • Explain why a model can have a high ROC-AUC (around 0.86) but a very low PR-AUC (around 0.18) at 1% class prevalence. Which metric would you optimize for a marketing click-through rate use case?

“This one took me a while to untangle.”

View Post

Uber·Machine Learning Engineer·Onsite - System Design / Architecture

Jul 2026
System design round for an ML Engineer role at Uber. The whole thing was one big design problem about a game-room leaderboard, which sounds simple but ended up going pretty deep into heap internals and complexity tradeoffs.
  • Design a data structure for a sequence of rooms where players complete tasks in order. Support addPlayer, recordTask (with points), moveToNextRoom, getPlayerState, and topK (top K players by total score). Discuss how you'd handle duplicate entries in a heap-based leaderboard, analyze time and space complexity for each operation, and justify your design.

“This took me a while to decompose.”

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·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