← Uber Interview Insights

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

Senior
May 2026

Summary

ML system design round at Uber for an MLE role. The whole session was one deep problem about autocomplete for destination search, and they really wanted you to go end-to-end from candidate generation all the way to latency constraints and privacy tradeoffs. Dense but interesting.

Questions Asked (6)

Q1

Design an ML system that predicts and ranks destination suggestions in the Uber app as a user types the first few characters of an address.

System DesignTechnical Trade-offs
Author's notes

This one sprawls fast.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying requirements and constraints (latency, scale, personalization, privacy) to frame the problem. Then propose a two-stage architecture: a fast candidate generation model (e.g., prefix-based trie or embedding retrieval) followed by a ranking model (e.g., gradient boosted trees or neural network) that incorporates user context and real-time signals. Finally, discuss trade-offs, evaluation metrics, and deployment considerations.

Pro tip: Emphasize the importance of low-latency serving and how you would handle cold-start users by falling back to popularity or geospatial heuristics. Also, mention that you'd A/B test the ranking model to measure impact on user engagement metrics like selection rate and time-to-destination.

1. Clarify Requirements and Constraints

Ask about scale (QPS, number of users), latency requirements (e.g., <100ms), data availability (user history, real-time signals), and privacy constraints. This ensures the design meets business needs.

2. Design Candidate Generation

Propose efficient methods to retrieve a set of plausible destinations from the full corpus given a prefix. Options include a trie for exact prefix matching, or embedding-based retrieval (e.g., using ANN) for fuzzy matching and personalization.

3. Design Ranking Model

Describe a model that scores and orders candidates using features like user history, time of day, location, and popularity. Consider model choices (e.g., GBDT, DNN) and how to incorporate real-time features.

4. Address Training and Evaluation

Outline how to train the model (e.g., using implicit feedback like clicks) and evaluate offline (e.g., NDCG, MRR) and online (A/B tests). Discuss handling of position bias and cold-start.

5. Discuss Deployment and Trade-offs

Cover serving architecture (e.g., precomputation, caching, model serving), latency vs. accuracy trade-offs, and scalability. Mention monitoring and iterative improvement.

Key Points to Mention

  • Two-stage architecture: candidate generation + ranking
  • Low-latency serving (e.g., in-memory trie, caching, model quantization)
  • Personalization using user history and context (time, location)
  • Handling cold-start and sparsity with fallback strategies
  • Evaluation metrics: offline (NDCG, recall) and online (CTR, selection rate)
  • Scalability and real-time feature updates

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

Q2

How would you construct training data for the destination ranking model, and what would you use as positive and negative examples?

System DesignTechnical Trade-offs
Author's notes

Positives are clicked or booked suggestions, negatives are impressions that got skipped.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying the business objective and the definition of a successful destination ranking (e.g., completed trips, user satisfaction). Then outline a data construction pipeline that leverages implicit feedback from user interactions, and discuss how to define positive and negative examples with careful consideration of biases and counterfactuals.

Pro tip: Emphasize the importance of using counterfactual or unbiased negative sampling to avoid feedback loops, and mention how you would validate the training data with offline metrics and online A/B tests.

1. Clarify the objective and success metrics

Define what 'success' means for the destination ranking model, such as completed trips, user ratings, or conversion rates. This will guide the labeling of positive and negative examples.

2. Identify data sources and signals

List available data sources like user search logs, trip history, clickstream, and contextual features (time, location, user profile). Discuss how to extract implicit feedback from these sources.

3. Define positive examples

Positives are destinations that led to a successful outcome, e.g., a completed trip, a high rating, or a booking. Consider using multiple positive signals and weighting them by confidence.

4. Define negative examples

Negatives are destinations that were shown but not selected, or selected but resulted in a negative outcome (e.g., cancellation). Address biases like position bias and popularity bias through techniques like inverse propensity scoring or hard negative mining.

5. Address biases and validate

Discuss how to mitigate selection bias, exposure bias, and feedback loops. Propose offline evaluation metrics and online A/B testing to validate the training data and model performance.

Key Points to Mention

  • Implicit feedback from user interactions (clicks, bookings, completions)
  • Positive examples: completed trips, high ratings, repeat visits
  • Negative examples: non-clicked impressions, abandoned searches, cancellations
  • Handling position bias and popularity bias (e.g., inverse propensity scoring)
  • Counterfactual reasoning and unbiased negative sampling
  • Offline evaluation metrics (NDCG, MRR) and online A/B testing

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

Q3

What offline and online metrics would you use to evaluate this system?

Product Analytics & MetricsA/B Testing & Experimentation
Author's notes

Offline I said MRR and hit-at-k.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying the system's purpose and the decision it supports, then structure your answer around offline metrics (model performance on historical data) and online metrics (business and user impact in production). Emphasize how offline metrics guide model selection while online metrics validate real-world impact, and mention the importance of guardrail metrics to catch regressions.

Pro tip: At Uber, online metrics must tie to business outcomes like completed trips or driver utilization, and offline metrics should be leading indicators of those outcomes. Always discuss how you'd handle metric trade-offs and avoid overfitting to offline metrics.

1. Clarify the system and its goal

Ask questions to understand what the system does (e.g., ETA prediction, fraud detection) and what business objective it serves. This ensures your metrics are relevant and aligned with stakeholder needs.

2. Define offline metrics

List model-centric metrics evaluated on historical or holdout data, such as RMSE, precision/recall, AUC, or calibration. Explain how these measure predictive quality and guide iteration.

3. Define online metrics

Describe metrics measured in live experiments (A/B tests), such as click-through rate, conversion, revenue, or user engagement. These reflect actual system impact and business value.

4. Include guardrail metrics

Mention metrics that ensure no harm is done, like latency, error rates, or fairness metrics. These protect user experience and system health during deployment.

5. Explain the relationship and iteration

Discuss how offline metrics are used for rapid prototyping and online metrics for final validation, and how discrepancies between them inform model improvements and experiment design.

Key Points to Mention

  • Offline metrics: RMSE, MAE, precision, recall, F1, AUC, log loss, calibration
  • Online metrics: CTR, conversion rate, revenue per user, retention, engagement, completed trips
  • Guardrail metrics: latency, error rate, fairness, resource usage
  • A/B testing methodology: randomization, sample size, statistical significance, novelty effects
  • Business alignment: how metrics tie to Uber's goals like reliability, efficiency, and growth
  • Trade-offs: balancing model accuracy with inference speed, and offline vs. online performance

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

Q4

How would you handle cold-start for new users who have no trip history?

System DesignAdaptability & Ambiguity
Author's notes

Fell back to popular nearby destinations weighted by time-of-day.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying the business objective and the specific cold-start scenario (e.g., new user with no trip history, but possibly with other signals). Then outline a multi-pronged strategy that leverages available data (e.g., demographics, context, onboarding preferences) and falls back to popular or contextual recommendations, while emphasizing the importance of exploration and rapid learning. Finally, discuss how to evaluate and iterate, including online metrics and feedback loops.

Pro tip: Emphasize that cold-start is not just a modeling problem but a product and data problem—suggest designing onboarding to collect minimal preferences and using contextual bandits to balance exploration and exploitation from day one.

1. Clarify the problem and constraints

Ask clarifying questions to understand what data is available for new users (e.g., sign-up info, device, location, time) and what the business goal is (e.g., maximize first-trip completion, long-term retention).

2. Leverage available signals

Use any non-trip data such as user demographics, device type, location, time of day, and onboarding preferences to make initial predictions or segment users into cohorts.

3. Fallback to non-personalized strategies

When signals are insufficient, use popularity-based, contextual, or rule-based recommendations (e.g., most popular trips in the user's city at that time) as a baseline.

4. Incorporate exploration and rapid learning

Employ contextual bandits or reinforcement learning to balance exploration of new options with exploitation of known good ones, quickly gathering feedback from the user's first interactions.

5. Evaluate and iterate

Define offline and online metrics (e.g., click-through rate, trip completion, retention) and set up A/B tests to measure the impact of different cold-start strategies, iterating based on results.

Key Points to Mention

  • Use of side information (demographics, context) to mitigate lack of trip history
  • Popularity and contextual baselines as fallback
  • Exploration-exploitation trade-off via contextual bandits
  • Onboarding design to collect explicit preferences
  • Evaluation metrics and A/B testing for cold-start strategies
  • Transfer learning or meta-learning from similar users or markets

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

Q5

The system needs to return results on every keystroke with under 50ms latency. How does that constraint shape your design choices?

System DesignTechnical Trade-offs
Author's notes

This came up toward the end and I think I handled it okay.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by acknowledging that the 50ms latency constraint is a hard real-time requirement that forces a shift from batch to online, incremental computation. Then walk through the key design decisions: precomputing as much as possible, using lightweight models, caching, and optimizing the serving path. Emphasize trade-offs between latency, accuracy, and cost.

Pro tip: Mention that you would measure and monitor the p99 latency, not just the average, because tail latency matters for user experience. Also, discuss fallback strategies for when the system cannot meet the latency SLA.

1. Clarify requirements and constraints

Confirm the exact latency target (50ms p99?), the scale (QPS), and the acceptable accuracy trade-off. Understand if the results need to be personalized and if the model can be updated in real-time.

2. Precompute and cache aggressively

Precompute embeddings, features, and candidate sets offline or in near-real-time. Use in-memory caches (e.g., Redis) for fast retrieval of precomputed results and features.

3. Design a lightweight online serving path

Use simple models (e.g., logistic regression, small neural nets) or precomputed lookup tables for the final ranking. Avoid heavy feature engineering at query time; instead, use precomputed features.

4. Optimize infrastructure and model serving

Deploy models on low-latency serving frameworks (e.g., TensorFlow Serving, ONNX Runtime) with hardware acceleration (GPU/TPU) if needed. Use techniques like model quantization, pruning, and distillation to reduce inference time.

5. Implement fallbacks and monitor performance

Have a fallback to a simpler model or cached results if latency exceeds threshold. Continuously monitor latency and accuracy, and set up alerts for SLA violations.

Key Points to Mention

  • Precomputation and caching of features, embeddings, and candidate sets to avoid online computation.
  • Use of lightweight models (e.g., logistic regression, small neural networks) and model compression techniques (quantization, pruning, distillation).
  • In-memory data stores (Redis, Memcached) and fast feature stores for low-latency feature retrieval.
  • Asynchronous and parallel processing of independent components to reduce overall latency.
  • Trade-offs between latency, accuracy, and cost; e.g., using a two-stage ranking system with a fast first stage and a more accurate but slower second stage only when needed.
  • Monitoring p99 latency and having fallback mechanisms to maintain user experience.

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

Q6

What privacy and personalization tradeoffs exist in this kind of destination prediction system?

Technical Trade-offsProduct Strategy
Author's notes

Destination data is sensitive, full stop.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by acknowledging that destination prediction inherently requires personal data, then systematically analyze the tradeoffs across privacy, utility, and user trust. Structure your answer by discussing technical, product, and ethical dimensions, and propose balanced solutions like on-device processing or differential privacy.

Pro tip: Emphasize that privacy and personalization are not mutually exclusive; with techniques like federated learning, you can achieve both. Also, mention that user transparency and control are key to maintaining trust, which ultimately benefits the product.

1. Define the Tradeoff

Explain that destination prediction relies on personal data (location history, time, etc.) to provide accurate predictions, but collecting and using this data raises privacy concerns. The tradeoff is between prediction accuracy and user privacy.

2. Identify Privacy Risks

Discuss specific privacy risks such as data breaches, unauthorized access, inference of sensitive information (e.g., home, workplace, medical visits), and potential for surveillance. Mention regulations like GDPR and CCPA.

3. Explore Technical Solutions

Propose technical approaches to mitigate privacy risks while preserving personalization: on-device prediction, federated learning, differential privacy, anonymization, and data minimization. Explain how each balances the tradeoff.

4. Consider Product and User Experience

Discuss how to communicate data usage to users, provide opt-in/opt-out controls, and design for transparency. Highlight that user trust is crucial for adoption and long-term success.

5. Evaluate Business Impact

Analyze how privacy-preserving measures might affect model performance, development cost, and user engagement. Suggest metrics to evaluate the tradeoff, such as prediction accuracy vs. privacy budget.

Key Points to Mention

  • On-device processing to keep sensitive data local
  • Federated learning to train models without centralizing raw data
  • Differential privacy to add noise and protect individual data points
  • Data minimization and purpose limitation principles
  • User consent, transparency, and control mechanisms
  • Regulatory compliance (GDPR, CCPA) and ethical considerations

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