Interview Insights · ML Engineer
Why ML Engineers Who Ask Questions Back Impress Me Most
Quick summary — ML questions back
Asking questions back shows me you know that most ML failures come from a misunderstood problem, not a weak algorithm. In ML interviews I deliberately leave problems vague. A candidate who asks two or three sharp questions about purpose, labels, limits and error cost is showing the exact skill the job needs: turning a fuzzy business request into a well-defined learning problem. The trick is to ask a few focused questions, state the remaining assumptions out loud, and then commit to a design.
In this guide you will learn:
- Why vague ML questions are deliberate and what they test
- The four groups of questions that change an ML design
- How an answer about error cost changes your decision threshold, with code
- How many questions are too many before it looks like stalling
- What to ask at the end of an ML interview to stand out
SECTION 01Why I keep ML design questions vague on purpose
When I say 'Design a model to detect fraudulent transactions,' I leave out almost everything that matters. I do not say how many transactions arrive per second, whether we need an answer before the payment goes through, how we find out a transaction was fraud, or what happens when we block a genuine customer. This is not laziness. In a real job, nobody hands you a clean problem statement either.
A candidate who immediately says 'I would use gradient boosting with SMOTE' has answered a question I did not ask. A candidate who says 'Before I pick anything, is this decision made in real time during checkout, or reviewed later in a batch?' has shown me they know the design depends on the context. That single question tells me more than ten minutes of algorithm talk.
| Question back | What it reveals | How it changes the design | Signal I read |
|---|---|---|---|
| Is this real time or batch? | Thinks about serving | Real time needs fast features and a light model | Has seen production limits |
| How do we learn a case was fraud? | Thinks about labels | Chargebacks arrive weeks later, so labels are delayed | Understands label lag |
| What does blocking a real customer cost? | Thinks about error cost | Sets the threshold and the metric | Business-aware |
| What exists today? | Respects the baseline | Rules engine becomes the baseline to beat | Practical, not academic |
Interviewer: Design a model to detect fraudulent transactions.
Candidate: I would use XGBoost because it works well on
tabular data. Fraud is imbalanced, so I would apply SMOTE,
then tune hyperparameters with grid search and report F1.
Interviewer: The decision must happen in under 100 ms
during checkout. Does your plan still work?
Candidate: ...I think so?Interviewer: Design a model to detect fraudulent transactions.
Candidate: Three quick questions first.
1. Is the decision made during checkout or reviewed later?
2. How do we find out a transaction was fraud?
3. Is there a rules system today that I should beat?
Interviewer: Checkout, under 100 ms. Labels come from
chargebacks. Yes, there are rules.
Candidate: Then I will assume features must be precomputed
or cheap to fetch, labels lag by weeks so my training window
ends early, and the rules engine is my baseline. Let me
sketch the pipeline with those limits.
The interviewer gave the same information in both cases. The difference is that the second candidate asked for it before building on sand. The first candidate had to defend a design that ignored the most important limit.
SECTION 02The error-cost question and how it moves your threshold
The single most valuable question back in a classification problem is: 'What does each kind of mistake cost?' It sounds like a business question, but it has a direct technical consequence. Most classifiers output a probability, and the default cut-off of 0.5 assumes both errors cost the same. They almost never do.
If blocking a genuine customer costs a support call and some goodwill, while missing a fraud costs the full transaction amount, the best threshold sits far from 0.5. Candidates who ask about cost and then say 'I would pick the threshold that minimises expected cost on the validation set' show me they can connect a business answer to a line of code.
| Answer you get | Metric to focus on | Threshold direction | Typical example |
|---|---|---|---|
| Misses are very expensive | Recall on the positive class | Lower the threshold | Fraud, disease screening |
| False alarms are very expensive | Precision | Raise the threshold | Auto-blocking accounts, spam deletion |
| Humans review every flag | Precision at a fixed review capacity | Top-k by score | Manual fraud queue |
| Both costs are similar | F1 or accuracy if balanced | Near 0.5 is reasonable | Simple topic tagging |
import numpy as np
from sklearn.datasets import make_classification
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
X, y = make_classification(n_samples=6000, weights=[0.97], random_state=7)
X_tr, X_va, y_tr, y_va = train_test_split(X, y, stratify=y, random_state=7)
prob = LogisticRegression(max_iter=1000).fit(X_tr, y_tr).predict_proba(X_va)[:, 1]
COST_FP = 1 # e.g. a support call for a blocked genuine user
COST_FN = 20 # e.g. losing the transaction amount
best = None
for t in np.arange(0.05, 0.96, 0.05):
pred = (prob >= t).astype(int)
fp = int(((pred == 1) & (y_va == 0)).sum())
fn = int(((pred == 0) & (y_va == 1)).sum())
cost = fp * COST_FP + fn * COST_FN
if best is None or cost < best[1]:
best = (round(float(t), 2), cost)
print("best threshold, total cost:", best)"You mentioned a missed fraud costs much more than a blocked
genuine payment. So I would not use 0.5. I would put the two
costs into a simple expected-cost function and choose the
threshold that minimises it on the validation set.
The cost ratio here is my assumption. I would confirm it with
the business team, because the threshold is very sensitive
to it."
The cost numbers in the script are placeholders. In the interview, ask for the real ratio or state your own assumption clearly. Either way, the interviewer sees the link between the question you asked and the design choice you made.
SECTION 03How many questions is right, and what to ask at the end
There is a failure mode on the other side. Some candidates learn that questions impress and then ask eight of them in a row without ever committing. After a point, questions start to look like stalling. A good rhythm is two to four questions, then a short list of stated assumptions for everything else, then a design.
The second chance to ask questions back comes at the end, when the interviewer says 'Do you have any questions for us?' Most candidates ask about the work culture or the next round. An ML engineer who asks how models reach production, who owns the data pipelines or how they handle retraining shows they are already thinking like a team member.
| Moment | Good number of questions | What to do after | Warning sign |
|---|---|---|---|
| Start of a design problem | Two to four | State remaining assumptions, then design | Asking without ever committing |
| Mid-way, stuck on a choice | One | Pick an option and give the reason | Asking the interviewer to decide |
| Coding or SQL task | One or two about input format and edge cases | Start writing | Asking things the prompt already says |
| End of the interview | Two or three about the team's ML work | Listen and follow up once | Only asking about salary or leave |
QUESTIONS THAT SHOW ML MATURITY
1. How does a model go from a notebook to production here?
Who reviews it?
2. How do you find out a deployed model has degraded?
3. Where do training labels come from, and how fresh are they?
4. What does a typical first project look like for someone
joining this team?
5. Which part of the ML pipeline causes the most trouble today?
Pick two or three. Ask a follow-up on one answer.TEMPLATE AFTER YOUR QUESTIONS
"Thanks. For the rest, I will assume:
- around ____ predictions per day,
- labels arrive about ____ after the event,
- we can store features in ____,
- the current baseline is ____.
If any of those are wrong, stop me and I will adjust.
Given that, here is my design: ..."
Notice the final line of the assumption template: 'If any of those are wrong, stop me.' It invites correction without handing control away, and it keeps the interview moving.
SECTION 04A question bank for common ML interview prompts
Prepare these before the interview so the right questions come out naturally. For each prompt type, pick the two or three that would change your design most.
Examples: fraud, churn, spam, defect detection
- What decision does the prediction drive?
- What does a false positive cost? A false negative?
- How and when do we get the true label?
- How rare is the positive class roughly?
- Is there a rule-based system today?
- Do we need an explanation for each prediction?Examples: products, videos, courses, jobs
- Where is the recommendation shown, and how many slots?
- How many users and items, roughly?
- How do we handle new users and new items?
- What counts as success: click, purchase, watch time?
- How fast must the list refresh after a user action?
- Are there items we must never show together or at all?FORECASTING (demand, load, sales)
- At what level: per store, per product, per day?
- How far ahead do we predict?
- Are holidays and promotions known in advance?
NLP (classification, search, chatbots)
- What languages and how much code-mixing, like Hinglish?
- How much labelled text exists today?
- Is a wrong answer just unhelpful, or harmful?
- Can we call an external model, or must it run in-house?
SECTION 05Habits that make your questions land well
Good questions can still sound weak if they are delivered badly. These habits keep them sharp.
- Announce how many you have — Saying 'three quick questions' sets a limit for yourself and tells the interviewer you have a plan, not an endless list.
- Ask the design-changing one first — Lead with the question whose answer would change your approach the most, such as real time versus batch.
- Offer a default with each question — Say 'Is it real time? If not, I will assume a daily batch.' That shows you can proceed even without an answer.
- Write the answers down — Note each answer where the interviewer can see it, then refer back to it while you design. It proves you are using what you learned.
- Never ask what the prompt already said — Re-asking a stated detail suggests you were not listening. Restate it instead to confirm you understood.
SECTION 06Interview Q&A — ML questions back
Q1Design a model to predict which customers will cancel their subscription.
I would first ask how the prediction will be used, for example a retention team calling customers, because that sets the metric. If the team can call a limited number per week, I would optimise precision in the top-k scores. I would also ask how we define churn and when we know it, then split by time and use a simple logistic regression as the baseline.
Q2Why did you ask about labels before choosing a model?
Because labels decide what is even possible. If fraud labels come from chargebacks weeks later, my most recent data has incomplete labels, so I must end the training window earlier. If labels are noisy, a complex model may just learn the noise. The algorithm choice comes after that.
Q3How would your design change if predictions had to be served in under 50 milliseconds?
I would avoid features that need heavy joins at request time and precompute them into a feature store or cache. I would prefer a compact model such as logistic regression or a small tree ensemble, measure latency with realistic payloads, and keep a rules fallback if the model service is slow.
Q4What would you do if the interviewer refused to answer your clarifying question?
I would state a reasonable assumption out loud and continue, for example 'I will assume batch scoring once a day.' Then I would mention how the design would change if the assumption were wrong. Interviewers sometimes do this on purpose to see whether you can move forward with uncertainty.
Q5What question would you ask us about our ML work?
I would ask how you detect when a deployed model starts to degrade and who acts on it. The answer tells me how mature the ML pipeline is and what I would be responsible for in the first few months.
SECTION 07Test yourself — ML questions back quiz
Five questions. No sign-up.
0 / 5Pick an answer to see why it is right or wrong.
SECTION 08Frequently asked questions
Should I ask clarifying questions in an ML engineer interview?
Yes. Two to four focused questions about purpose, labels, latency and error cost show you can turn a vague request into a clear ML problem. Then state your assumptions and start designing.
What are good clarifying questions for an ML system design interview?
Ask whether predictions are real time or batch, how the true label is obtained and when, what each type of error costs, how much data exists, and what system is used today. Choose the ones that would change your design.
Can asking too many questions hurt in an interview?
Yes. If you keep asking without committing to a design, it can look like stalling. Ask a few, state assumptions for the rest, and move on.
What questions should I ask the interviewer at the end of an ML interview?
Ask how models are deployed and reviewed, how they monitor model quality, where training labels come from, and what a first project usually looks like. These show you are thinking about the real job.
How do clarifying questions help in ML coding rounds?
One or two questions about input format, missing values or edge cases prevent you from solving the wrong problem. Keep them short and start coding once you have the answers.
Is there a course that covers ML Engineer interview answers?
Yes. Uncodemy's Machine Learning Training Course in Noida (classroom and online) includes live projects, one-to-one mock interviews and resume reviews, so you practise ML Engineer interview answers with trainer feedback before the real interview. You can book a free demo class from this page to see how the sessions work.
SECTION 09Related reads
Classroom & online · Noida
Practise turning vague problems into clear ML designs
Our Machine Learning Training Course includes ML system design practice, where you learn to ask the right questions about data, latency and error cost before you build.
Talk to a counsellor for current fees- ML system design practice
- Real project case studies
- Mock interviews with feedback
- Weekday & weekend batches