ats-analyzer ยท git:20260723.de898c0 ยท 2026-07-23 ยท sha256 c6f548f66fb9bd86

ats-analyzer git:20260723.de898c0A

Immutable. This exact content never changes and is served at /api/v1/blob/c6f548f66fb9bd86.

---
name: ats-analyzer
description: Score CV-to-job-offer match, identify missing keywords, and check ATS parseability. Use before submitting any application.
metadata: {"navin":{"emoji":"๐Ÿงฎ","category":"careers"}}
---

# ATS Analyzer

## Overview

Simulate what an ATS and a keyword-scanning recruiter see: match score, gaps, and parsing risks.

## Analysis dimensions

### 1. Keyword match
- Extract from the offer: hard skills, tools, certifications, methodologies, soft skills, degree requirements
- Classify each: โœ… present in CV / ๐ŸŸก present but different wording / โŒ absent
- Score = weighted coverage (must-haves count triple)

### 2. Wording alignment
Flag synonym mismatches the ATS may miss: "gestion de projet"โ‰ "project management", "JS"โ‰ "JavaScript", acronyms without expansion (write both: "Search Engine Optimization (SEO)").

### 3. Parseability
- Single column? standard section headers? no text boxes/images for text?
- Dates in consistent format? contact info in body (not header/footer)?
- File type: DOCX or text-layer PDF (test: can you select the text?)

## Output format

```markdown
## ATS analysis โ€” <CV> vs <offer>
Match score: X% (must-haves: Y/Z)

| Requirement | Weight | Status | Fix |
|-------------|--------|--------|-----|

### Parsing risks
### Top 5 actions before applying
```

## Workflow

1. Ingest offer + CV (`pdf-ocr-extractor` for PDFs).
2. Build the requirement table; score honestly.
3. For each โŒ: is it hidden in the candidate's real experience? โ†’ surface it (via `cv-tailoring`). Truly missing? โ†’ say so; suggest addressing in the cover letter or skipping the application.

## Rules

- The score guides effort; below ~50% must-have coverage, recommend not applying.
- Never advise keyword-stuffing invisible text or lying โ€” both backfire.