← Uber Interview Insights

Uber·Data Scientist·Onsite - System Design / Architecture·Senior

Senior
Jun 2026

Summary

Uber DS interview, system design focused. One big open-ended question about building an ETA system from scratch, covering basically everything: labels, features, models, metrics, monitoring, experiments. Felt more like a 45-minute architecture conversation than a typical ML interview.

Questions Asked (1)

Q1

Design an end-to-end ETA prediction system for a ride-hailing app covering both pickup and trip ETAs. Walk through prediction targets and label construction, feature selection, model choices, offline and online evaluation, and how you'd handle issues like metric tradeoffs, calibration, selection bias from canceled trips, traffic shocks, GPS noise, geospatial cold start, latency constraints, retraining, monitoring, and post-launch experimentation.

System DesignTechnical Trade-offsA/B Testing & Experimentation
Author's notes

This is a monster of a question and I underestimated how much ground they actually wanted covered.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Structure your answer around the ML lifecycle: start with problem framing and label construction, then move to features and modeling, followed by evaluation and deployment, and finally address operational challenges like bias, cold start, and monitoring. Emphasize trade-offs and how you would validate decisions with experiments.

Pro tip: Show that you understand the business impact: ETA accuracy directly affects rider trust and driver utilization, so quantify how improvements translate to metrics like cancellation rates and completed trips.

1. Define prediction targets and labels

Specify separate models for pickup ETA (time until driver arrives) and trip ETA (time until destination). Construct labels from historical trip data, handling censoring and outliers.

2. Feature engineering and model selection

Select features like distance, time of day, traffic, weather, driver/rider history, and geospatial embeddings. Choose models (e.g., gradient boosting, deep learning) balancing accuracy and latency.

3. Offline and online evaluation

Use metrics like MAE, RMSE, and calibration plots offline. Online, run A/B tests measuring business metrics (e.g., cancellations, completed trips) and monitor latency.

4. Address data challenges and biases

Mitigate selection bias from canceled trips via inverse propensity weighting or censored regression. Handle GPS noise with smoothing, traffic shocks with real-time data, and cold start with geospatial priors.

5. Deployment, monitoring, and iteration

Deploy with low-latency serving, set up monitoring for drift and performance, retrain regularly, and conduct post-launch experiments to refine models.

Key Points to Mention

  • Separate models for pickup and trip ETA with distinct features and targets
  • Label construction from historical data, including handling of censored trips and outliers
  • Feature engineering: temporal, spatial, traffic, weather, driver/rider history, and geospatial embeddings
  • Model choices: gradient boosting (e.g., XGBoost) vs. deep learning (e.g., LSTM) with latency-accuracy trade-off
  • Evaluation metrics: MAE, RMSE, calibration, and business metrics via A/B testing
  • Handling biases: selection bias from canceled trips, GPS noise, traffic shocks, and geospatial cold start

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