Job Description Template Library for Startups

Type: Execution Recipe Confidence: 0.87 Sources: 6 Verified: 2026-03-12

Purpose

This recipe produces a complete library of stage-appropriate job description templates across engineering, sales, marketing, operations, and customer success functions — with inclusive language verified, salary transparency compliant, and optimized for applicant conversion on LinkedIn, Indeed, and startup job boards. The output is ready-to-customize JD documents, a bias-detection review checklist, and a multi-channel publishing workflow. [src1]

Prerequisites

Constraints

Tool Selection Decision

Which path?
├── Founder writing first 1-3 JDs, no budget
│   └── PATH A: Manual — Google Docs + free bias checker + manual posting
├── Founder writing first 1-3 JDs, some budget
│   └── PATH B: Assisted — Google Docs + Textio/Datapeople + LinkedIn Jobs
├── Recruiter building JD library for 5-10 roles
│   └── PATH C: Systematic — ATS templates + bias tool + multi-channel
└── HR team scaling hiring across departments
    └── PATH D: Enterprise — Full ATS + Textio + programmatic distribution
PathToolsCostSpeedOutput Quality
A: Manual FreeGoogle Docs + Gender Decoder + Wellfound$02-3 hrs/roleAdequate
B: AssistedGoogle Docs + Textio trial + LinkedIn Jobs$0-300/post1-2 hrs/roleGood
C: SystematicAshby/Greenhouse + Ongig + multi-channel$300-600/mo45-60 min/roleHigh
D: EnterpriseFull ATS + Textio + programmatic$1,000+/mo30 min/roleExcellent

Execution Flow

Step 1: Audit Role Needs and Prioritize

Duration: 1-2 hours · Tool: Spreadsheet + hiring manager input

Complete the role audit worksheet for each open position: standard title, function, seniority, stage context, reporting line, and six core questions (problem solved, 30/60/90-day success, must-have vs nice-to-have skills, compensation, location policy, differentiation from BigTech). Prioritize revenue-generating roles first, then product-building, then scaling roles.

Verify: Each role has all 6 questions answered with specific, measurable responses. · If failed: If hiring manager cannot articulate success criteria, the role is not ready to hire for.

Step 2: Select and Customize Template by Function

Duration: 1-2 hours per role · Tool: Template library + text editor

Apply universal JD structure: hook (2-3 sentences), outcomes-based responsibilities (5-7 bullets), split requirements (3-5 must-haves + 2-3 nice-to-haves), compensation with equity, and company context. Add function-specific sections: tech stack for engineering, OTE breakdown for sales, channel ownership for marketing, operational scope for ops, portfolio metrics for CS. [src2] [src5]

Verify: Each JD follows the universal structure and includes function-specific details. · If failed: If JD reads like a generic job board post, add concrete numbers, tools, and outcomes.

Step 3: Adapt for Startup Stage

Duration: 30-60 minutes per role · Tool: Text editor

Stage adaptation: Pre-seed/seed JDs use first-person founder voice, emphasize equity and mission, reduce requirements to 2-3 must-haves. Series A JDs add team context and career path. Series B+ JDs use structured competency frameworks with metrics. Ashby recommends including a self-selection section for early-stage roles. [src4]

Verify: JD tone matches actual startup stage. · If failed: If too corporate for seed stage, strip formality. If too casual for Series B+, add structure.

Step 4: Optimize for Inclusion and SEO

Duration: 30-45 minutes per role · Tool: Textio, Gender Decoder, or Ongig

Run every JD through bias detection. Remove gendered language, unnecessary degree requirements, and age-biased terms. Add inclusive signals (accommodations statement, visa sponsorship status). Optimize titles for search: standard title + seniority + key technology + location/remote. Target 8th-grade reading level. [src3]

Verify: Bias tool score is 80+ (Textio scale). Title matches top search terms on LinkedIn/Indeed. · If failed: Replace each flagged phrase and re-run until score passes.

Step 5: Build Approval Workflow

Duration: 30 minutes (one-time setup) · Tool: Document management

Establish review process: hiring manager drafts from template, recruiting reviews compliance and compensation, bias tool scan runs, final sign-off (founder at seed/Series A, hiring manager + HR at Series B+). Target turnaround: 2-3 business days for new roles, same-day for reposts. [src6]

Verify: Workflow documented, stakeholders identified, turnaround expectation set. · If failed: If approval takes 5+ days, reduce approvers to 2 maximum.

Step 6: Publish Across Channels

Duration: 1-2 hours per role · Tool: ATS or manual posting

Distribute across three tiers: Tier 1 free (careers page, Wellfound, LinkedIn organic, HN Who's Hiring, referral blast), Tier 2 paid (LinkedIn Jobs, Indeed sponsored, industry boards), Tier 3 community (Slack groups, Twitter/X, Reddit). Adapt format per platform: LinkedIn under 300 words with salary up front, Indeed 700-2,000 words with full details, Wellfound emphasize equity and mission, HN plain text with tech stack. [src1]

Verify: JD live on 3+ channels, formatted per platform. · If failed: Check formatting requirements per channel and reformat.

Output Schema

{
  "output_type": "jd_template_library",
  "format": "document collection + checklist + workflow",
  "columns": [
    {"name": "role_title", "type": "string", "description": "Standard job title", "required": true},
    {"name": "function", "type": "string", "description": "Engineering, Sales, Marketing, Ops, or CS", "required": true},
    {"name": "stage_variant", "type": "string", "description": "Pre-seed, Seed, Series A, Series B+", "required": true},
    {"name": "word_count", "type": "number", "description": "JD word count (target 300-700)", "required": true},
    {"name": "bias_score", "type": "number", "description": "Inclusion score 0-100", "required": true},
    {"name": "salary_included", "type": "boolean", "description": "Compensation range included", "required": true},
    {"name": "channels_posted", "type": "number", "description": "Distribution channels", "required": true},
    {"name": "applicants_7d", "type": "number", "description": "Applications in first 7 days", "required": false}
  ],
  "expected_row_count": "5-10",
  "sort_order": "function ascending",
  "deduplication_key": "role_title + stage_variant"
}

Quality Benchmarks

Quality MetricMinimum AcceptableGoodExcellent
Bias/inclusion score> 70> 85> 95
Word count (LinkedIn)200-400250-350~300
Word count (Indeed)500-2000700-1500900-1200
Applications per week> 10> 25> 50
Qualified applicant rate> 15%> 30%> 50%
Time to first qualified applicant< 14 days< 7 days< 3 days
Diversity of applicant poolReflects marketAbove averageExceeds benchmarks

If below minimum: If applications < 10/week, audit title searchability, hook quality, and salary competitiveness. If qualified rate < 15%, requirements are too vague or too restrictive.

Error Handling

ErrorLikely CauseRecovery Action
Zero applications after 7 daysTitle not searchable, salary missing, or buried on job boardPromote posting, rewrite title for search terms, add salary range
High volume but low qualityRequirements too vague, title too broadAdd specific must-haves, narrow title with seniority and tech
Candidates drop off after readingJD too long, excessive requirements, off-putting toneShorten to 300-500 words, reduce to 3-5 must-haves, adjust tone
Bias tool flags multiple issuesUnconscious gendered or exclusionary languageReplace flagged terms, re-run scan, second reviewer check
Legal compliance riskMissing salary in transparency-required jurisdictionAdd compensation range immediately; check all posting jurisdictions
No diverse applicantsHomogeneous channels or coded exclusionary languageExpand to diverse boards (Jopwell, Techqueria), audit JD language

Cost Breakdown

ComponentFree TierStarter TierGrowth Tier
JD writing/templatesGoogle Docs + this recipeGoogle Docs + this recipeATS templates ($300/mo)
Bias detectionGender Decoder (free)Ongig trial (free)Textio ($5K+/yr)
LinkedIn Jobs1 free postPromoted: $200-500/postRecruiter: $800+/mo
IndeedFree basic listingSponsored: $5-15/dayPremium: $250+/mo
WellfoundFree (startups)Free (startups)Free (startups)
ATSSpreadsheet trackingBreezy HR (free tier)Ashby/Greenhouse ($400+/mo)
Total for 5 roles$0$500-1,500$2,000-5,000/mo

Anti-Patterns

Wrong: Writing JDs as laundry lists of requirements

Listing 15-20 requirements filters out qualified diverse candidates. Research shows women apply at 100% match while men apply at 60% — long lists disproportionately exclude. [src3]

Correct: Split into 3-5 must-haves and 2-3 nice-to-haves

Must-haves are truly non-negotiable. Everything else is nice-to-have. Be explicit about which is which to increase applications from qualified candidates.

Wrong: Using clever or cute job titles

Non-standard titles reduce discoverability 50%+ on LinkedIn and Indeed. Candidates cannot find roles they cannot search for. [src2]

Correct: Use standard industry titles with clear seniority

Use searchable, clear titles like “Senior Growth Marketing Manager” instead of creative alternatives. Add context in the description, not the title.

Wrong: Same JD copy-pasted across all platforms

LinkedIn rewards short posts, Indeed rewards detailed ones. The same JD underperforms on at least one platform. [src1]

Correct: Create master JD, then platform-specific variants

Write the full 700-word version, then create a 300-word LinkedIn summary and longer Indeed version. Same content, optimized format per channel.

When This Matters

Use this recipe when a startup founder or hiring manager needs to write job descriptions that attract qualified candidates — not just fill an ATS field. Requires defined role needs, approved compensation, and company context. Produces JD templates, inclusion-verified content, and a publishing workflow — not a hiring strategy, interview process, or compensation philosophy.

Related Units