Skip to content
Andrew Deighan

work / job-matching

02AI job matching engine

DUDsJobs

A five-model pipeline that sends each task to the cheapest model able to do it well. Rules and a cheap gate settle 82% of assessments.

DUDsJobsdudsjobs-matches
DUDsJobs job list. Each match shows a score, why it matches, and the gap, with actions to apply, prepare an application, save or bin it.
Matches, best first, each with why it matches and the gap. Test account; jobs and scores on screen are test data.

1The problem

DUDsJobs is an AI job-hunting service I founded and built, launched in September 2026.

The job data feed already costs more than the AI, so every model call has to earn its place.

2What I built

A five-model pipeline that routes each task to the cheapest model able to do it well: a low-cost gate model (Jev), Claude Haiku for extraction, Sonnet for matching, Opus for CV parsing and writing, with DeepSeek as a second provider.

Rules and the gate settle 82% of job assessments. The mid-tier model reads the other 18%.

The gate rejects 47% of candidates in under half a second.

How a job is assessed, cheapest step first
How a job is assessed, cheapest step first1. Job data feed (Data) 2. Rules (No model): Settle most jobs with no model 3. Gate model (Jev): Rejects 47% in under half a second 4. Extraction (Haiku) 5. Matching (Sonnet): The 18% that rules and the gate cannot settle 6. If it fails: Provider fails after three retries: Failover to DeepSeek, re-scored next run 7. If it fails: Monthly budget reached: Matching continues on rule scores alone 8. CV parsing and writing (Opus) 9. Matches shown to the user (Person)Job data feeddataRulesSettle most jobs with no modelno modelGate modelRejects 47% in under half a secondjevExtractionhaikuMatchingThe 18% that rules and the gatecannot settlesonnetProvider fails after three retriesFailover to DeepSeek, re-scored next runfallbackMonthly budget reachedMatching continues on rule scores alonefallbackCV parsing and writingopusMatches shown to the userperson
stepa personfailure pathright-hand tag: model or rule used

3How the AI is controlled

It may
  • Route each task to the cheapest model able to do it well. j1
  • Fail over to DeepSeek when the primary provider errors, times out or rate-limits, after three retries. j5
It may not
  • Fail over on a bad request or a refusal. Failover never triggers on those. j5
  • Keep a second-provider score. Anything DeepSeek scores is re-scored by the primary model on the next run. j5
  • Spend past a user’s hard monthly AI budget. j6
Who approves
  • Each user has a hard monthly AI budget. Matching never spends past it. j6
When it fails
  • Provider failure: automatic failover to DeepSeek after three retries. j5
  • Budget reached: matching continues on rule scores alone. j6

4The result

Run log9 rows · source: fact file
MeasureValueFact
Production runs succeededAll four failures were in the launch cut-over74 / 78j7
Median AI cost per search run$0.09j4
Assessments settled by rules and gate82%j2
Assessments read by mid-tier model18%j2
Candidates rejected by the gate47%j3
Gate decision time< 0.5 sj3
Retries before provider failover3j5
Models in the pipeline5j1
Live with paying users sinceSep 2026j7

Live with paying users since September 2026.

The job data feed costs more than the AI.

5Screens

DUDsJobsdudsjobs-fit
DUDsJobs job detail with a fit breakdown by role, skills, industry, experience, language, location, salary and work authorisation, and the rule score.
One job, with the rule-scored fit breakdown beside the job description. Test account.
DUDsJobsdudsjobs-hunt
DUDsJobs hunt dashboard showing what the latest search returned and a search diagnostic explaining what is limiting the results.
Hunt dashboard and search diagnostic. Demo account; figures on screen are test data, not results.