Uber · Project Deep Dive
Describe an ML system you built
TrueInterview
October 7, 2026 · 2 min read
Walk through a machine learning system you have designed, built, or owned in the past. Address the problem statement, business objective, data sources, feature engineering, model selection, training and evaluation workflow, deployment architecture, monitoring, and the system's impact. Then describe how you manage conflicts or disagreements with teammates or cross-functional partners, particularly when there are differing views on model choice, metrics, product trade-offs, or implementation direction. Provide a concrete example when you can. Overview: This question assesses end-to-end ML system design and ownership—covering problem framing, data and feature engineering, model choice, training and evaluation, deployment, monitoring, and measured impact—and it examines interpersonal leadership in resolving conflicts over model decisions, metrics, or product trade-offs. Solution A strong response should be organized, concrete, and self-aware. Part 1: Describing a past ML system Follow a clear sequence:
- Problem and goal
- Which user or business problem were you addressing?
- Which metric was important: CTR, conversion, fraud detection recall, latency, revenue, retention, etc.?
- Constraints
- Data volume, label quality, latency, privacy, fairness, cost, interpretability, cold start, or online serving restrictions.
- System design
- Data ingestion and storage
- Feature pipelines or a feature store
- Training pipeline and retraining frequency
- Online inference path
- Monitoring and alerting
- Modeling choices
- Why you began with a baseline
- Why a particular model family suited the problem
- Trade-offs between performance and complexity
- Evaluation
- Offline metrics and why they were relevant
- Online A/B test design
- Guardrail metrics such as latency, fairness, abuse, or user dissatisfaction
- Results and lessons
- Quantify impact where possible
- Mention what went wrong, what you changed, and what you would improve now A compact template:
- "We had to make X better for Y users."
- "The main constraints were A, B, and C."
- "I built a pipeline where data moved from... to..."
- "We began with baseline model M, then moved to N because..."
- "We evaluated success using... and saw..."
- "The biggest lesson was..." Part 2: Handling conflict and disagreement Interviewers typically look for maturity, not merely agreement. A strong method:
- Clarify the disagreement
- Does it concern goals, metrics, timeline, ownership, or technical approach?
- Listen first
- Understand the other person's assumptions and constraints.
- Ground the discussion in shared goals
- Reframe the conversation around business impact, user outcome, and measurable success.
- Use data or experiments
- Suggest an offline comparison, spike, prototype, or A/B test.
- Make the decision explicit
- Identify the decision-maker, record trade-offs, and commit after the decision is made.
- Preserve trust
- Keep it impersonal; show respect even when you disagree. A good example answer:
- "A product partner wanted to optimize short-term CTR, while I worried it would damage retention. I first clarified the business goal and presented historical data connecting clickbait-style ranking changes to lower long-term engagement. We agreed to run an experiment with both CTR and 7-day retention as success criteria. The outcome showed a small CTR gain but a larger retention loss, so we selected the more balanced ranking objective. I documented the trade-off and aligned the team on the new metric set." What makes the answer strong
- Genuine ownership
- Measurable impact
- Honest trade-offs
- Evidence of collaboration
- Reflection on what you learned