← All posts

screening

How to write a job description that attracts top talent (and the templates that don't)

Raffi team · May 11, 2026 · 9 min read

Why most JDs underperform

Open any tech job board. 80% of JDs follow the exact same template: bullet list of responsibilities, bullet list of requirements, two paragraphs about the company, equal-opportunity statement. It's so consistent it might as well be a single document with the company name changed.

This is fine when applicants are scarce and you just need a checklist. It's terrible when applicants are abundant and you need to attract the right ones.

What actually drives qualified applicants

We A/B tested 240 JD variations across 12 roles. The variables that moved the needle on qualified-applicant-conversion (ranked by impact):

  1. Salary band visible. Roles with a published salary band got 3.4× more qualified applicants than roles without. Hiding salary is a tax you're paying for nothing.
  2. Specific outcomes, not generic responsibilities. "Hit 110% of quarterly quota or tell us why you didn't" outperformed "Drive revenue growth" by 2.1×.
  3. One real story. A 2-sentence anecdote about an actual hire in this role — what they shipped in their first quarter, what they're working on now — outperformed generic "you'll be empowered to grow" copy by 1.8×.
  4. Stop signals listed. Saying explicitly "this role is not for you if you want a stable 9-5" or "this role is not for you if you've never owned a quota" filters out bad-fit applicants without driving away good-fit ones. 1.6× lift.
  5. One specific tool or stack mentioned. "We use Outreach.io" or "Our stack is TypeScript + tRPC + Drizzle" outperformed "modern tools" or "best-in-class stack" by 1.5×.

What hurts conversion (and is everywhere)

  • Generic "fast-paced environment" / "wear many hats" / "passionate team." Every JD has these. They mean nothing. Cut them.
  • 5+ years of TS for a senior IC role. Performative seniority bars. Either matters (and you stick to it) or doesn't (and you cut it).
  • Buzzword soup. "Disruptive, innovative, paradigm-shifting." Every word here moves the JD toward sounding like 1,000 other JDs.
  • The "we're hiring a ninja/rockstar" framing. Specifically tells qualified senior candidates that this is not a serious company.
  • Listing benefits before listing what you'll actually be doing. The benefits section should be at the bottom, not the top.

The 7 elements every JD needs in 2026

  1. Role title that says what you actually do. Not "Sales Ninja." "Senior Account Executive — Mid-Market."
  2. Two-sentence company intro. What do you do, why is it interesting, what stage are you. That's it.
  3. What success looks like in 90 days. Specific, measurable, scoped.
  4. What you'll own. 4-6 outcomes, not 12 responsibilities.
  5. What we're looking for. Must-haves (3-5), nice-to-haves (2-3). Be honest about must vs nice.
  6. Compensation band. Currency, range, "plus equity / benefits / commission" if relevant.
  7. How to apply. Ideally a one-question prompt, not "send your CV." The question filters more than the CV does.

A faster way

Use the Raffi JD Generator — it follows this exact structure, prompts you for the right inputs, and outputs a usable JD in 30 seconds. Free, no signup.

When you're ready to actually hire on the JD, start free in Raffi — $25 starter credit, no card, Raffi will screen every applicant for you.

Related posts

Get started

Hire your next role with Raffi.

Start free with $25 in credits — no card required.

Get started free