← Uber Interview Insights

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

SeniorPrefer not to say
Jun 2026

Summary

Uber MLE system design round, one big question that sprawled across basically every dimension of ML infrastructure you can think of. The kind of prompt where you finish and genuinely can't tell if you crushed it or missed the whole point.

Questions Asked (1)

Q1

Design a real-time system that tracks remaining ETA for every active driver across a city grid. Walk through GPS ingestion and partitioning, denoising and map-matching, ETA computation and updates, model selection and training, online feature computation using only the provided data, low-latency serving, monitoring and rollback, and offline plus online evaluation.

System DesignTechnical Trade-offsData Modeling
Author's notes

This is a monster of a question.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Structure your answer as an end-to-end ML system, starting with data ingestion and partitioning, then moving through denoising, map-matching, ETA modeling, online serving, and monitoring. Emphasize trade-offs at each stage, especially latency vs. accuracy and scalability across a city grid. Tie everything back to Uber's real-time constraints and the need for robust rollback and evaluation mechanisms.

Pro tip: Highlight the importance of partitioning by geohash or H3 cells to enable parallel processing and low-latency lookups, and mention how you'd handle stragglers and hot spots. Also, discuss how you'd use online-offline consistency checks to detect training-serving skew early.

1. Data Ingestion and Partitioning

Describe how GPS pings from drivers are ingested via a scalable message queue (e.g., Kafka) and partitioned by city grid cells (e.g., H3) to distribute load and enable parallel processing. Mention handling of out-of-order events and late data.

2. Denoising and Map-Matching

Explain techniques to clean GPS noise (e.g., Kalman filters, outlier detection) and snap noisy points to the road network using map-matching algorithms (e.g., HMM-based). Discuss trade-offs between accuracy and computational cost.

3. ETA Computation and Model Selection

Outline the ETA model: features (traffic, distance, time of day, driver history), model choices (gradient boosted trees, deep learning), and training pipeline. Emphasize online feature computation using only provided data and low-latency serving via model caching and precomputation.

4. Serving, Monitoring, and Rollback

Describe a low-latency serving architecture (e.g., feature store, model server) and monitoring for data drift, latency, and accuracy. Explain rollback strategies (canary deployments, shadow mode) and how to trigger them automatically.

5. Offline and Online Evaluation

Detail offline evaluation metrics (MAE, RMSE) and online evaluation (A/B tests, interleaving) to measure business impact. Discuss how to detect and mitigate training-serving skew and feedback loops.

Key Points to Mention

  • Partitioning strategy using geospatial indexing (e.g., H3, geohash) for scalability and low-latency queries.
  • Denoising techniques (Kalman filter, particle filter) and map-matching algorithms (HMM, Viterbi) with trade-offs.
  • Feature engineering for ETA: real-time traffic, historical patterns, driver behavior, and road network attributes.
  • Model selection: gradient boosted trees vs. deep learning, considering latency and interpretability.
  • Low-latency serving: feature store, model caching, and asynchronous updates.
  • Monitoring and rollback: canary releases, shadow deployments, and automated alerts for drift or degradation.

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