On this page▾
- The job description is a conversion page, not a contract
- Write for one person, not the whole market
- Lead with the hook, not the boilerplate
- Sell the role honestly, including the hard parts
- Cut the requirements list in half
- Be specific about money and location
- Structure for the way people actually read
- Treat the apply step as part of the JD
- Measure conversion, then iterate like a marketer
Here is the uncomfortable truth: your job description is the single most-read piece of recruiting content you will ever produce, and it is almost certainly bad. Not bad in a typo sense. Bad in the sense that it was written by committee, optimized for legal cover, and reads like a furniture assembly manual. The average qualified candidate spends about 14 seconds deciding whether to keep reading. You are losing them in the first sentence.
Think about what the document actually is. It is a landing page. Its only job is to get the right person to take one action: apply. Every other goal you have piled onto it, covering the company legally, listing every conceivable duty, satisfying the hiring manager's ego, is fighting against that one job. A great JD does not describe the role. It sells the role to a specific person while quietly repelling everyone else.
The biggest mistake I see is writing a JD that tries to appeal to everyone. The result appeals to no one. A senior backend engineer and a bootcamp graduate read the same posting and both shrug. You wrote for the average of your applicant pool, and average is invisible.
Before you write a word, pick the exact person you want. Not a persona, a real archetype. The mid-level data engineer who is stuck maintaining someone else's spaghetti pipelines at a 2,000-person company and quietly wants ownership. Write the entire posting to that person. Use their language. Name the specific pain they have today that this role solves. When you write for one person clearly, you paradoxically attract more good applicants, because the right people feel recognized and self-select in.
A useful test: read your draft and ask whether a competitor could swap their logo in and post it unchanged. If yes, you have written a generic JD that converts no one. Specificity is the entire game.
Open any ten postings and nine of them start the same way: a paragraph about the company being a fast-growing, mission-driven, industry-leading something. Candidates have learned to skip it entirely. You are spending your most valuable real estate, the first three lines, on words that carry zero information.
Lead with the hook instead. What will this person actually get to do that they cannot do where they are now? What is the most interesting problem waiting for them? If you are hiring a first product designer, say that they will own design from zero, set the visual language, and ship to real users within their first month. That is a hook. The company blurb can live at the bottom where it belongs.
I tell founders to write the first two sentences as if they were texting a talented friend to poach them. You would not text someone a paragraph about your Series B. You would say, come build the thing nobody else has cracked, with a small team that ships every week. Start there.
Counterintuitively, the best-converting JDs tell candidates what is hard about the job. A posting that admits the role involves significant on-call rotation, or that the codebase has real legacy debt, or that the team is still figuring out its process, builds more trust than one that paints a frictionless paradise.
Why does honesty convert? Two reasons. First, the candidates you actually want are not scared off by hard problems; they are drawn to them, and they trust you more for being straight. Second, you pre-filter out the people who would quit in month three when reality hit, which is the most expensive kind of mishire. A line like, this role will have you context-switching across three products until we hire two more engineers, will lose you the wrong people and earn you the right ones.
The requirements section is where good candidates go to feel inadequate and walk away. The research here is consistent and damning: many qualified people, and disproportionately women and underrepresented candidates, will not apply unless they meet nearly every listed requirement. So every requirement you list that is not truly necessary is actively shrinking your qualified pool.
Go through your list and sort every item into must-have or nice-to-have. Be ruthless. Does this person genuinely need five years of a specific framework, or do they need to be a strong engineer who can learn it in two weeks? Most must-haves are nice-to-haves wearing a costume. Keep three to five real must-haves and label the rest as bonuses. Drop the degree requirement unless it is legally or functionally mandatory; for most roles it is neither and it just filters out talent.
Replace the laundry list with outcomes. Instead of listing twelve technologies, describe what success looks like in the first 90 days and the first year. Candidates read outcomes and immediately picture themselves doing the work, which is exactly the mental motion you want.
If your posting does not include a salary range, a meaningful share of strong candidates will skip it on principle, and in a growing number of jurisdictions you are legally required to include one anyway. Withholding the range does not protect your negotiating position; it just signals that you might waste everyone's time. Post a real range you would actually pay, not a range so wide it is meaningless.
Same with location and work model. Remote, hybrid, in-office, and the actual expectation around days in the office are deciding factors for most candidates, and burying them or being vague guarantees frustration on both sides. State it plainly near the top. Every ambiguity you leave is a reason for a good candidate to assume the worst and move on.
Nobody reads a JD top to bottom. They scan. So structure for scanning. Short paragraphs, clear section headers, and front-loaded information. The most important things, what you will do, what you must have, what it pays, where it is, should be reachable in the first scroll.
Kill the corporate voice. Write in second person, address the candidate directly, and use the words a human would say out loud. If a sentence has the word leverage or synergy in it, rewrite it. The tone of your JD is a preview of what working with you feels like, and a stiff, jargon-heavy posting tells candidates the company is stiff and jargon-heavy.
You can write the best posting in the world and still lose the candidate at the apply button. If clicking apply leads to a 30-field form that asks them to re-type the resume they just uploaded, your conversion rate collapses regardless of copy. The JD and the application are one funnel; measure them together.
Look at your own apply flow as a candidate would. Time it. Count the clicks. Every field you can drop, drop it. A good rule: ask only for what you genuinely need to make the first screening decision, and collect the rest later once there is mutual interest. The candidates worth the most are usually employed and busy, and a heavy form taxes exactly the people you most want.
Treat your JD the way a growth marketer treats a landing page. Track views, applies, and the applies-to-qualified ratio. If a posting gets lots of views and few applies, the copy or the apply flow is broken. If it gets lots of applies but few qualified ones, your filtering language is too loose or aimed at the wrong person. Each pattern points to a different fix.
Rewrite and test. Change the headline, cut three requirements, add the salary range, and watch what moves. Most teams write a JD once and never look at it again, which is insane given how much hiring outcome rides on it. The teams that treat job descriptions as living, measured assets out-recruit the ones that treat them as paperwork.
This is also where modern tooling earns its keep. At VScout we let teams draft a posting from a short brief, flag the requirements that are likely suppressing applications, and tie each JD directly to its conversion data so you can see which language actually moves qualified people. But the tool is downstream of the thinking. Get the framework right first: write for one person, lead with the hook, be honest about the hard parts, cut the requirements, show the money, and measure relentlessly. Do that and your JD stops being paperwork and starts being your best recruiter.
