Question 2Data and SQL
The customer's data is spread across five systems that disagree. How do you get one clean view?
Real deployments rarely have one source of truth. They want a practical approach, not a perfect one.
“Data Engineering & Integration: Proficiency in complex SQL, ETL/ELT pipeline design, and experience building system integrations connecting AI solutions to enterprise and telecom data sources.”Senior Engineer, Forward Deployment · T-Mobile
The answerFour steps
- 1
List each system and what it's the best source for
Say it like this
“I'd sit with finance and sales and fill in a small table: for each field, which system wins. Billing address from SAP, account owner from Salesforce, and the spreadsheet only for region.”
Why it scores
The business decides which system wins per field. The engineer doesn't pick the truth alone.
- 2
Pick matching keys and decide how to handle records that don't match
Say it like this
“Then the join key. The SAP customer number exists in three of the five; for the other two I match on tax ID, and anything unmatched goes to a review list, not a guess.”
Why it scores
A real key plus a plan for leftovers. Unmatched records are where wrong merges come from.
- 3
Load into one place with clear rules, and keep the raw copies
Say it like this
“I land raw copies untouched, then build the clean table from them with those rules written as code, so I can rebuild it when a rule changes.”
Why it scores
Raw copies and rules as code: any number can be traced back and rebuilt.
- 4
Show the customer the mismatches; they often fix the source
Say it like this
“The first run showed 1,200 accounts with conflicting addresses. I sent finance the list, and they fixed 900 at the source.”
Why it scores
Turns mismatches into a deliverable. Fixing the source beats patching downstream forever.
StrongAll together
About a minute, out loud. The marked parts are the four steps; hover one to find it above.
Take a distributor whose accounts live in Salesforce, SAP, Zendesk, a shipping tool and a spreadsheet. I'd sit with finance and sales and fill in a small table: for each field, which system wins. Billing address from SAP, account owner from Salesforce, and the spreadsheet only for region.1 Then the join key. The SAP customer number exists in three of the five; for the other two I match on tax ID, and anything unmatched goes to a review list, not a guess.2 I land raw copies untouched, then build the clean table from them with those rules written as code, so I can rebuild it when a rule changes.3 The first run showed 1,200 accounts with conflicting addresses. I sent finance the list, and they fixed 900 at the source.4
WeakThe answer that fails
Sounds fine. Common. Scores low.
“I'd pick the most reliable system as the master, pull everything into a data warehouse, dedupe the records, and build a single customer table that every team uses from then on.”
Interviewer's note
One master for every field is rarely true. No rules agreed with the business, no plan for records that don't match.
PracticeTwo minutes, then they push back
Your turn
The customer's data is spread across five systems that disagree. How do you get one clean view?
Answer like you're in the room: about two minutes, no notes. Say it out loud, even alone. It feels different from thinking it. Then check your answer against what interviewers score.