BACK TO PROJECTS
2026-05-15

Automated Resume Builder & ATS Tracker

Deterministic resume compiler and semantic ATS scoring engine featuring structural document parsing, n-gram keyword extraction, metric density analysis, and single-column vector PDF generation.

TypeScriptNext.jsPythonNLPRegexTailwind CSS
[ Source Code ]✓ VERIFIED STABLE
[ Target Hardware ]Microcontroller / Edge Node

Modern hiring is dominated by Applicant Tracking Systems (ATS) that automatically ingest, parse, and score resumes before any human recruiter ever lays eyes on them. But the vast majority of online "ATS checkers" are glorified affiliate marketing traps that give arbitrary percentage scores based on simple string matching. I built the Automated Resume Builder and ATS Tracker to demystify that black box and provide a deterministic, mathematically transparent compiler for technical resumes.

The system is structured as a two-way pipeline: a structured resume compiler on the frontend and an algorithmic ATS parser and scoring engine on the backend.

The parsing engine ingests raw PDF and DOCX documents and breaks them down into an Abstract Syntax Tree of semantic blocks: Contact Details, Professional Summary, Work Experience, Technical Skills, Education, and Projects. The hardest challenge here is document structure normalization. Enterprise ATS parsers like Taleo, Workday, and Greenhouse frequently mangle multi-column tables, text boxes, icons, and non-standard Unicode characters. I wrote custom tokenizers that detect structural pitfalls—such as floating text frames, tabular margins, and unmapped font glyphs—flagging them as severe parsing risks.

For keyword evaluation, instead of naive substring matching, the engine implements a weighted n-gram extraction algorithm. It analyzes target job descriptions, extracts unigrams, bigrams, and trigrams, filters out conversational stop words, and lemmatizes action verbs to their base stems (e.g., "engineered", "engineering", "engineer"). It then models the relationship between resume skills and job requirements as a weighted bipartite graph, calculating coverage across four distinct diagnostic dimensions:

  1. Hard Skill Alignment (40%): Matches required programming languages, frameworks, protocols, and developer toolchains, accounting for common industry synonyms (e.g., "Postgres" vs. "PostgreSQL", "React.js" vs. "React").
  2. Metric & Impact Density (25%): Evaluates whether bullet points demonstrate tangible business or engineering impact. It scans for numerical proofs, percentage improvements, latency reductions, and scale indicators using regex patterns matching \b\d+(?:\.\d+)?(?:%|[xX]|k|M|B)?\b.
  3. Structural & Layout Compliance (20%): Audits visual hierarchy, standard heading naming conventions, and layout simplicity.
  4. Keyword Distribution & Recency (15%): Evaluates whether core competencies appear in recent project descriptions rather than being buried in a stale "Skills" block at the bottom of the page, penalizing artificial keyword stuffing.

On the builder side, the application compiles user data into clean, single-column typographic layouts exported as vector PDFs. There are no invisible layout tables, no floating layers, and no decorative bloat—just mathematically compliant typography that renders beautifully for humans while scoring 100% on automated enterprise parsers.