← Uber Interview Insights

Uber·Data Scientist·Technical Phone Screen·Senior

SeniorPrefer not to say
Jul 2026Remote

Summary

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.

Questions Asked (4)

Q1

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.

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

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

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clearly defining the null and alternative hypotheses for the difference in cancellation rates, then outline the two-proportion z-test procedure, including assumptions and test statistic calculation. Next, explain how to compute a 95% confidence interval for the difference using the standard error and z-critical value, and finally interpret the interval in the context of the product change, emphasizing practical significance and decision-making.

Pro tip: Always check the assumptions of the two-proportion z-test (e.g., independence, sample size) and consider using a continuity correction or exact methods if sample sizes are small. Also, discuss the business impact of the confidence interval—does the interval include zero? What does the range imply for Uber's cancellation rates?

1. Define Hypotheses

State the null hypothesis (H0: p1 - p2 = 0) and alternative hypothesis (H1: p1 - p2 ≠ 0 or one-sided) based on the product change goal. Clarify whether you're testing for any difference or a specific direction.

2. Check Assumptions and Choose Test

Verify independence, random sampling, and that the sample sizes are large enough for the normal approximation (np ≥ 10 and n(1-p) ≥ 10 for both groups). If not, consider Fisher's exact test or other methods.

3. Compute Test Statistic and P-value

Calculate the pooled proportion, standard error under the null, and the z-statistic. Find the p-value and compare to the significance level (e.g., α = 0.05) to decide whether to reject H0.

4. Construct 95% Confidence Interval

Compute the standard error for the difference using unpooled proportions, then the margin of error as 1.96 * SE. The interval is (p1 - p2) ± margin of error.

5. Interpret Results in Context

Explain what the confidence interval means: we are 95% confident that the true difference in cancellation rates lies within the interval. Discuss practical significance, whether the interval includes zero, and implications for the product change.

Key Points to Mention

  • Null and alternative hypotheses for two-proportion z-test
  • Assumptions: independence, random sampling, large sample size
  • Calculation of pooled proportion and standard error under null
  • Z-statistic and p-value interpretation
  • Confidence interval formula for difference in proportions
  • Practical interpretation: business impact, decision-making, and limitations

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

Q2

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.

A/B Testing & ExperimentationData ModelingProduct Analytics & Metrics
Author's notes

The interaction term part tripped me up.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by writing the logistic regression formula with city and hour-of-day as fixed effects, including an interaction term that captures a plausible effect (e.g., city × hour-of-day). Then discuss key assumptions such as linearity in the logit, independence, and no unmeasured confounding, and outline methods to check calibration (e.g., calibration plots, Hosmer-Lemeshow) and overdispersion (e.g., deviance/df, dispersion parameter).

Pro tip: At Uber, city and hour-of-day are often proxies for unobserved demand and supply shocks; consider using fixed effects or random effects and mention that you'd validate the interaction's business relevance, not just statistical significance.

1. Specify the model formula

Write the logistic regression equation with city and hour-of-day as predictors, including an interaction term. For example: logit(p) = β0 + β1*city + β2*hour + β3*(city*hour) + other covariates.

2. State key assumptions

List assumptions: binary outcome, independent observations, linearity of logit for continuous variables, no perfect multicollinearity, and no unmeasured confounding. Also note that city and hour are treated as categorical (fixed effects) unless specified otherwise.

3. Explain the interaction term

Justify why the interaction matters—e.g., the effect of hour-of-day on the outcome may differ by city due to varying demand patterns. Mention that you'd test its significance and interpret the coefficients.

4. Check calibration

Describe methods: calibration plots (predicted vs. observed probabilities), Hosmer-Lemeshow test, and calibration belts. Emphasize that good discrimination (AUC) does not guarantee calibration.

5. Check overdispersion

For logistic regression, overdispersion is less common but can occur with grouped data. Check by comparing residual deviance to degrees of freedom; if ratio >> 1, consider quasi-binomial or mixed effects models.

Key Points to Mention

  • Use of fixed effects for city and hour-of-day to adjust for confounding
  • Inclusion of an interaction term (e.g., city × hour) and its interpretation
  • Assumption of no unmeasured confounding and potential for omitted variable bias
  • Calibration assessment via calibration plots and Hosmer-Lemeshow test
  • Overdispersion check using deviance/df ratio and remedies like quasi-likelihood
  • Consideration of alternative approaches like mixed effects models if city effects are random

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

Q3

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?

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

Got the basic power calc done, used the standard formula and plugged in the baseline rate around 7%.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by calculating the baseline sample size using the standard formula for comparing two proportions, assuming a baseline cancellation rate (e.g., 5%). Then adjust for the intraclass correlation (ICC) by computing the design effect (1 + (m-1)*ICC) and multiplying the sample size accordingly. Clearly state assumptions and interpret the impact on experiment duration and feasibility.

Pro tip: Always clarify the baseline rate and cluster size upfront; in practice, ICC often varies by metric, so sensitivity analysis around ICC assumptions shows rigor and helps stakeholders understand risks.

1. Clarify assumptions and parameters

Confirm the baseline cancellation rate, significance level (95%), power (80%), and the cluster size (average number of trips per driver) for the ICC adjustment.

2. Calculate base sample size without clustering

Use the formula for two proportions: n = (Zα/2 + Zβ)^2 * (p1(1-p1) + p2(1-p2)) / (p2 - p1)^2, where p1 is baseline and p2 = p1 + 0.005.

3. Compute design effect and adjust sample size

Design effect = 1 + (m - 1) * ICC, where m is average cluster size. Multiply the base sample size by the design effect to get the required sample size per arm.

4. Interpret and discuss implications

Explain how the design effect increases sample size, potentially requiring longer experiment duration or more drivers, and discuss trade-offs.

Key Points to Mention

  • Baseline cancellation rate assumption (e.g., 5%) and its impact on sample size
  • Formula for sample size calculation for two proportions
  • Design effect formula: 1 + (m - 1) * ICC
  • Average cluster size (m) at driver level and its role
  • Interpretation of ICC and clustering effect on variance
  • Practical implications: experiment duration, feasibility, and sensitivity analysis

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

Q4

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?

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

Easier than I expected after the cluster design question.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Explain the stratified bootstrap procedure step-by-step, emphasizing how it preserves the city-level structure of the data. Then compare it to normal approximation, highlighting scenarios where stratification and bootstrapping are preferred, such as small sample sizes per city or non-normal distributions.

Pro tip: Mention that stratification ensures each city's unique cancellation rate distribution is represented, which is crucial when city sizes vary widely. Also, note that bootstrapping can handle complex metrics like ratios without relying on asymptotic assumptions.

1. Define the metric and strata

Clarify that the cancellation rate difference is computed between two groups (e.g., treatment vs control) within each city, and cities are the strata. The overall difference is a weighted average of city-level differences.

2. Stratified bootstrap resampling

For each city, separately resample with replacement from the observed data within each group (treatment and control) to preserve the city-specific sample sizes and distributions. Compute the city-level cancellation rate difference for each bootstrap sample.

3. Combine city-level estimates

Aggregate the city-level differences into an overall difference using the same weighting scheme as the original estimate (e.g., by city sample size). Repeat this process many times (e.g., 10,000) to build the bootstrap distribution.

4. Construct confidence interval

Use the bootstrap distribution to form a confidence interval, such as the percentile method (2.5th and 97.5th percentiles) or BCa if bias correction is needed.

5. Compare to normal approximation

Discuss when stratified bootstrap is preferred: small sample sizes per city, non-normal cancellation rate distributions, unequal variances, or when the metric is a complex ratio. Normal approximation may fail due to violated assumptions.

Key Points to Mention

  • Stratification preserves city-level heterogeneity and ensures each city contributes appropriately to the overall estimate.
  • Bootstrap resampling should be done within each stratum and group to maintain the data structure.
  • The overall difference is typically a weighted average of city-level differences, with weights based on city sample sizes or population.
  • Bootstrap confidence intervals (e.g., percentile, BCa) do not rely on normality assumptions and can handle skewed distributions.
  • Normal approximation may be inadequate when sample sizes are small, variances differ across cities, or the metric is bounded (e.g., rates near 0 or 1).
  • Stratified bootstrap is computationally intensive but provides more reliable inference in complex experimental designs.

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