Forward-deployed engineering is the discipline of landing inside a client's operation and making AI work there, on their data, in their mess. Its first two weeks are always the same: the CRM, the ERP and an operations spreadsheet all disagree about who the customers are, and nothing intelligent can be built until someone reconciles them. This workbench is that fortnight, compressed and governed: profile, gate, resolve, map, certify. Runs live in your browser, and it will profile your own CSV without the file ever leaving the page.
The pitch deck says "we connect to your systems". The reality of week one is a CRM export where the emails read N/A, an ERP vendor master where money is sometimes "S$25,000" and sometimes 50000, and an operations spreadsheet where the same customer is typed four different ways and one contract apparently ends before it starts. Roughly 80 percent of the effort in a field deployment is this reconciliation, and it is usually done as heroics: someone fixes things silently in a notebook, nobody records what changed, and month three delivers the invoice that posts to the wrong company. I have been the person on the client's floor for ten years of this, across command centres, banks and retail estates. The fix is not more heroics. It is treating data onboarding as a governed process with evidence, the way an auditor would treat a period close.
The workbench runs the onboarding pipeline in order. Profile: every column typed, counted and pattern-checked, so the conversation with the client's IT team happens over evidence. Gate: five deterministic rules with IDs and versions; failing rows are quarantined with reasons, never silently repaired. Resolve: candidate duplicate entities scored on name similarity, registration number and email domain, with the arithmetic printed per pair; the certain merges happen automatically under three stated rules, and the uncertain band goes to a human whose decision is recorded. Map: every surviving field lands in one small target model under a named transform, and the fields that map nowhere are parked on the record. Certify: a certificate that recomputes from the raw extracts on every load, and refuses to call itself complete while the adjudication queue has open items.
Across the three extracts the same eighteen companies appear fifty-four times under different spellings: Acme Engineering Pte Ltd, ACME ENGINEERING PTE. LTD., Acme Engrg. The stated rules merge the certain cases automatically, each with its evidence grid. Two pairs land in the human queue. One is a typo (Pinaccle for Pinnacle): merge it, and the decision is recorded as yours. The other is the trap: Solstice Aircon Engineering versus Solaris Aircon Engineering, two genuinely different firms whose names differ by four letters. No shared registration number, different email domains. Merge them and the demo tells you what you just did to their invoices; keep them separate and the certificate closes clean.
| Pair | Evidence | Right call |
|---|---|---|
| Acme (CRM) vs ACME (CRM dupe) | same registration no. · name 1.00 | auto-merge · authoritative key |
| Pinnacle vs "Pinaccle" (ops typo) | name 0.93 · no keys in ops | human queue → merge |
| Solstice vs Solaris Aircon | name 0.86 · different domains, no shared reg. no. | human queue → keep separate |
Where this stands, honestly. The extracts are synthetic, planted with the specific pathologies I keep meeting in real ones: mixed date formats, money as text, nulls dressed as N/A, near-duplicate names, one referential orphan. The profiler is real and will run on your own CSV entirely in your browser; the gates, resolution and certificate run on the synthetic client only, and the page says so at the point of upload. Scale is the honest gap: at fifty-four entities the pair comparison is trivial, while at five million it needs blocking strategies and a real matching engine. The governance shape, though, transfers exactly: stated rules for the certain, recorded human authority for the uncertain, and a certificate that knows the difference.
The trade-off you tune is the automation band. Widen the auto-merge rules and the queue shrinks but the trap gets merged eventually; narrow them and people drown in obvious matches, which is its own failure because tired reviewers rubber-stamp. The demo's answer is structural: automate certainty, evidence everything, and spend scarce human attention only where the arithmetic genuinely cannot decide.
A forward-deployed engagement earns its fee in week one or never. The Data Room is the week-one deliverable made tangible: by Friday the client holds a profile of every column they gave you, a quarantine list their team can action, a deduplicated customer spine with every merge either ruled or signed, and a certificate their auditor can read. The AI that arrives in week three then lands on ground that can bear its weight. The proposition in one line: I make the unglamorous 80 percent of deployment auditable, so the glamorous 20 percent actually ships.
sources 3 systems · 58 rows (CRM 20 · ERP 15 · Ops 23) gates G1 v1.2 … G5 v1.0 · 13 rows quarantined with reasons · 0 silent fixes entities 54 raw → 20 golden · 48 matches under stated rules · 2 on human authority open none · adjudication queue cleared mapping 16 fields under named transforms · 2 parked on the record transforms trim v1.0 · upper_uen v1.1 · normalize_phone v1.2 · parse_money v1.2 · parse_date v1.4
Ten years of delivery taught me that deployments do not die in the model layer; they die in the first fortnight, in the gap between "we connect to your systems" and what the systems actually contain. So I treat that fortnight the way my audit training says to treat anything that matters: rules with versions, exceptions with reasons, judgment reserved for the calls that deserve it, and a certificate at the end that someone can check. That is forward-deployed engineering done in an assurance firm's accent, and it is the accent clients keep paying for after the pilot.
Profile the three extracts and find the mixed date formats. Open the gates and read why each of the thirteen rows was quarantined. Then clear the queue yourself: merge the typo, and decide what to do about Solstice and Solaris before the demo tells you which one was the trap. Finish by dropping in any CSV of your own; it never leaves your browser.