Resume Optimization
Comprehensive guidance for creating effective software engineering resumes that pass ATS systems and resonate with hiring managers.
When to Use This Skill
- Reviewing or improving a software engineer's resume
- Crafting impactful achievement bullets from work experience
- Optimizing resume content for ATS keyword matching
- Tailoring a resume for a specific job description
- Understanding modern resume structure and formatting
Core Principles
The Resume's Purpose
A resume is a marketing document, not a job history. Its purpose is to:
- Pass ATS screening (keyword matching)
- Capture a recruiter's attention (6-second scan)
- Demonstrate value through quantified achievements
- Secure an interview opportunity
What Makes Engineering Resumes Different
Software engineering resumes should emphasize:
- Technical impact: Specific technologies, scale, and performance improvements
- Business outcomes: Revenue, cost savings, user growth, time savings
- Leadership signals: Mentoring, cross-team collaboration, technical decisions
- Quantification: Numbers that demonstrate scope and impact
Resume Structure Quick Reference
Recommended Section Order
- Contact Information - Name, email, phone, LinkedIn, GitHub (optional)
- Professional Summary (optional) - 2-3 sentences for senior roles
- Skills - Technical skills organized by category
- Experience - Reverse chronological, 3-5 most relevant roles
- Projects (optional) - For junior engineers or career changers
- Education - Degrees, certifications, relevant coursework
Length Guidelines
| Experience Level |
Recommended Length |
| 0-5 years |
1 page |
| 5-10 years |
1-2 pages |
| 10+ years |
2 pages max |
Formatting Essentials
- Font: Clean, readable (Calibri, Arial, Garamond - 10-12pt)
- Margins: 0.5-1 inch
- Format: PDF (preserves formatting)
- File naming:
FirstName_LastName_Resume.pdf
Achievement Bullet Formula
Action Verb + Specific Task + Quantifiable Result
[Strong Action Verb] [specific task/project] using [tools/methods], resulting in [quantified outcome].
Technical Project Bullets
For software projects, do not write a feature list. Each bullet should show:
- Problem - the non-trivial engineering challenge.
- Approach - the abstraction, architecture, algorithm, integration, or reliability mechanism used.
- Result - the measurable or concrete engineering outcome.
Prefer engineering mechanisms over raw variable names or local implementation trivia. For example, write "source-file state snapshot with metadata version checks" instead of "mtime / size / indexed_at", unless those fields are directly relevant to the target role.
Avoid weak verbs such as "supported", "integrated", or "implemented" unless followed by the concrete design. Good project bullets should explain how the capability works, not only that it exists.
When possible, include an order-of-magnitude result:
Optimized unchanged-session indexing with source-file state snapshots and metadata version checks, skipping parsing and full-text index rebuilds for unchanged sessions and reducing a 250-session reload from 2s+ to 10ms-level latency.
For projects involving many named products, mention product names once in the project description, then use generic terms such as "Agent", "source", "provider", or "target runtime" in bullets to avoid noisy repetition.
Do not overclaim concurrency or distributed systems. If the implementation uses batched writes and yields the event loop, call it "batched processing" or "event-loop yielding", not "parallel indexing".
Strong Action Verbs by Category
| Category |
Verbs |
| Technical |
Architected, Built, Deployed, Engineered, Implemented, Integrated, Migrated, Optimized, Refactored, Scaled |
| Design |
Analyzed, Designed, Documented, Modeled, Prototyped, Researched, Specified |
| Leadership |
Championed, Coached, Led, Mentored, Pioneered, Spearheaded |
| Impact |
Achieved, Boosted, Delivered, Improved, Increased, Reduced, Saved, Streamlined |
Quantification Types
- Time: "Reduced deploy time from 2 hours to 15 minutes"
- Money: "Saved $50K/year in infrastructure costs"
- Scale: "Scaled system to handle 1M daily requests"
- Improvement: "Improved test coverage from 40% to 85%"
- Frequency: "Reduced support tickets by 70%"
ATS Optimization
What ATS Systems Look For
- Keyword matching - Skills, tools, technologies from job description
- Job title alignment - Titles that match or relate to the target role
- Section structure - Standard sections that ATS can parse
- Clean formatting - No tables, columns, graphics, or headers/footers
ATS-Friendly Practices
- Use standard section headings ("Experience", "Skills", "Education")
- Include both spelled-out terms AND acronyms ("Continuous Integration (CI)")
- Mirror exact phrases from job descriptions
- Avoid images, icons, or non-text elements
- Use bullet points (-, *, •) not custom symbols
Keyword Extraction Strategy
When tailoring for a job description:
- Identify required skills - Listed in "Required" or "Must have" sections
- Note preferred skills - Listed in "Nice to have" or "Preferred"
- Capture soft skills - Leadership, communication, collaboration terms
- Extract action verbs - What the job says you'll "do" or "lead"
- Match technologies - Specific tools, languages, frameworks mentioned
Tailoring Strategy
The 80/20 Rule
- 80% base resume: Core experience and skills that apply broadly
- 20% customization: Targeted adjustments for each application
What to Customize
- Professional Summary - Align with job's key requirements
- Skills Section - Reorder to prioritize job's requirements
- Achievement Bullets - Emphasize relevant accomplishments
- Keywords - Incorporate exact terms from job description
Red Flags to Avoid
- Generic objective statements ("Seeking a challenging position...")
- Job duties instead of achievements ("Responsible for...")
- Unexplained gaps without context
- Typos or inconsistent formatting
- Outdated technologies prominently featured
References
The guidance in this Skill is self-contained. Use the section headings above to
jump directly to resume structure, achievement bullets, ATS optimization, or
job tailoring without relying on other Skills or agents.
User-Facing Interface
When invoked directly by the user, this skill tailors a resume for a specific job description.
Execution Workflow
- Parse Arguments - Extract job description text or URL from
$ARGUMENTS. If URL provided, fetch the job description content. If no arguments, ask the user for the job description.
- Extract Keywords - Analyze the job description for required skills, preferred skills, soft skills, action verbs, and specific technologies.
- Find Resume - Search for the user's resume in common locations (current directory,
docs/, ~/.claude/temp/). If not found, ask the user for the resume location.
- Analyze Gaps - Compare resume content against job description keywords. Identify missing keywords, weak achievement bullets, and alignment opportunities.
- Generate Tailored Output - Produce:
- Keyword match report (matched vs missing)
- Rewritten achievement bullets incorporating job keywords
- Suggested skills section reordering
- Professional summary tailored to the role
- ATS optimization recommendations
- Offer to Apply Changes - Ask user if they want changes applied directly to their resume file.
Version History
- v1.0.0 (2025-12-23): Initial release with core resume optimization guidance
1---2name: resume-optimization3description: Resume structure, achievement bullet formulas, ATS optimization, and job-targeted tailoring for software engineers. Use when reviewing resumes, crafting achievement bullets, extracting keywords from job descriptions, or tailoring content for specific roles.4---56# Resume Optimization78Comprehensive guidance for creating effective software engineering resumes that pass ATS systems and resonate with hiring managers.910## When to Use This Skill1112- Reviewing or improving a software engineer's resume13- Crafting impactful achievement bullets from work experience14- Optimizing resume content for ATS keyword matching15- Tailoring a resume for a specific job description16- Understanding modern resume structure and formatting1718## Core Principles1920### The Resume's Purpose2122A resume is a **marketing document**, not a job history. Its purpose is to:23241. Pass ATS screening (keyword matching)252. Capture a recruiter's attention (6-second scan)263. Demonstrate value through quantified achievements274. Secure an interview opportunity2829### What Makes Engineering Resumes Different3031Software engineering resumes should emphasize:3233- **Technical impact**: Specific technologies, scale, and performance improvements34- **Business outcomes**: Revenue, cost savings, user growth, time savings35- **Leadership signals**: Mentoring, cross-team collaboration, technical decisions36- **Quantification**: Numbers that demonstrate scope and impact3738## Resume Structure Quick Reference3940### Recommended Section Order41421. **Contact Information** - Name, email, phone, LinkedIn, GitHub (optional)432. **Professional Summary** (optional) - 2-3 sentences for senior roles443. **Skills** - Technical skills organized by category454. **Experience** - Reverse chronological, 3-5 most relevant roles465. **Projects** (optional) - For junior engineers or career changers476. **Education** - Degrees, certifications, relevant coursework4849### Length Guidelines5051| Experience Level | Recommended Length |52| ---------------- | ------------------ |53| 0-5 years | 1 page |54| 5-10 years | 1-2 pages |55| 10+ years | 2 pages max |5657### Formatting Essentials5859- **Font**: Clean, readable (Calibri, Arial, Garamond - 10-12pt)60- **Margins**: 0.5-1 inch61- **Format**: PDF (preserves formatting)62- **File naming**: `FirstName_LastName_Resume.pdf`6364## Achievement Bullet Formula6566### Action Verb + Specific Task + Quantifiable Result6768```text69[Strong Action Verb] [specific task/project] using [tools/methods], resulting in [quantified outcome].70```7172### Technical Project Bullets7374For software projects, do not write a feature list. Each bullet should show:75761. **Problem** - the non-trivial engineering challenge.772. **Approach** - the abstraction, architecture, algorithm, integration, or reliability mechanism used.783. **Result** - the measurable or concrete engineering outcome.7980Prefer engineering mechanisms over raw variable names or local implementation trivia. For example, write "source-file state snapshot with metadata version checks" instead of "mtime / size / indexed_at", unless those fields are directly relevant to the target role.8182Avoid weak verbs such as "supported", "integrated", or "implemented" unless followed by the concrete design. Good project bullets should explain *how* the capability works, not only that it exists.8384When possible, include an order-of-magnitude result:8586```text87Optimized unchanged-session indexing with source-file state snapshots and metadata version checks, skipping parsing and full-text index rebuilds for unchanged sessions and reducing a 250-session reload from 2s+ to 10ms-level latency.88```8990For projects involving many named products, mention product names once in the project description, then use generic terms such as "Agent", "source", "provider", or "target runtime" in bullets to avoid noisy repetition.9192Do not overclaim concurrency or distributed systems. If the implementation uses batched writes and yields the event loop, call it "batched processing" or "event-loop yielding", not "parallel indexing".9394### Strong Action Verbs by Category9596| Category | Verbs |97| -------- | ----- |98| Technical | Architected, Built, Deployed, Engineered, Implemented, Integrated, Migrated, Optimized, Refactored, Scaled |99| Design | Analyzed, Designed, Documented, Modeled, Prototyped, Researched, Specified |100| Leadership | Championed, Coached, Led, Mentored, Pioneered, Spearheaded |101| Impact | Achieved, Boosted, Delivered, Improved, Increased, Reduced, Saved, Streamlined |102103### Quantification Types104105- **Time**: "Reduced deploy time from 2 hours to 15 minutes"106- **Money**: "Saved $50K/year in infrastructure costs"107- **Scale**: "Scaled system to handle 1M daily requests"108- **Improvement**: "Improved test coverage from 40% to 85%"109- **Frequency**: "Reduced support tickets by 70%"110111## ATS Optimization112113### What ATS Systems Look For1141151. **Keyword matching** - Skills, tools, technologies from job description1162. **Job title alignment** - Titles that match or relate to the target role1173. **Section structure** - Standard sections that ATS can parse1184. **Clean formatting** - No tables, columns, graphics, or headers/footers119120### ATS-Friendly Practices121122- Use standard section headings ("Experience", "Skills", "Education")123- Include both spelled-out terms AND acronyms ("Continuous Integration (CI)")124- Mirror exact phrases from job descriptions125- Avoid images, icons, or non-text elements126- Use bullet points (-, *, •) not custom symbols127128### Keyword Extraction Strategy129130When tailoring for a job description:1311321. **Identify required skills** - Listed in "Required" or "Must have" sections1332. **Note preferred skills** - Listed in "Nice to have" or "Preferred"1343. **Capture soft skills** - Leadership, communication, collaboration terms1354. **Extract action verbs** - What the job says you'll "do" or "lead"1365. **Match technologies** - Specific tools, languages, frameworks mentioned137138## Tailoring Strategy139140### The 80/20 Rule141142- **80% base resume**: Core experience and skills that apply broadly143- **20% customization**: Targeted adjustments for each application144145### What to Customize1461471. **Professional Summary** - Align with job's key requirements1482. **Skills Section** - Reorder to prioritize job's requirements1493. **Achievement Bullets** - Emphasize relevant accomplishments1504. **Keywords** - Incorporate exact terms from job description151152### Red Flags to Avoid153154- Generic objective statements ("Seeking a challenging position...")155- Job duties instead of achievements ("Responsible for...")156- Unexplained gaps without context157- Typos or inconsistent formatting158- Outdated technologies prominently featured159160## References161162The guidance in this Skill is self-contained. Use the section headings above to163jump directly to resume structure, achievement bullets, ATS optimization, or164job tailoring without relying on other Skills or agents.165166## User-Facing Interface167168When invoked directly by the user, this skill tailors a resume for a specific job description.169170### Execution Workflow1711721. **Parse Arguments** - Extract job description text or URL from `$ARGUMENTS`. If URL provided, fetch the job description content. If no arguments, ask the user for the job description.1732. **Extract Keywords** - Analyze the job description for required skills, preferred skills, soft skills, action verbs, and specific technologies.1743. **Find Resume** - Search for the user's resume in common locations (current directory, `docs/`, `~/.claude/temp/`). If not found, ask the user for the resume location.1754. **Analyze Gaps** - Compare resume content against job description keywords. Identify missing keywords, weak achievement bullets, and alignment opportunities.1765. **Generate Tailored Output** - Produce:177 - Keyword match report (matched vs missing)178 - Rewritten achievement bullets incorporating job keywords179 - Suggested skills section reordering180 - Professional summary tailored to the role181 - ATS optimization recommendations1826. **Offer to Apply Changes** - Ask user if they want changes applied directly to their resume file.183184## Version History185186- v1.0.0 (2025-12-23): Initial release with core resume optimization guidance