Job Description logo

Job Description

Community
shawnpang
job-description

When the user needs to write, review, or improve a job posting for a startup role.

Overview

Publishershawnpang
Repositorystartup-founder-skills
Skill namejob-description
Stars
368
Forks
43
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by shawnpang on GitHub. Read the source before you install it.

Installation

Install the Job Description AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/shawnpang/startup-founder-skills/tree/main/skills/job-description
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/shawnpang/startup-founder-skills.git /tmp/startup-founder-skills
mkdir -p .claude/skills
cp -r /tmp/startup-founder-skills/skills/job-description .claude/skills/job-description
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Job Description in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Job Description on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Job Description is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Job Description

When to Use

Activate when the user asks to create a new job posting, rewrite an existing one, or get feedback on a draft JD. Also activate when the user is preparing to hire for a new role and needs to define it clearly before sourcing candidates.

Context Required

  • From startup-context: Company name, mission statement, stage/funding, tech stack (for eng roles), team size, remote/hybrid/onsite policy, benefits, and equity structure.
  • From user: Role title, reporting structure, seniority level, key responsibilities, must-have vs. nice-to-have qualifications, compensation range (or willingness to include one), and hiring timeline.

Workflow

  1. Clarify the role — Ask the user what problem this hire solves. A JD should start from business need, not a generic title. Confirm level, scope, and team placement.
  2. Draft the hook — Write a 2-3 sentence opening that connects the company mission to why this role matters right now. Avoid generic openers like "We are looking for a rockstar..."
  3. Structure the body — Organize into five sections: Mission & Impact, What You'll Do (6-8 bullets), What You Bring (5-7 bullets split into must-have and nice-to-have), What We Offer, and How to Apply.
  4. Apply anti-pattern checks — Scan the draft for corporate jargon, unrealistic requirement stacking, gendered language, and exclusionary phrasing. Flag and fix.
  5. Add startup-specific framing — Emphasize ownership, speed of impact, equity upside, learning velocity, and access to leadership. These are startup advantages over big-co offers.
  6. Review comp and inclusivity — Ensure compensation transparency (range or "we'll share in first conversation"). Confirm language passes inclusive-language guidelines.
  7. Final polish — Tighten to a scannable length (400-700 words). Ensure the tone matches the company voice from startup-context.

Output Format

A complete, ready-to-post job description in markdown with the following sections:

  • Title and location/remote line
  • Opening hook (2-3 sentences)
  • About Us (3-4 sentences)
  • What You'll Do (bulleted list)
  • What You Bring (must-haves and nice-to-haves, clearly separated)
  • What We Offer (bulleted list)
  • How to Apply (1-2 sentences with clear next step)

Frameworks & Best Practices

The HERO Structure

  • Hook: Why this role matters to the mission right now
  • Expectations: What the person will actually do day-to-day
  • Requirements: What they genuinely need to succeed (not a wish list)
  • Offer: What the company gives back (comp, equity, growth, culture)

Anti-Patterns to Avoid

  • Requirement inflation: Listing 15+ requirements signals you don't know what you need. Keep must-haves to 4-5.
  • Corporate jargon: "Synergy," "leverage," "fast-paced environment" are empty. Use concrete language.
  • Gendered language: Avoid "ninja," "rockstar," "aggressive." Use tools like the Gender Decoder or Textio guidelines as a reference.
  • Years-of-experience gates: "7+ years of React" excludes strong candidates. Prefer demonstrated capability over tenure.
  • Hidden role: If the job is actually three jobs, split it or be honest about the breadth.

Inclusive Language Guidelines

  • Use "you" instead of "the ideal candidate" to feel inviting rather than evaluative.
  • Replace "requirements" with "what you bring" to reduce self-screening by underrepresented candidates.
  • Include an explicit encouragement to apply even if not a 100% match (research shows this matters for women and minority applicants).
  • State accommodation availability for the interview process.

Compensation Transparency

  • Include a salary range. Listings with ranges get significantly more applicants.
  • If equity is offered, state the range in percentage or share count and mention the vesting schedule.
  • Name benefits explicitly rather than saying "competitive benefits package."

Startup-Specific Framing

  • Impact: "You'll be one of the first 10 engineers shaping the product architecture."
  • Ownership: "You'll own the entire lifecycle of features, from design through production monitoring."
  • Equity: "We offer meaningful equity because early employees take real risk and deserve real upside."
  • Growth: "As we scale from 10 to 50, you'll grow into a leadership role if you want it."

Related Skills

  • interview-kit — After posting the JD, design the interview loop and scorecards for this role.
  • sourcing-outreach — Use the JD as the basis for personalized outreach messages to passive candidates.
  • employer-brand — Ensure the JD tone and content align with your careers page and employer brand narrative.

Examples

Prompt: "We need to hire our first product designer. We're a 12-person B2B SaaS startup, Series A, remote-first."

Good output snippet:

# Product Designer — Remote (US/Canada time zones)

Join Acme as our founding designer and shape the product experience
from the ground up. You won't be handed a pixel-perfect spec — you'll
partner directly with engineering and customers to figure out what to
build and how it should feel.

## What You'll Do
- Own the end-to-end design process for our core B2B platform
- Run discovery calls with customers weekly to ground designs in real workflows
- Build and maintain our design system as the foundation for a future team
- Collaborate async-first with engineering using Figma and Loom
...

Prompt: "Review this JD for red flags."

Good output snippet:

Issues found:
1. "Must have 10+ years in Python" — This filters out strong mid-career
   candidates. Consider "deep fluency in Python" instead.
2. "Fast-paced environment" — This is vague. Replace with something
   concrete: "We ship weekly and iterate based on customer feedback."
3. No salary range listed — Adding a range will increase your applicant
   pool significantly.

Frequently asked questions

What does the Job Description AI skill do?

When the user needs to write, review, or improve a job posting for a startup role.

Why use Job Description on TypingMind?

Because you install it once and use it with any model. Job Description is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Job Description in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/shawnpang/startup-founder-skills/tree/main/skills/job-description. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Job Description?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Job Description?

As many as you like. As long as a model supports skills, you can use Job Description with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Job Description AI skill free?

Yes. It is published on GitHub by shawnpang under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇