Knoot Drama

Knoot Town

Career

Skill Station

Podcasts

Nobody Reads Your Job Description Anymore. Two Machines Do.

How to write a job description when a candidate's AI and your screening AI both read it before a human does. A 4-step method to make every line count.

Knoot Admin

Knoot Admin

September 22, 2026

Content

Why your job description quietly breaks in the AI era

The wishlist problem got worse

Vague lines become confident noise

Your screening AI inherits every flaw

A real example: the Senior Product Designer that wasn't

The WRAP method: how to write a job description that survives two AIs

Weight every line (W)

Rank into three buckets (R)

Anchor each line to a signal (A)

Prune what you can't weight or anchor (P)

The Knoot Angle

blog image
Here's something no one writing job descriptions wants to hear: the first two readers of your JD aren't human.
One is the candidate's AI. They paste your posting into ChatGPT and ask, “Should I apply? Rewrite my CV to fit.”
The other is your own screening AI, which turns your JD into the criteria it ranks everyone against.
By the time a person reads it, both machines have already made their calls.
So the real question isn't how to write a job description that sounds good. It's how to write a job description two machines can parse — and a human still wants to read.
Most JDs fail all three.

Why your job description quietly breaks in the AI era

The wishlist problem got worse

The JD lists 18 requirements. 8 actually matter.
A recruiter used to squint and guess which 8.
Now the candidate's AI reads all 18 as equally real — and rewrites a CV to hit every one.
You don't get fewer applicants. You get 800 that all look perfect.

Vague lines become confident noise

“Strong communication skills.” “Fast-paced environment.” “AI fluency.”
A person skims past these. An AI doesn't.
It treats every fuzzy line as a real filter and invents a match for it.
Garbage in, confident garbage out.

Your screening AI inherits every flaw

Here's the part that stings.
Whatever mess is in your JD becomes the ruleset your screening tool ranks by.
A bloated JD, bloated criteria, a shortlist sorted by the wrong things.
You didn't screen badly. You briefed the machine badly.

A real example: the Senior Product Designer that wasn't

You post a Senior Product Designer role.
The JD asks for Figma, design systems, user research, some front-end, “stakeholder management,” and “a strong portfolio.”
Six nice-to-haves stacked as if each were a dealbreaker.
The candidate's AI reads all six as required and manufactures a match for each. Your screening AI ranks by all six too.
The one designer who'd actually thrive — strong on systems, lighter on research — gets buried under portfolios engineered to tick every box.
You didn't lose them to a competitor. You lost them to your own JD.
A JD used to be a wish list a human interpreted. Now it's source code two machines compile.
Vague JD = vague criteria. Vague criteria = wrong shortlist. Wrong shortlist = your fault, not the AI's.
blog image

The WRAP method: how to write a job description that survives two AIs

You don't need an AI job description generator for this, and you don't need to copy a job description example off Indeed — that just inherits someone else's padding.
A spreadsheet and 20 minutes will do. Four moves. Call it WRAP:

Weight every line (W)

Give each requirement a number.
If it's 30% of the decision, say 30%.
If you can't assign a weight, you don't understand the role yet.
Weights force honesty. A wishlist lets you dodge it.

Rank into three buckets (R)

  • Must-have.
  • Nice-to-have.
  • Bonus.
No fourth bucket. No “would be nice.” Force the call.

Anchor each line to a signal (A)

For every requirement, write down what proof counts.
“5 years React” — what in a CV actually proves it?
If you can't name the signal, neither can the AI.

Prune what you can't weight or anchor (P)

Any line without a weight and a signal is decoration.
Cut it.
A shorter JD isn't weaker. It's sharper.
And it gives both machines less room to guess wrong.
Write the JD you'd want to screen against. Because you will.

The Knoot Angle

A JD is a wish list. The AI era just made that wish list load-bearing.
That's where Knoot's JD Analyzer fits. It doesn't write your JD — it reads the one you already have and breaks it into structured criteria: must-have, nice-to-have, bonus, each with a weight you can see and change.
It flags the lines that contradict each other, the requirements you forgot to prioritize, and the vague phrases that would screen blind. You stay in control of every weight — the analyzer just makes the guesswork visible.
And because those weighted criteria become the input for screening, your shortlist is never ranked against a JD nobody actually structured.
Let the machine parse the wish list. You decide what the role is really worth.
Knoot.AI blog: Nobody Reads Your Job Description Anymore. Two Machines Do.