Resume & CVs · Chapter 2

Beating the ATS: Resume Optimization for the Algorithm

A deep dive into how Applicant Tracking Systems work and exactly how to optimize your resume to pass the filter before a human ever sees it.

8 min read

Most resume advice is written for a human reader. The problem is that in most mid-to-large company hiring processes, a human never reads your resume first. Software does. An Applicant Tracking System — ATS — receives your application, parses the document, extracts data, and scores you against the job description before any recruiter opens the file.

If you are applying to companies with more than 50 employees and not hearing back, the ATS is likely the first place your candidacy is ending. This guide explains how to fix that.


How ATS Software Actually Works

Understanding the mechanism lets you write to it effectively. Here is what happens from the moment you click submit.

Submit Resume Parse Content Match Keywords Score Candidate Human Reviews PDF / DOCX Extract text and structure Compare to job description Rank in applicant pool Top-scored candidates only

The most widely used ATS platforms — Workday, Greenhouse, Lever, iCIMS, Taleo, and SmartRecruiters — each have slightly different parsing algorithms, but they share the same core logic: extract text, match keywords, score relevance. Your resume needs to survive the parse step before the match step even starts.


The Parse Problem: Why Formatting Destroys ATS Scores

ATS software reads text. It does not read design. The more visually complex your resume, the harder it is for the parser to extract the right information — and a misparse means your experience gets misattributed or lost entirely.

Things that confuse ATS parsers:

  • Text in images — If your name or section headers are image files rather than typed text, the ATS cannot read them
  • Tables — ATS systems often misread content inside table cells or skip it entirely
  • Text boxes and shapes — Content placed in floating text boxes is frequently ignored
  • Headers and footers — Content in the header or footer zone is often not parsed
  • Multi-column layouts — Complex column structures can cause text to be read in the wrong order
  • Icons and decorative elements — Non-text elements cannot be parsed and crowd the document
  • Uncommon fonts — While parsers usually handle this, non-standard fonts can cause character errors
  • Creative section titles — "Where I Have Made Impact" instead of "Experience" may not be recognised

What parses reliably:

A clean single-column document with standard section labels, no tables, no text boxes, and real body text throughout. This is not glamorous. It also gets read.


Keyword Matching: The Core of ATS Scoring

After parsing, the ATS compares your resume text against the job description and assigns a match score. This score is based primarily on keyword overlap — the presence or absence of specific words and phrases from the job posting.

The process for extracting and using the right keywords:

Step 1: Read the job description twice. First for comprehension, then for repetition. Words that appear more than once are almost certainly in the scoring algorithm. Qualifications listed under "requirements" carry more weight than those under "preferred."

Step 2: Identify three types of keywords:

  • Hard skills and tools: Specific software, programming languages, platforms, methodologies (Python, Salesforce, Agile, SQL, CAD, IFRS)
  • Job-specific phrases: Exact role language (cross-functional collaboration, stakeholder management, go-to-market strategy, P&L ownership)
  • Industry terms and certifications: PMP, CPA, GDPR, HIPAA, Series A, ARR

Step 3: Mirror the language, not just the concept. If the job posting says "customer success," your resume should say "customer success" — not "client retention" or "account management." ATS systems match strings, not synonyms. The concepts may be identical; the match score will not be.

Step 4: Place keywords where the ATS expects them. Skills sections, job titles, and bullet points all carry weight. Keywords buried in a summary paragraph carry less weight than those in a dedicated skills section. Keywords in your job titles carry the most weight of all — though obviously you should not misrepresent your actual titles.


The 15-Minute Keyword Audit

For each application, run through this process before submitting:

  1. Copy the job description into a Google Doc or text editor. Bold every skills term, tool, methodology, and qualification mentioned. This takes about five minutes.

  2. Open your resume alongside it. Check whether each bolded term appears in your resume. If it does and it is accurate, great. If it does not, can you legitimately add it? Where does it fit?

  3. Check for synonym problems. Are you saying "team leadership" where they say "people management"? "Business development" where they say "revenue growth"? Align the language where you can do so honestly.

  4. Add missing keywords strategically. Do not stuff keywords randomly. Add them where they naturally fit:

    • Skills section — add any tool or technology they listed that you genuinely have experience with
    • Bullet points — rephrase an existing bullet to use their language
    • Summary — if they emphasise a particular function or expertise, make sure your summary reflects it
  5. Check keyword density. Your most important keywords should appear two to three times across the document — in the skills section, in at least one bullet point, ideally in the summary. Once is often not enough to score well. Seven times looks like stuffing.


File Format and Submission

Even a perfectly written resume fails if submitted in the wrong format.

The safe default: Submit as .pdf unless the application explicitly asks for .docx. PDF preserves formatting across systems. However, some older ATS platforms (particularly Taleo at large enterprises) parse .docx more reliably. If you are applying to a large company with a known Taleo system, have a .docx version ready.

Name your file professionally. Resume_2024.pdf tells them nothing. FirstName-LastName-Resume.pdf is searchable, organised, and immediately identifiable. Add the role if you have multiple tailored versions: Jane-Smith-ProductManager-Resume.pdf.

Do not paste into online forms unless required. Some applications have a text box for "paste your resume here" alongside the upload. The upload almost always parses better. If you must paste, strip all formatting first — no bullets, no bold, just clean text.


ATS Optimisation by Role Type

Keyword priorities differ significantly by field. Here is where to focus based on your function:

Software engineering: Programming languages (Python, JavaScript, Go, Rust), frameworks (React, Django, Rails), cloud platforms (AWS, GCP, Azure), methodologies (Agile, Scrum, CI/CD, TDD), databases (PostgreSQL, Redis, MongoDB), and system-specific terms (microservices, REST API, distributed systems).

Product management: Metrics (ARR, NPS, DAU, MAU, churn, conversion rate), methodologies (Agile, OKRs, sprint planning, roadmapping), tools (Jira, Confluence, Figma, Amplitude, Mixpanel), and functions (go-to-market, stakeholder management, product-market fit, discovery).

Data and analytics: Tools (SQL, Python, R, Tableau, Power BI, Looker, dbt), techniques (statistical modelling, A/B testing, regression, clustering, forecasting), platforms (BigQuery, Snowflake, Redshift), and functions (data pipeline, ETL, business intelligence, KPI dashboard).

Marketing: Platforms (Google Ads, Meta Ads, HubSpot, Salesforce, Marketo), metrics (CAC, LTV, ROAS, CPL, MQL, SQL), functions (demand generation, content strategy, SEO, email automation, attribution modelling), and channels (paid search, organic, email, influencer, affiliate).

Finance and accounting: Certifications (CPA, CFA, ACCA, CMA), software (SAP, Oracle, QuickBooks, NetSuite), standards (IFRS, GAAP, SOX, FASB), and functions (financial modelling, variance analysis, P&L management, FP&A, audit, M&A).


Testing Your Resume Against an ATS

Several tools allow you to test your resume against a job description before submitting. They are imperfect — they simulate the ATS rather than replicate it — but they reliably surface obvious keyword gaps and formatting problems.

The most commonly used: Jobscan and Resume Worded. Run your resume against the specific job description you are applying for. Look for:

  • Overall match percentage (aim for above 70% before submitting)
  • Missing keywords (add the ones you can honestly claim)
  • Hard skills gaps (the tools and technologies you are missing)
  • Formatting warnings (anything flagged as a parse risk)

Use the output as a diagnostic, not a script. You should not add keywords to your resume that do not reflect real experience. ATS optimisation gets you to the interview. What you actually know determines everything that happens after.


What ATS Optimisation Cannot Fix

ATS optimisation is necessary but not sufficient. A resume that scores 85% on a keyword match tool can still fail for non-ATS reasons:

  • Bullet points that describe tasks rather than impact — passing the ATS and impressing a recruiter are different problems
  • Employment gaps with no context — ATS systems typically do not penalise gaps, but recruiters do notice them
  • Lack of quantification — keyword presence scores well; lack of results impresses no one
  • Mismatched seniority — ten years of experience applying for a junior role, or vice versa, is a mismatch no keyword density overcomes

The goal is to optimise the resume well enough that a human reads it, then well enough that the human wants to call you. Both problems require attention, and ATS optimisation only solves the first one.


Treat ATS optimisation as a craft, not a cheat code. The best approach combines genuine experience and skills with language that accurately reflects that experience in the same vocabulary the employer uses. When your resume is both true and keyword-aligned, it clears the algorithmic filter and earns the human attention it deserves.

Continue Reading