NEW! The 2026 GTM Hiring Benchmarks are here!

gtm engineer · 9 min read

A 90-Minute Salesforce Work Sample for GTM Engineers

A go-to-market engineer reviewing a CRM data model and automation flow on a laptop screen

Two candidates walk into your Salesforce interview with nearly identical résumés. Both list Flow Builder, duplicate management, validation rules, Apex triggers “exposure”, three years in a revenue org. One of them has spent those three years clicking through Setup screens someone else architected. The other can tell you why the routing decision belongs on the Lead object instead of a Person Account, what happens to the assignment when an enrichment vendor overwrites Country with a two-letter ISO code, and which of your duplicate rules will silently merge two divisions of the same holding company. The conversation will not separate them. A scored 90-minute build will.

Why the résumé and the reference check both fail here

Salesforce skills are the easiest thing in go-to-market to claim and the hardest to verify by conversation. The ecosystem is vast — IDC projects the Salesforce economy will create a net gain of 11.6 million jobs between 2022 and 2028 — which means an enormous supply of people who have touched the platform and a much smaller supply of people who can model data inside it. When the pool is that big, your screen is doing the entire job of separating the two.

The stakes are not abstract. Most CRM users say less than half of their organisation’s CRM data is accurate and complete — 76% of them — and 37% report losing revenue as a direct consequence of poor data quality. Gartner prices the same problem at at least $12.9 million a year on average per organisation. That is the cost of hiring someone who builds a dedupe rule that looks correct in a demo and destroys account hierarchy in production.

Meanwhile the work your hire is supposed to delete is the work eating your reps’ week. Salesforce research found reps spend just 28% of their week actually selling, with the rest consumed by deal management and data entry. A routing Flow that fires in seconds and an enrichment write-back that fills fields nobody should be typing is how you claw that time back. Hire a clicker and you inherit the manual work plus a new layer of brittle automation on top of it.

The résumé tells you which screens a candidate has opened. The build tells you what they believe about your data.

The brief: three artefacts, 90 minutes, one sandbox

Give every candidate the same Developer Edition or scratch org, seeded with messy data on purpose — duplicate Leads with different casing, Accounts with inconsistent Country values, a handful of records with nulls where your real org has nulls. Then ask for three things.

1. A lead routing Flow

Route inbound Leads to the right owner using territory, company size and a named-account flag. Requirements to state explicitly: it must handle a missing value without erroring, it must be traceable after the fact, and it must not assign to an inactive user. Nothing else. The constraints you don’t give are where the signal lives.

2. A dedupe rule

Configure matching and duplicate rules for Leads and Contacts, and write two sentences on what the rule will get wrong. The second half matters more than the first. Anyone can switch on the standard rule; only someone who has been burned knows that fuzzy company matching will collapse “Acme Health” and “Acme Financial” into one record.

3. An enrichment write-back with upsert logic

Give them a small payload of enrichment data — a CSV or a mock callout response — and ask them to write it back without clobbering human-entered values. They should reach for an external ID, decide field by field whether the vendor or the human wins, and say out loud what happens on a second run of the same payload. Idempotency is the whole test.

Ninety minutes is deliberate. It is long enough to model and short enough that nobody can brute-force it by clicking through every Setup menu until something works.

The rubric — publish it with the brief

Structure is what makes any exercise predictive. Scored, structured interviewing lands at .42 validity versus .19 for unstructured conversation — more than double — and the honest modern estimate for work samples is .33, down from the .54 vendors still quote. Read that second number as a warning: an admired build is not a scored build. Without a rubric you are just watching someone type.

DimensionWeight1 — Clicker3 — Competent5 — Engineer
Data model reasoning30%Builds on whatever object is openPicks the right object, can’t defend itExplains object choice, cardinality and downstream impact
Flow design20%One giant Flow, hard-coded IDsClean Flow, some hard-codingSubflows or decision table, no hard-coded IDs, inactive-user guard
Dedupe judgement20%Enables standard rule as-isCustom matching rule, tunedNames the false-positive risk and the merge consequence unprompted
Upsert / idempotency20%Insert-only, duplicates on rerunUpsert on external IDUpsert plus field-level precedence and a rerun-safe answer
Error handling & observability10%NoneFault path existsFault path, logging, and a way to answer “why did this Lead route here?”

Score each dimension on the 1–5 scale, weight it, and set your bar before the first candidate sits down. Two interviewers score independently and reconcile — if you reconcile by discussion before scoring, you have re-invented the unstructured interview you were trying to escape.

Publishing the rubric with the brief costs you nothing. Candidates who can hit a 5 will hit it faster when they know what a 5 is, and candidates who need the ambiguity to hide will opt out — which is a free screen.

What each task actually exposes

TaskThe clicker doesThe engineer doesWhat it predicts on the job
Routing FlowNested decision elements, owner IDs typed inCustom metadata or decision table driving assignmentWhether every territory change becomes a ticket to you
Dedupe ruleTurns on standard matching, calls it doneTunes matching, documents the false-positive blast radiusWhether your account hierarchy survives the next data load
Enrichment write-backInserts records, duplicates on rerunUpserts on external ID, sets field precedenceWhether your vendor overwrites the AE’s hand-corrected title every night
Null handlingFlow errors, or silently skipsExplicit default path and a named owner-of-last-resortWhether inbound demo requests quietly go unassigned on a Friday
The debriefDescribes what they clickedDescribes what they decided and what they’d do with more timeWhether they can be trusted to design without supervision

The debrief row is the one most teams skip and the one with the most signal. Give the last 15 minutes to a walkthrough: what did you decide, what did you reject, what breaks first at ten times the volume? An engineer answers in trade-offs. A clicker narrates a click path.

Running it so it holds up

Pay for it, or keep it to 90 minutes and no more. Ninety minutes is the ceiling at which strong candidates in an 11.6-million-job ecosystem will still play along. Past that, you are filtering for desperation rather than skill.

Same org, same seed data, same clock, every time. Different starting conditions make your scores incomparable, and incomparable scores are unstructured interviewing wearing a rubric as a costume.

Allow documentation and AI assistance — and score the prompt. A GTM engineer who uses an assistant well and then catches its bad upsert suggestion is exactly who you want. Ban the tools and you are testing memory, not judgement.

Run it live, not as homework. Async take-homes get outsourced. The 90-minute live build with a silent observer and a screen share is the version that tells you whose hands were on the keyboard.

Put it early. This exercise is a better first-round filter than a behavioural screen, and it compresses your loop to days, not weeks. If you are hiring across the broader function, the same structure works for the adjacent roles in revenue operations and GTM engineering — swap the three artefacts for the stack in question.

Disqualifying failures versus coachable ones

Not every miss should end the loop. Sort them before you score.

Coachable: doesn’t know your specific matching-rule syntax, forgets where Duplicate Rules live in Setup, builds one Flow where two subflows would be cleaner, needs a hint on custom metadata. These are org-specific and learnable in a week.

Disqualifying: inserts instead of upserts and shrugs when you point out the rerun; cannot say what the dedupe rule will get wrong; hard-codes user IDs and sees no problem; builds routing with no default owner for null territory; describes the data model as “the fields”. These are beliefs, not gaps — and beliefs are what produce the $12.9 million a year in dirty-data cost that Gartner measures.

The single sharpest tell: ask whether the enrichment write-back should be a Flow, an Apex batch or an external job. A candidate who answers “it depends on volume and whether we need retries” is modelling. A candidate who answers “Flow, because that’s what I know” has told you the ceiling of their design range.

Fitting it into the loop

A four-stage loop that leans on the build, rather than adding it as a late-stage formality:

StageLengthPurposeWho runs it
Screen25 minScope, stack, comp alignment against current benchmarksRecruiter
Scored build90 minThe three artefacts, rubric applied independentlyRevOps lead + one engineer
Debrief & design45 minWalk their build, then extend it — add a new territory, a second vendorHiring manager
Team fit30 minCross-functional partners: sales leadership, demand genStakeholders

Notice that stage three builds on stage two. Extending their own artefact under questioning is the cheapest way to test depth, because they cannot fall back on a rehearsed story about work they may not have done. It is also where you find out whether they can explain a data decision to a sales leader — non-negotiable for anyone whose Flows will route the pipeline your sales team lives on.

One last discipline: score the build before the culture conversation, never after. Once a panel likes someone, the rubric quietly bends. Locking scores first is how you keep the .42-versus-.19 advantage you built the rubric to capture — and how you stop a Salesforce hire from becoming the reason 37% of CRM users lose revenue to bad data. Your CRM is the asset that routes revenue. Hire the person who treats it like one.

Written by Riley Spraggs

Frequently asked questions

How long should a Salesforce work sample take?

Ninety minutes, run live with a screen share. It is long enough for a candidate to model the data and short enough that nobody can brute-force it by clicking through every Setup menu. Past that length you start filtering for desperation instead of skill, especially in an ecosystem IDC projects will add a net 11.6 million jobs between 2022 and 2028.

What should the scoring rubric measure?

Score five weighted dimensions on a 1-to-5 scale: data model reasoning, Flow design, dedupe judgement, upsert and idempotency, and error handling with observability. Have two interviewers score independently before they discuss. Structured, scored interviewing reaches .42 validity against .19 for unstructured conversation, so the rubric is doing most of the predictive work.

Why does the dedupe rule matter more than the Flow?

Because bad CRM data is the most expensive failure mode in go-to-market. Seventy-six percent of CRM users say less than half of their organisation's data is accurate and complete, 37 percent have lost revenue as a direct consequence, and Gartner puts the average cost of poor data quality at at least 12.9 million dollars a year. A dedupe rule built without judgement is how that bill gets written.

Should candidates be allowed to use documentation or AI assistants?

Allow them and score how they are used. A candidate who prompts an assistant well and then catches its unsafe upsert suggestion is exactly the hire you want. Banning the tools tests memory rather than judgement.

Which mistakes should disqualify a candidate?

Inserting instead of upserting and shrugging when you point out the rerun, being unable to name what their dedupe rule will get wrong, hard-coding user IDs, and routing with no default owner for a null territory. Those are beliefs about data, not gaps in org-specific knowledge, and they do not coach out in a week.

Hire Salesforce talent who model data, not just click Setup

Talk to our Salesforce recruiting team