How to write a software engineer resume that passes the ATS
Engineering job posts are keyword-dense: languages, frameworks, cloud, practices. Recruiters screen hundreds of resumes with an ATS before a human reads one, so the resume that names the stack the post names, in the words the post uses, is the one that gets opened.
What the ATS and recruiters look for in a software engineer
For engineering roles the ATS and the recruiter both scan for a stack match first: the languages and frameworks in the post, the cloud provider, and the engineering practices (CI/CD, testing, code review). Then they look for scale and impact: users, requests, latency, cost, uptime. Seniority is read from ownership words: designed, led, owned, migrated.
Software Engineer resume keywords
Use the exact spelling the job post uses. Put the post's must-haves first in your skills section and repeat the important ones inside bullets with results.
Hard skills
- System design
- REST and GraphQL APIs
- Microservices
- Data structures and algorithms
- Unit and integration testing
- CI/CD pipelines
- Database design (SQL and NoSQL)
- Distributed systems
- Performance optimisation
- Code review
- Agile / Scrum
- Security best practices
Tools & platforms
- Python
- Java
- TypeScript / JavaScript
- Go
- React
- Node.js
- Spring Boot
- PostgreSQL
- AWS / GCP / Azure
- Docker
- Kubernetes
- Git
Soft skills (show in bullets)
- Cross-functional collaboration
- Technical communication
- Mentoring
- Ownership
- Problem solving
How to structure each section
- Summary. Two lines: years of experience, your main stack, one headline result. Mirror the job title exactly ("Backend Software Engineer", not "Coder").
- Skills. Group by category (Languages, Frameworks, Cloud & Infra, Practices). Put the post's must-haves first. Only list what you can be interviewed on.
- Experience. Each bullet: action verb, what you built, the technology, the measured outcome. Lead with the projects closest to the target role.
- Projects. Valuable for early-career and career-changers. Link the repository; describe the problem, your stack and anything measurable (users, stars, performance).
Before and after: software engineer bullet points
Why it works: Names the language, the cloud services and a measured result; "designed and shipped" signals ownership.
Why it works: Turns a vague duty into practices the post asks for (testing, CI/CD) with numbers.
Mistakes that get software engineer resumes filtered out
- A skills list of 40 technologies with no grouping: the ATS matches it, the recruiter distrusts it.
- Describing the team's work instead of yours. Use "I built", not "the team built".
- No numbers at all. Even an estimate ("~10k daily users") beats nothing.
- Two-column layouts and icons for skills: many parsers read columns in the wrong order and skip icons.
Tailor it to the job in minutes
Resumeni reads the job description, finds the keywords you're missing, and rewrites your resume for the role while keeping your own layout and fonts. The first check-up is free: you see your ATS score, the gaps and a few rewritten lines before paying anything. Or run the free ATS checker on your current resume first.
Frequently asked questions
Should I list every programming language I know?
List what the job asks for plus what you could be interviewed on tomorrow. A long list dilutes the match and invites questions you can't answer.
How long should a software engineer resume be?
One page up to about five years of experience, two pages after that. Senior engineers rarely need more than two.
Do GitHub links help with the ATS?
The ATS ignores them, but recruiters click them. Put the link in your contact line as plain text so it survives parsing.
Related
- Frontend Developer resume: keywords and examples
- DevOps Engineer resume: keywords and examples
- Data Scientist resume: keywords and examples
- How to tailor your resume to a job description, step by step
- What is an ATS score, and how is it calculated?
- ATS-friendly resume format: what applicant tracking systems can and can't read