motif

Adapt this in ChatGPT

Design an enrichment and scoring workflow for a hiring signal — GTM Engineer take-home

GTM Engineer45 minutes

Context

Northbeam Ledger is an invented accounting-automation product for mid-sized property management companies. The team believes the strongest buying signal is a company posting for a "Staff Accountant" or "AP Specialist" while running 500 or more units. Every Monday, a list of about 300 raw job-posting rows lands in a table. The team wants each row turned into a scored, routable lead with no manual lookup. You may build this in Clay, n8n, a spreadsheet with scripts, or write it out as a design if you have no such tool. Nothing is sent to anyone.

Materials

This week's input table is attached as postings.csv: a 30-row sample of the roughly 300 rows that arrive each Monday. Columns: posting_id, job_title, company_name_raw, location, posted_date (the run date is 2026-10-05), description_snippet (shortened here). Check the rows for these known quirks: some company names are staffing agencies posting on behalf of a client; some postings are reposts with a new posting_id; company_name_raw has spelling variants of one company. Unit counts, when present, appear only inside description_snippet. Available enrichment (assume each works but may return blank): company domain lookup, unit count and employee count from a company-data provider, and a contact finder for finance titles.

Data

Download materials.csv (30 rows, 6 columns)

Columns: posting_id, job_title, company_name_raw, location, posted_date, description_snippet.

The table scrolls sideways, so every column is there.

posting_idjob_titlecompany_name_rawlocationposted_datedescription_snippet
P-1021Staff AccountantHarbor Point MgmtTampa FL2026-10-01Manage AP for 1800 units across 14 communities
P-1022AP SpecialistTalentbridge StaffingRemote2026-10-04Our client a leading property manager seeks an AP specialist
P-1023Staff AccountantHarbor Point Management LLCTampa FL2026-09-26Manage AP for 1800 units across 14 communities
P-1024Staff AccountantCedar Row ResidentialAustin TX2026-10-02Own month-end for a portfolio of 640 apartment units
P-1025AP SpecialistLakeshore Property GroupChicago IL2026-09-30High-volume invoice processing for 2200 doors
P-1026Senior AccountantBrightwater CommunitiesDenver CO2026-10-03Lead GL close for 5 HOA-managed neighborhoods
P-1027Staff AccountantApex Search PartnersDallas TX2026-10-01Our client is hiring for a staff accountant role
P-1028AP SpecialistMaple & Vine Mgmt Co.Raleigh NC2026-10-04Process vendor invoices for 950 units and 3 commercial sites
P-1029Property AccountantStonebridge Realty MgmtPhoenix AZ2026-09-22Property-level reporting for 310 units
P-1030AP SpecialistLakeshore Property GrpChicago IL2026-10-03High-volume invoice processing for 2200 doors
P-1031Staff AccountantTalentbridge StaffingRemote2026-10-02Immediate need for a staff accountant at a property firm
P-1032Accounts Payable ClerkPinehurst ApartmentsCharlotte NC2026-10-04Enter and code invoices for 120 units
P-1033Staff AccountantRedhawk Property ServicesNashville TN2026-10-01Support AP and AR across 1500 units in 3 states
P-1034AP SpecialistSummit Ridge LivingSalt Lake City UT2026-09-28Manage AP workflow; portfolio of 780 units
P-1035ControllerHarbor Point MgmtTampa FL2026-10-02Lead finance team for 1800 units
P-1036Staff AccountantCorvus Staffing GroupAtlanta GA2026-10-03Seeking accountants for multiple property clients
P-1037AP SpecialistWillowbend Residential LLCColumbus OH2026-10-04Handle 1100 units worth of vendor payments
P-1038Staff AccountantCedar Row ResidentialAustin TX2026-09-18Own month-end for a portfolio of 640 apartment units
P-1039Staff AccountantEastgate Property MgmtBoston MA2026-10-02Manage books for 520 units and a small retail center
P-1040AP SpecialistNorthfield Management IncMinneapolis MN2026-10-01AP for 2600 units; 40 vendors per day
P-1041Staff AccountantParkview MgmtKansas City MO2026-10-04Property accounting; units not listed
P-1042Billing AnalystLakeshore Property GroupChicago IL2026-10-03Tenant billing support for 2200 doors
P-1043AP SpecialistBluehaven EstatesSan Diego CA2026-10-02Process invoices for 430 units
P-1044Staff AccountantKestrel Talent SolutionsRemote2026-10-04Our client a real estate operator needs a staff accountant
P-1045Staff AccountantBrightwater CommunitiesDenver CO2026-10-04Lead GL close for 5 HOA-managed neighborhoods
P-1046AP SpecialistGatehouse ResidentialOrlando FL2026-09-29Own AP for 1400 units across 9 properties
P-1047Staff AccountantMaple and Vine ManagementRaleigh NC2026-09-27Process vendor invoices for 950 units and 3 commercial sites
P-1048AccountantSunbelt Rentals MgmtHouston TX2026-10-03Part of a 4-person finance team; 3000 units
P-1049AP SpecialistOakline Housing PartnersPortland OR2026-10-01Affordable housing AP; 700 units with grant reporting
P-1050Staff AccountantHarborview ApartmentsSeattle WA2026-10-04Single-property accounting; 90 units

Showing the first 25 of 30 rows. Download the CSV for all rows.

Task

Design the workflow end to end. Build it if you have the tool, otherwise sketch it as a table and a diagram. Explain your decisions as you go.

  1. Order of steps: say why that order protects your enrichment budget (what you filter before you enrich).
  1. Columns: a column-by-column table of every column the workflow adds, with name, source, type, example value, and the decision it feeds.
  1. Scoring: a scoring rule with weights, using the signal (title match, unit count, posting freshness, repost status) and any enrichment output.
  1. Failure handling: what happens on a blank enrichment, a duplicate, a staffing-agency row, a rate limit, and a wrong company match.
  1. Output: what a sales rep sees for a top-scored row.
  1. Test: show how the design handles rows P-1021, P-1022, and P-1023 and at least two other rows of your choice.

Stay inside 45 minutes.

Deliverables

Rubric

DimensionWhat good looks likeEvidence to look forLevels, weak to excellent
Workflow designThe flow is repeatable and restartable over the whole weekly batch, with a stable key and cheap steps before expensive ones.Ordered steps with a stated reason; posting_id or domain used as a key; the run can resume after a failure.
  • Weak Steps listed in arbitrary order; no stable key; a failure means rerunning everything.
  • Adequate Ordered steps with no reason; key is the row number or missing; cannot resume after a failure.
  • Good Sensible order and a key such as posting_id; restart behavior mentioned but not specified.
  • Very good Ordered steps with reasons, a stable key, and a defined resume point after a partial failure.
  • Excellent Idempotent weekly run with keys, checkpoints, and a cost estimate per run; shows how week two differs from week one.
Data hygieneDedupes reposts and normalizes company names before enriching; excludes staffing agencies; checks that matches are right.Dedupe and name-normalization step placed before enrichment; a rule for agency rows; a spot-check of matched domains.
  • Weak Enriches every row as given; agencies and reposts pass through.
  • Adequate Removes obvious duplicates only; name variants and agencies still reach enrichment.
  • Good Dedupes and filters agencies before enrichment; name variants only partly normalized.
  • Very good Normalizes names, dedupes reposts, excludes agencies, and spot-checks matched domains.
  • Excellent All of the above, plus a rule for wrong company matches and a review sample that would catch drift.
Tool fluencyUses the tool that fits and gets a real result out of it, or sketches it cleanly when no tool is available.A working table or flow, or a precise sketch; no needless extra tools.
  • Weak No tool or sketch; hand-waves how steps run.
  • Adequate Opens a tool but gets little working; or a vague sketch.
  • Good A partial working flow or a precise sketch covering most steps.
  • Very good A working flow or a precise sketch that another builder could follow.
  • Excellent Uses the tool fluently, tests on real rows, and picks simpler tools where they fit.
Signal designTreats the hiring posting as a signal with freshness, strength, and noise, and weights it accordingly.Freshness decay or window; separate treatment of a stale or reposted posting; an argued weight on unit count.
  • Weak Scores on title alone or does not treat the posting as a signal.
  • Adequate Counts postings but ignores freshness, reposts, and strength differences.
  • Good Weights title, units, and freshness; stale postings and reposts treated the same.
  • Very good Freshness window, repost handling, and an argued weight on unit count.
  • Excellent Signal tiers with decay, a repost rule, and a stated way to learn from outcomes after launch.
Systems thinkingSpends credits only where a field changes a decision, and puts a human check at the points where the data is least reliable.Enrichment gated on an earlier filter; a named review point; a stated budget per run.
  • Weak Enrichment spent on every row; no human checks.
  • Adequate Some filtering before enrichment but no budget or review point.
  • Good Enrichment gated on an earlier filter; one review point named.
  • Very good Credits spent only where a field changes a decision; a stated budget per run and a review point.
  • Excellent Budget tied to expected value per lead, fallbacks when credits run out, and cost per qualified lead monitored.
Clear write-upThe column table and failure rules are specific enough that another builder could implement them.Precise column names and examples; failure cases with explicit outcomes.
  • Weak Column table missing or vague; a builder could not implement it.
  • Adequate Columns named with no sources, types, or examples.
  • Good Columns with source and example; failure cases listed but outcomes vague.
  • Very good Precise columns with examples and explicit outcomes for each failure case.
  • Excellent Table and failure rules exact enough to implement without a question; includes a rep-facing example.

Why unaided AI alone does not pass this

The 30 rows are in the data, so the work is decisions about those rows: which are agencies, which are reposts, which name variants are one company, and where a blank unit count changes the score. A generic "enrich then score" outline does not make those calls. The Harbor Point pair, the Lakeshore and Maple and Vine spelling variants, and the staffing agencies each need an explicit decision. A reviewer can verify the design by checking those rows against the planted problems and by asking the candidate to walk through two of their test rows and why the workflow treats them that way.

Notes for the reviewer

Planted problems: four staffing agencies (Talentbridge Staffing, Apex Search Partners, Corvus Staffing Group, Kestrel Talent Solutions), repeat postings or spelling variants of one company (Harbor Point, Lakeshore, Maple and Vine, Cedar Row, Brightwater), one row with no unit count (P-1041), and several small single-property postings. Candidates without Clay access are not disadvantaged: score design quality, not the tool. Strong submissions place dedupe and agency filtering before paid enrichment. To verify, ask the candidate to walk through two of their test rows. Not observed is informative, not punitive.

Adapt this in ChatGPT