HR pack
Claude Skill
Job Description Writer
Drafts honest, specific JDs that filter for the actual role — not buzzword soup.
What it does
Takes the role context (team, level, must-haves, nice-to-haves, comp band, location) and produces a JD with a clear "what you'll do" section grounded in real outcomes, a calibrated "what we're looking for" that distinguishes must-haves from nice-to-haves, and a "what success looks like in 6 months" section that filters for fit.
When to use
- ✓Hiring manager handed you a vague brief and you need a real JD
- ✓Existing JD is generic and isn't attracting the right candidates
- ✓Replacing a "10+ years experience, rockstar ninja" template with something honest
When not to use
- ✗You don't actually know what the role does. Talk to the hiring manager first.
- ✗Internal-only role posting where the existing template is fine
Install
Download the .zip, then unzip into your Claude skills folder.
mkdir -p ~/.claude/skills
unzip ~/Downloads/job-description-writer.zip -d ~/.claude/skills/
# Restart Claude Code session.
# Skill is now available — Claude will use it when relevant.SKILL.md
SKILL.md
---
name: job-description-writer
description: Use when drafting or rewriting a job description. Triggers on requests like "write a JD", "job posting", "role description", or pasted draft JDs to refine.
---
# Job Description Writer
Write JDs that filter for fit, not for buzzword compliance. Most JDs are bad because they read like wishlists copied from competitors. A good JD makes the wrong candidates self-select out.
## Required inputs
Before drafting, confirm you have:
1. **Role title and level** (e.g. Senior, Staff, Lead)
2. **Team context** — what the team does, how big it is, who they report to
3. **3-5 actual outcomes** the role owns in the first 6-12 months
4. **Must-haves** vs **nice-to-haves** (force the hiring manager to distinguish)
5. **Comp band** (if disclosing) or "competitive" + benefits
6. **Location/remote policy** with specifics
If any of these are missing, ask before drafting. Don't invent.
## Structure
```
[Role title]
[1-2 sentence hook about the team and why this role exists]
## What you'll do
- 4-6 outcome-oriented bullets (not tasks)
- Lead with the highest-leverage work
- "Own X" beats "responsible for X"
## What we're looking for
**Must-haves:**
- 3-5 hard requirements
- Each one specific enough to disqualify on
**Nice-to-haves:**
- 2-4 bonus signals
- Make clear these are NOT gating
## What success looks like in 6 months
- 3 concrete signals: shipped X, owned Y, ramped on Z
- This is the part candidates skip — but it's the most useful filter
## Compensation & logistics
[Comp band, location, hybrid policy, key benefits]
```
## Anti-patterns to strip
Reject these on sight:
- "10+ years of experience" (years ≠ skill)
- "Rockstar / ninja / wizard"
- "Wear many hats" (means: undefined role)
- "Fast-paced environment" (means: chaotic)
- "Self-starter" (means: no support)
- Listing every tech the team has ever touched as required
## Tone
- Direct. No corporate filler.
- Specific. "Ship 2-3 features per quarter to our 50k MAU dashboard" beats "drive product impact."
- Honest about hard parts. "This role includes ~1 week/quarter on-call" filters better than "occasional after-hours support."
## Output
Return the JD as clean markdown. If the hiring manager's brief had vague language, flag it at the top with "Clarifications needed:" before drafting.
Example prompts
Once installed, try these prompts in Claude:
- Write a JD for a Senior Backend Engineer joining our 4-person platform team. Must-haves: Go, Postgres at scale, on-call. Nice: Kafka. Hybrid Stockholm, comp 750-900k SEK.
- Rewrite this generic Product Manager JD to be honest about the role being 60% roadmap and 40% firefighting integrations.