← Uber Interview Insights

Uber·Machine Learning Engineer·Technical Phone Screen·Senior

SeniorPrefer not to say
Jun 2026

Summary

Round 2 for an MLE role at Uber. Mixed coding and a case study in the same session, which I didn't expect. Interviewer was relaxed and easy to talk to, made the whole thing feel less high-stakes than it probably was.

Questions Asked (2)

Q1

Given access to a callable PDF function for a normal distribution, implement the CDF.

Algorithms & Data StructuresTechnical Trade-offs
Author's notes

This is basically a numerical integration problem.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Clarify the available PDF function's signature and whether it returns the density at a point or can integrate. Then implement the CDF using numerical integration (e.g., trapezoidal rule) or by leveraging symmetry and the error function if the PDF is standard normal. Discuss trade-offs between accuracy and computational cost, and consider edge cases like extreme values.

Pro tip: Mention that for a standard normal, the CDF can be computed via the error function (erf) if available, but since only the PDF is given, numerical integration is necessary. Also, highlight that for extreme tails, direct integration may underflow, so using a transformation or approximation (e.g., Abramowitz and Stegun) might be needed.

1. Clarify the problem and assumptions

Ask whether the PDF is for a standard normal or general normal, and whether it's callable at any point. Confirm if the CDF should be implemented from scratch using only the PDF.

2. Choose a numerical integration method

Select a method like trapezoidal rule or Simpson's rule for integrating the PDF from -infinity to x. Discuss step size and accuracy trade-offs.

3. Handle infinite bounds and symmetry

Use symmetry: CDF(x) = 0.5 + integral from 0 to x for standard normal. For general normal, transform to standard normal. For x < 0, use CDF(x) = 1 - CDF(-x).

4. Implement and test

Write code that integrates the PDF, handling edge cases like very large |x|. Test against known values (e.g., CDF(0)=0.5, CDF(1.96)≈0.975).

5. Discuss performance and alternatives

Mention that numerical integration can be slow for many calls; consider precomputing a table or using approximation formulas if performance is critical.

Key Points to Mention

  • Numerical integration methods (trapezoidal, Simpson's) and their accuracy
  • Using symmetry to reduce integration range and improve efficiency
  • Transformation from general normal to standard normal
  • Edge cases: extreme values, underflow, and handling negative x
  • Trade-offs between accuracy and computational cost
  • Alternative approaches like using the error function if available, or precomputed tables

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.

Q2

Walk through a promotion/coupon experiment for a food delivery platform: what metrics would you track, how would you randomize, and what confounders should you worry about?

A/B Testing & ExperimentationProduct Analytics & Metrics
Author's notes

This one had a lot of surface area.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Structure your answer around the experiment lifecycle: define the hypothesis and target population, specify randomization and metrics, then address confounders and mitigation. Emphasize the ML engineer's role in ensuring valid randomization, reliable metric computation, and detecting subtle biases.

Pro tip: Mention that promotions often have heterogeneous treatment effects—segment by user value or cuisine preference to avoid diluting the average effect. Also, highlight the importance of guardrail metrics like delivery time and courier utilization to catch unintended consequences.

1. Define hypothesis and target population

Clarify the promotion's goal (e.g., increase orders) and specify who is eligible (e.g., new users, lapsed users). Define the treatment and control groups.

2. Randomization strategy

Choose the randomization unit (user, session, or order) and ensure it's consistent with the metric and avoids contamination. Consider stratified randomization by key covariates like city or user tenure.

3. Select metrics

Identify primary metrics (e.g., conversion rate, order frequency), secondary metrics (e.g., average order value, retention), and guardrail metrics (e.g., delivery time, courier utilization).

4. Identify confounders and biases

List potential confounders such as seasonality, city-level differences, and novelty effects. Plan to control them via stratification, regression adjustment, or holdout periods.

5. Analyze and iterate

Use statistical tests (e.g., t-test, CUPED) to measure effects, check for heterogeneous treatment effects, and decide on rollout or further experiments.

Key Points to Mention

  • Randomization unit: user-level vs. order-level to avoid spillover and ensure independence.
  • Primary metric: conversion rate or orders per user; secondary: AOV, retention; guardrails: delivery time, courier utilization.
  • Confounders: seasonality, city effects, user selection bias, novelty effect, and network effects.
  • Stratification by city, user tenure, or past behavior to balance groups.
  • Use of CUPED or other variance reduction techniques to increase sensitivity.
  • Heterogeneous treatment effects: analyze by user segments to uncover differential impact.

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.