Step 0: Set the rules from the posting, not from memory
I am pasting two documents: [my full resume text] and [the full job posting]. Work only from those two. If the posting does not say something you would need, say so and stop rather than assuming it. Do not ask me to repeat what I already gave you.
Step 1: Parse the file before you read a single word
First, tell me what a resume parser would actually extract from my file, in reading order: the contact block, each section heading it can recognise, each job title, employer and date range, and the skills list. Then flag every place a parser would break — a second column, a table, a text box, an icon standing in for a word, contact details in a header or footer, or a heading it would not recognise. If nothing would break, say so plainly.
Step 2: Pull the literal terms, spelled the way the posting spells them
Extract the 8 to 15 must-have terms from the posting: the exact job title, every named tool, every required certification or licence, and the skills it repeats. Copy its spelling and capitalisation — "PostgreSQL", not "Postgres"; "Search Engine Optimization (SEO)" on first use, then "SEO". Give me a table: Term | Where the posting asks for it | Where it appears in my resume | Which gate it fails.
Step 3: Pull the semantic cluster the ranker reads
For each must-have term, list the adjacent terms a meaning-based model would treat as equivalent — the tool I used instead, the synonym, the neighbouring skill. Mark which of those I have real evidence for. A term sitting alone in my skills list is a one-token claim. The same term inside a dated bullet with a measurable result is a dense one. Tell me which of my terms are orphaned.
Step 4: Cut anything you cannot defend
This is the pass that matters most, so run it before rewriting anything. Go through your Step 2 table and produce a CUT list: every term, tool, credential or job title you would have to invent for me to match this posting. You may not invent one. Also flag anything already in my resume that overstates or contradicts the posting. If my honest experience does not clear the bar for this role, tell me that directly — a gap I can see is worth more to me than a resume that falls apart in the interview.
Step 5: Rebuild the top third so one sentence satisfies both gates
Rewrite only my summary, my skills ordering, and the two or three bullets under my most recent relevant role. Leave the rest exactly as it is. Every rewritten bullet must be an action verb, the specific task, the tool or method, and a measurable result — and must carry at least one must-have term from Step 2 inside it, so the literal gate finds the word and the meaning gate finds the proof in the same sentence. Show each rewrite as before and after so I can see exactly what moved.
Step 6: Hand back the gap report, not a verdict
Close with two things. First, the retuned top third in full, as plain text I can paste into my own file. Second, a short list of the gaps I should either close or accept: the must-have terms I have no evidence for, the knockout questions the posting asks that my resume does not back up, and the terms worth re-checking in the posting's exact wording. Do not tell me my resume will pass or fail anything. Tell me what is missing and let me decide.