CV tailoring
Job search

2026-04-20 · 4 min read

How to tailor your CV to a job description (without lying)

A practical, step-by-step process for adapting your CV to each role — keep your experience honest, mirror the JD's vocabulary, and stop sending the same generic CV everywhere.

The single biggest predictor of whether your CV gets a callback isn't the design. It isn't the file format. It's whether you took thirty minutes to tailor it to the specific role.

Recruiters skim. They spend, on average, 7-12 seconds on a first-pass review. They're scanning for terms from the job description they were handed. If your CV uses different words to describe the same skills, they won't find them — and you'll get filtered out before a human really reads anything.

Tailoring isn't about lying or padding. It's about translation. Here's how to do it properly.

Step 1: Read the JD twice

The first read is for the gist — what the role does, who it reports to, the company size, the seniority signal in the language. Don't take notes yet.

On the second read, pull out three things:

  1. The hard skills — programming languages, tools, frameworks, certifications, methodologies.
  2. The soft skills — but only the ones that show up as job duties, not buzzwords. "Mentoring junior engineers" is real. "Self-starter" is filler.
  3. The company's vocabulary — does it say "stakeholders" or "clients"? "Customers" or "users"? "Ship" or "release" or "deploy"? Match it.

Write these down somewhere. A scratchpad, a Notion page, the back of an envelope.

Step 2: Map your experience to their requirements

For each requirement in the JD, ask: do I have a concrete example of this from my actual work history?

If yes — note which job/project it came from, and what the outcome was.

If no — leave it blank. The temptation to invent is strong. Resist. Recruiters have been doing this for years and they can smell padding.

By the end, you should have a table that looks something like:

JD requirementMy exampleOutcome
"Experience with PostgreSQL at scale"Migrated billing DB at AcmeCorp4x query speed, 2.5M users
"Team leadership"Led 3-person team for OAuth projectShipped 2 weeks ahead
"GraphQL"(none)

The "(none)" rows aren't a problem. Every JD has a wishlist of "nice-to-haves" the recruiter doesn't actually expect every candidate to hit.

Step 3: Rewrite your bullets in the JD's language

This is the part most people skip. Open your existing CV. For each bullet that maps to a JD requirement, rewrite it so:

  • The verb is strong and active ("Designed", "Shipped", "Migrated") — not "Worked on" or "Was responsible for"
  • The vocabulary matches the JD where honest ("user" vs. "customer", "ship" vs. "deploy")
  • The outcome is quantified where you can do so honestly

Before (generic): "Worked on backend services at Acme."

After (tailored to a JD looking for "scalable distributed systems"): "Designed and shipped a distributed billing service at Acme handling 2.5M monthly transactions, reducing peak latency by 40%."

Same job. Same work. Different framing.

Step 4: Reorder the sections by relevance

If the role is heavily technical, your projects section probably matters more than your education. Move it up.

If the role is people-management, your "team lead" experience needs to be the first bullet under your most recent job, even if it was actually 30% of your time.

The reader's eye flows top-to-bottom. Reward them with the most relevant information first.

Step 5: Drop the irrelevant stuff

If you're applying for a senior backend role, the recruiter doesn't need to see your high school debate trophy or that 2017 freelance graphic design gig.

Cut ruthlessly. The CV's job is to make the case for this role, not to document your entire career. Two pages, max.

What to do if your experience genuinely doesn't match

Sometimes you'll go through this exercise and discover that you're applying for a role you have no business applying to. That's useful information.

Two options:

  1. Apply anyway, knowing your odds are low — but write a stronger cover letter that addresses the gap directly. ("I haven't shipped a Kubernetes deployment yet, but I've operated containerised services on AWS ECS, and the architectural patterns transfer.")
  2. Don't apply. Spend the time on a role you actually fit. The hit rate of "spray-and-pray" applications is dramal.

Either is legitimate. Just do it consciously.

Why most people skip this

Tailoring takes 20-40 minutes per application. If you're applying to 50 roles, that's 25 hours of work. Most people do it for the first three applications, then revert to copy-paste.

The trade-off is real: tailored CVs convert at 3-5x the rate of generic ones (per a LinkedIn study from 2023), but they cost 10x the time.

This is exactly the gap CVCL exists to close. We do steps 1-4 for you in about 60 seconds — pull keywords from the JD, map them to your existing experience, rewrite bullets in the JD's vocabulary, and reorder for relevance. You still review and edit before submitting; the AI doesn't push your work over the line, it just gives you a strong starting draft.

3 free generations to try it: cvcl.online.

TL;DR

Tailoring a CV is a translation problem, not an invention problem.

  1. Pull keywords + vocabulary from the JD
  2. Map your real experience to those requirements
  3. Rewrite bullets in the JD's language with quantified outcomes
  4. Reorder for relevance
  5. Drop the irrelevant stuff

Do it for every application. Or use a tool that does it for you. But please stop sending the same generic CV everywhere — it's the cheapest way to lower your interview rate.

Tailor your next CV in 60 seconds

Stop spending hours rewriting your CV per role. Upload once, paste any job description, get back a tailored CV + cover letter as PDF and DOCX. 3 free generations on signup.

Start free