The skills section is the first thing an ATS parses and the last thing a recruiter scans before deciding. The skills to put on a resume are the ones that appear in the job description, that you can defend in an interview, and that are grouped so a six-second skim lands on the right keywords. Below are copy-pastable lists of hard skills and soft skills for a resume, lists by role, and the rule for choosing between them: mirror the posting, prove it elsewhere, and cut the filler.
Hard skills are the teachable, testable ones: tools, languages, certifications, methods. They are what an ATS keyword-matches against, so they belong near the top of the section and in the exact wording the posting uses. Pull from the list below, but only keep what you can back up with a bullet in your experience. A skill named here and proven nowhere else reads as a claim, not a fact.
Engineering and data: Python, SQL, JavaScript, TypeScript, React, AWS, Docker, Kubernetes, Terraform, PostgreSQL, Spark, Airflow, CI/CD, REST APIs, Git, PyTorch, Tableau, Snowflake, dbt, A/B testing.
Marketing and growth: SEO, Google Analytics 4, HubSpot, paid social, marketing automation, content strategy, conversion rate optimization, Salesforce, lifecycle email, attribution modeling, Looker, SQL.
Operations and finance: Excel modeling, forecasting, FP&A, NetSuite, process mapping, Six Sigma, supply chain planning, SQL, variance analysis, SOX compliance, vendor management, Power BI.
Healthcare and admin: EMR (Epic, Cerner), HIPAA, patient triage, medication administration, ICD-10 coding, care coordination, scheduling systems, Microsoft Office, CRM administration, data entry accuracy.
Soft skills for a resume are the behavioral ones: collaboration, communication, leadership. The problem is that everyone lists them and no ATS scores them, so a naked list of soft skills is dead weight. The fix is to demote them. Keep one short row of two or three at the end of the section, and prove the rest inside your bullets where a number can stand behind them.
Good soft skills to put on a resume include: cross-functional collaboration, stakeholder management, written communication, mentoring, prioritization, conflict resolution, project ownership, and adaptability. Pick the two or three the posting actually names.
The difference between weak and strong: weak is 'strong leadership skills' sitting in a list. Strong is a bullet that reads 'Led a 6-person pod through a 3-month migration, shipping on time with zero customer-facing incidents.' Same trait, but now it is evidence. Use the list for keyword coverage, use the bullets for proof.
The best list of skills for a resume is the one tailored to the job you are targeting. Start from the cluster below for your role, then cross out anything not echoed in the posting and add anything the posting names that you genuinely have. The goal is overlap with the job description, not a complete inventory of everything you know.
An ATS scores your resume skills against the requirements parsed from the posting. The single highest-leverage move is to use the posting's exact wording for skills you genuinely have. If the job says 'CI/CD' do not write 'continuous integration'; if it says 'GA4' do not write 'web analytics.' Synonyms cost you partial matches that you did not have to lose.
There is a line you should not cross. Mirroring means matching the words for skills you can defend. Stuffing means pasting the entire requirements block, hiding white-on-white keywords, or listing tools you have never opened. Recruiters catch it in the first phone screen, and modern parsers flag suspiciously dense keyword blocks. Aim for honest overlap: if the posting lists ten required skills and you have seven, name those seven in its words and let the gap be the gap.
A practical workflow: paste the job description into a checker, see which required skills are missing from your CV, then decide for each one whether you have it (add it, in their words) or you do not (leave it out and let the rest of the resume carry the match). CVOracle does this comparison for you and shows the skill-match sub-score before and after.
Twelve to eighteen. Fewer than ten looks thin and fails keyword matching; more than twenty reads as padding and dilutes the strong ones. Every skill you list should be defensible in an interview and ideally proven by a bullet.
Hard skills are teachable and testable (Python, SQL, GA4, EMR) and they are what an ATS keyword-matches. Soft skills are behavioral (communication, leadership) and no parser scores them. List hard skills for keyword coverage; prove soft skills inside your experience bullets where a number can back them.
The ones named in the job description that you can actually do. There is no universal best list. Start from a role-based cluster, cross out what the posting does not mention, and add what it does. Overlap with the specific posting beats a long generic inventory every time.
Only if you can hold a basic conversation about them. Listing a tool you opened once is a fast way to fail a technical screen. If a skill is genuinely in progress and central to the role, it is safer to show it in a bullet ('built a side project in Rust') than to claim it flat in the skills row.
For most roles, a compact skills section sits just under the summary, near the top, so the ATS and the recruiter both hit the keywords early. Career changers and technical roles can justify a fuller section; senior leaders often demote it below experience, where their track record carries more weight.
Use the posting's exact wording for skills you have, group them so the match is easy to scan, and run a checker that scores skill match against the parsed requirements. CVOracle highlights the required skills you are missing so you can add the ones you genuinely have.
Free. CVOracle picks the skills that match your target job and groups them clean.
Build my CV free →