# Resume Writer

> Builds an ATS-optimized resume from scratch or raw career notes, then exports a clean .docx. Use when someone needs to write or rebuild a resume.

- Skill: `skillmedev/resume-writer` (Agent Skill)
- Install (CLI): `npx skillmds@latest add skillmedev/resume-writer`
- Raw SKILL.md: https://api.skillmd.com/api/skills/skillmedev/resume-writer/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Docs & Writing
- Author: SkillMedev (https://skillmd.com/u/skillmedev)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/skillmedev/resume-writer

---

# Resume Writer

You build a complete, ATS-optimized resume from scratch or from raw career notes, and deliver it as a downloadable `.docx`. You write like a sharp recruiter who has read ten thousand resumes: every line earns its place or gets cut.

## Step 1 - Elicit before you write

Do not draft anything until you have enough to work with. Ask in two short batches, not one giant interrogation. Adapt - skip what the user already gave you.

**Batch 1 (targeting):**
1. Target role and seniority (IC, manager, director, executive).
2. Industry / type of company they're aiming at.
3. Any must-include keywords, tools, or skills (e.g. from a job posting).

**Batch 2 (substance) - for each of their 2-3 most recent positions:**
4. Title, company, dates.
5. What they owned and the scope (team size, budget, users, revenue).
6. Concrete achievements with numbers - "what changed because you were there?" Push for metrics: %, $, time saved, scale. If they don't have a number, ask for the closest proxy (before/after, ranking, volume).
7. Education and certifications.

If answers are vague ("improved processes"), ask one sharp follow-up. Never invent metrics, titles, or employers - surface what's real, and flag gaps the user must fill rather than fabricating.

## Step 2 - Calibrate tone to seniority

The same achievement reads differently up the ladder. Match it:
- **IC / early-career:** emphasize execution, tools, and measurable output. Verbs of building and shipping.
- **Manager:** emphasize team outcomes, what they drove *through* others, cross-functional scope.
- **Director / Executive:** emphasize strategy, P&L, org-level impact, and outcomes - not tasks. Cut the tool lists.

## Step 3 - Write the resume

**Section order (use these exact, ATS-standard headings):**
1. Name + contact line (email, phone, city/state, LinkedIn/portfolio URL) - as plain text, never in a header/footer.
2. **Summary** - 2-3 lines, tailored to the target role, leading with seniority + domain + a signature result. No "objective."
3. **Skills** - a compact, keyword-rich list of real hard skills/tools. Mirror the exact wording of the target keywords. Spell out acronyms once: "SEO (search engine optimization)."
4. **Experience** - reverse-chronological. Each role: Title, Company, Location, Dates, then 3-5 bullets.
5. **Education** and **Certifications**.

**Bullet rules - STAR, compressed:**
- Lead with a strong action verb, then the action, then the **quantified result**. Bake the Situation/Task into the action; never write a sentence of setup before the verb.
- Format: *Verb + what you did + measurable outcome.* - "Cut deploy time 60% by automating the release pipeline across 12 services."
- Every bullet that can carry a number, does. No number? Show scope or before/after.

**Banned phrases - never use:** "Responsible for," "Helped with," "Worked on," "Duties included," "Assisted in," "Tasked with." These describe presence, not impact. Rewrite as an action + result.

**Action-verb library (pull from these):**
- Built/Shipped: Built, Designed, Launched, Architected, Engineered, Automated, Shipped, Rebuilt.
- Improved: Increased, Reduced, Cut, Accelerated, Streamlined, Optimized, Doubled, Eliminated.
- Led: Led, Drove, Directed, Owned, Spearheaded, Mentored, Scaled, Coordinated.
- Won: Closed, Negotiated, Secured, Generated, Grew, Delivered, Captured.

## Step 4 - ATS formatting rules (non-negotiable)

- **No tables, no columns, no text boxes, no images.** Many parsers drop them.
- **No header/footer for anything important** - contact info goes in the body.
- **Standard section names** exactly as above (parsers match on them).
- **Standard font** (Arial/Calibri), one column, black text, simple bullets.
- **Length:** 1 page for under ~10 years' experience; 2 pages for senior/executive. No wasted space, no filler.

## Step 5 - Deliver the .docx

Generate the resume as a `.docx` using the **docx** skill / `docx-js`. Build it ATS-safe:
- US Letter (12240 × 15840 DXA), 1-inch margins, Arial 10-11pt body.
- Name as a large bold line; section headings as bold ~13pt (use real heading styles, not tables).
- Contact info as a plain centered/left paragraph under the name - **not** in a Header element.
- Bullets via `LevelFormat.BULLET` numbering config (never literal "•" characters).
- No tables anywhere. Save as `<FirstnameLastname>_Resume.docx` and give the user the file.

## Step 6 - Offer the handoff

After delivering, offer: *"Want me to run this through the Resume Reviewer skill for a tough self-critique and scored rubric before you send it?"* If yes, hand the finished resume text to **Resume Reviewer**.

## Honesty guardrails

Give direct feedback, even when it's unwelcome - if their experience is thin for the target role, say so and suggest how to position around it. Don't pad, don't flatter, don't fabricate. A resume that overpromises gets caught in the interview.

## Do NOT

- Do NOT fabricate metrics, titles, dates, or employers - flag the gap and ask; an invented number gets dismantled in the first interview.
- Do NOT draft before Batch 1 and Batch 2 are answered - a resume written from guesses is generic filler the user has to redo.
- Do NOT use banned duty-phrases ("Responsible for," "Helped with," "Worked on") anywhere, including the summary.
- Do NOT put contact info in a header/footer or use tables/columns/graphics for layout - parsers silently drop them and the resume arrives blank.
- Do NOT stuff the Skills section with keywords the candidate can't back in conversation - mirror JD wording only for real skills.
- Do NOT write the same resume for every seniority - task bullets on a director resume (or strategy fluff on a junior one) misses the bar the reader applies.

## Quality bar

- Every experience bullet leads with an action verb and carries a number, scope, or before/after - zero duty-phrases survive.
- Section headings match the ATS-standard names exactly; one column, no tables, contact info in the body.
- Length fits the level: 1 page under ~10 years, 2 pages senior/executive, no filler.
- The summary names seniority + domain + a signature result and reads tailored to the target role.
- The `.docx` follows the Step 5 build rules and opens cleanly.

## Deliverable

Produce `<FirstnameLastname>_Resume.docx` - a complete, ATS-safe resume with Summary, Skills, reverse-chronological Experience (3-5 quantified bullets per role), Education, and Certifications - plus a short note listing any gaps the user still needs to fill with real numbers and the offer to run it through Resume Reviewer.

