An ML project is weeks in and cannot answer basic questions: what exactly does the model predict, how would a prediction be checked, when will it be "done"? The team built pipelines and tried models, but there is no labelled column anywhere — or the label changes meaning depending on who you ask. Reviews go in circles; nobody can say whether the model works.
A stakeholder handed over a fuzzy ask — "predict customer unhappiness", "find risky users", "spot bad orders" — and the team started coding without pinning it down. Common in first ML projects and in teams where data scientists avoid "business" conversations. Everything downstream (features, metric, evaluation) silently depends on a definition that was never written. Linked module: 1.1 (Framing an ML problem).
The target variable was never defined as a measurable event. "Unhappiness" is a feeling, not a column: no table in the company records it, so there is nothing to learn from and nothing to score against. Confirm the diagnosis with three questions. (1) Point to the exact column (or the query that builds it) holding the outcome for past rows — if nobody can, this is your failure. (2) Ask two teammates to label the same ten customers by hand — if their labels disagree, the definition is fuzzy. (3) Ask what threshold and time window separate a 1 from a 0 — silence or debate means the framing step was skipped. Any proxy someone eventually suggests (support tickets? low ratings? refunds?) is a different target with different behaviour, and picking one IS the decision that was dodged.
Stop modelling and run a target audit before writing more code. Rewrite the ask as a measurable event with a threshold and a time window — "no order in the 60 days after the snapshot date", "rating of 2 or below within 30 days of delivery" — and get the stakeholder to sign off on that sentence, not on "predicting unhappiness". Build the column with pandas from data the company already stores, print its class balance, and circulate ten labelled examples so everyone sees what a 1 looks like. Only then return to features and models. If no data can compute any acceptable definition, the honest output is "we cannot frame this yet" — that finding saves months.
Never start an ML task without a one-page framing sheet: real question, target definition (event + threshold + window), problem type, candidate features, metric, baseline. Refuse to accept a target that names a feeling or a vague quality; ask "which column, built how?" in the very first meeting. Make the stakeholder approve the target sentence in writing. Ten minutes of definition argument up front replaces weeks of unusable modelling.
Q: "A product manager asks you to build a model that predicts customer unhappiness. What is your first step?" Strong answer: not a model or a dataset — first convert "unhappiness" into a measurable event with a threshold and time window, agreed with the PM, and verify the data to compute it exists. Mention the hand-labelling test for definition agreement and the class-balance check. Candidates who name an algorithm first fail this question; the interviewer is testing framing discipline.