← All articles
13 min read

Software Engineer Resume Guide 2026: Beat ATS and Get Calls

Most engineering resumes fail because of vague bullets and missing keywords, not because a robot rejected them. This guide shows how screening really works, then gives you a bullet formula, rewrites, and a one-page template by level.

A software engineer resume is a one-page document that proves, in about ten seconds of skimming, that you have built things similar to what the job needs. To get calls in 2026, it must parse cleanly in an applicant tracking system (ATS), contain the exact skills the job description names, and use impact bullets that show what you built, how, and what changed because of it. Formatting tricks matter far less than specific, measurable evidence.

This guide covers how screening actually works, a one-page structure for each level, a bullet formula with before/after rewrites, and a copy-ready template.

Key Takeaways

  • ATS platforms mostly store, search, and rank applications. A recruiter usually makes the reject decision, often in seconds, so write for a fast human skim.
  • Every bullet should follow one formula: action verb + what you built + how + measurable result. Vague duty bullets are the most common reason good engineers get ignored.
  • Tailor the top third of the page (title line, summary, skills, first two bullets) to each role using the job description's exact terms.
  • One page for new grads through most mid-level engineers. Two pages only when senior-level history earns it.
  • Juniors should treat Projects like a job: deployed, used, measured, and linked.
  • A plain single-column layout in a text-based PDF beats any designed template for parsing.

How Do ATS and Recruiters Actually Screen Resumes?

An applicant tracking system is software that collects applications, parses resumes into structured fields, and lets recruiters search, filter, and move candidates through stages. Common tech platforms include Greenhouse, Lever, Ashby, Workday, and iCIMS. Most of them do not read your resume and silently delete it. They make it findable or not findable.

Screening usually happens in three layers:

  1. Knockout questions. These are form fields like work authorization, sponsorship needs, location, or "Do you have 5+ years of Go?" A disqualifying answer can trigger an automatic rejection. This is where real auto-rejects happen, and it has nothing to do with your resume wording.
  2. Parsing and search. The ATS extracts your name, titles, employers, dates, and skills. Recruiters then search or filter by terms like "Kotlin" or "Terraform". If your PDF parses into garbage, or the term is missing, you do not show up.
  3. Human skim. A recruiter opens your resume and decides in seconds. Ladders reported in a 2018 eye-tracking study that the initial scan averaged roughly 7 seconds. They look at recent titles, employers, dates, the first bullets under each role, and whether the stack matches.

Some ATS platforms now add AI-generated match scores or summaries. Treat those the same way: they reward clear, specific, keyword-accurate content, which is what a human wants too.

ATS Myth vs. Fact

MythFact
"75% of resumes are rejected by ATS before a human sees them."This figure circulates widely without a credible primary source. Most rejections come from knockout answers or recruiter decisions.
"You need a special ATS template."A plain, single-column document with standard headings parses best. No special template is required.
"PDFs break ATS parsing."Text-based PDFs parse fine in modern systems. Image-only or scanned PDFs do not.
"Hide keywords in white text to game the system."Parsers typically extract hidden text, and a recruiter who spots it is likely to read it as a red flag.
"More keywords always means a higher rank."Keywords help you surface in searches. Stuffing them without evidence fails the human skim seconds later.
"Fancy design makes you stand out."Columns, icons, skill bars, and text boxes often scramble during parsing and add nothing a recruiter values.
"Applying to hundreds of roles with one resume works."Volume without tailoring lowers your response rate. Fewer, targeted applications plus referrals perform better.

The practical takeaway: you are not beating a robot. You are making sure a busy recruiter can find you and then sees a match within a few seconds.

One-Page Structure by Level

The right structure depends on what your strongest evidence is. A new grad's strongest evidence is projects and internships. A senior engineer's is scope and outcomes in recent roles.

SectionNew grad / junior (0-2 yrs)Mid-level (2-6 yrs)Senior / staff (6+ yrs)
Length1 page1 page1 page, 2 if history is long and relevant
HeaderName, email, phone, city, GitHub, LinkedIn, portfolioName, email, phone, city, GitHub, LinkedInName, email, phone, city, LinkedIn, GitHub if active
SummaryOptional, 1 line targeting the roleOptional, 1-2 linesRecommended, 2 lines on scope and specialty
OrderEducation, Skills, Experience, ProjectsExperience, Skills, Projects (optional), EducationExperience, Skills, Education
Bullets per role3-4 per internship4-5 for current role, 2-3 for older4-6 for recent roles, 1-2 for roles 10+ years back
Main signalShipped projects, internships, fundamentalsOwnership of features and services, measurable resultsCross-team impact, architecture, mentorship, business outcomes

A few rules apply at every level:

  • Use standard section headings: "Experience", "Projects", "Skills", "Education". Parsers and recruiters both expect them.
  • Put dates on the right in a consistent format, like "Mar 2023 - Present".
  • Skip photos, age, full address, and an "Objective" paragraph.
  • List GPA only if it is strong and you graduated in the last two or three years.

If you are early in your career, our new grad software engineer interview guide covers what happens after the resume gets you in the door.

The Impact Bullet Formula

An impact bullet is a single line that states what you did, how you did it, and what changed as a result. The formula that works for engineering resumes:

Action verb + what you built or changed + technical approach + measurable result

This is close to the X-Y-Z formula that Laszlo Bock, Google's former head of people operations, popularized: "Accomplished X, as measured by Y, by doing Z." The order can flex, but all four parts should be present in your strongest bullets.

What counts as a measurable result?

Not every engineer has revenue numbers. Results come in several forms, and any honest one beats none:

  • Performance: latency, throughput, memory, cold start time, build time.
  • Reliability: error rate, incidents, uptime, on-call pages, rollback frequency.
  • Scale: requests per second, users, records, services, regions.
  • Cost: cloud spend, instance count, licensing.
  • Velocity: deploy frequency, CI duration, release cycle, onboarding time.
  • Quality: test coverage, bug count, flaky tests removed.
  • People: engineers mentored, teams unblocked, interviews conducted.

If you do not know the exact number, estimate conservatively from dashboards or tickets and be ready to explain how you got it. Never invent a figure you cannot defend in a technical phone screen, because interviewers often ask.

Before and after rewrites

Each "before" below is a common pattern: it describes duties, not impact. The numbers in the "after" column are illustrative, so replace them with your own.

BeforeAfter
Worked on backend APIs for the checkout team.Cut p95 checkout API latency from 900ms to 350ms by adding a Redis read-through cache and batching inventory calls across 3 services.
Responsible for CI/CD pipelines.Reduced CI time from 28 to 9 minutes by parallelizing test shards and caching Docker layers in GitHub Actions, used by 40 engineers daily.
Helped migrate the app to the cloud.Led migration of 12 services from on-prem VMs to AWS ECS with Terraform, cutting monthly infrastructure cost by roughly 30%.
Built features in React.Built a React and TypeScript bulk-edit workflow that replaced a CSV upload process, used by 2,000+ merchants in its first month.
Fixed bugs and improved code quality.Raised unit test coverage on the billing module from 41% to 85% and removed 60 flaky tests, cutting failed deploys by half over a quarter.
Mentored junior developers.Mentored 4 junior engineers through onboarding and code review; 3 shipped independent features within their first 90 days.
Used Kafka for data processing.Designed a Kafka-based event pipeline processing 50K events/sec, replacing nightly batch jobs and making analytics data available within 2 minutes.

Notice what changed: a stronger verb, a specific system, the actual tools, and a number or scope. The "after" versions also hand interviewers good questions to ask, which gives you a story you already know.

Strong verbs by type of work

  • Building: built, designed, implemented, shipped, launched, prototyped.
  • Improving: reduced, cut, accelerated, optimized, stabilized, simplified.
  • Leading: led, owned, drove, coordinated, mentored, standardized.
  • Fixing: diagnosed, resolved, migrated, replaced, deprecated.

Avoid "responsible for", "helped with", "worked on", and "participated in". They describe presence, not contribution.

Keywords and Tailoring Without Stuffing

Resume keywords are the specific skills, tools, and practices a recruiter searches for in the ATS, usually copied straight from the job description. Tailoring means aligning your resume's wording with those terms where you honestly have the experience.

A 15-minute tailoring routine per application:

  1. Extract terms. Copy the job description and list every language, framework, cloud service, database, and practice it names. Mark the ones that appear in "requirements" versus "nice to have".
  2. Match exact wording. If they say "PostgreSQL" and you wrote "Postgres", use their version. If they say "distributed systems", make sure that phrase appears somewhere true.
  3. Move evidence up. Reorder bullets so the most relevant ones sit first under each role. Recruiters often read only the first two.
  4. Edit the summary and skills line. Adjust the title line ("Backend Engineer, Go and Kubernetes") to mirror the role.
  5. Check the gap. If a core requirement is missing entirely, either add a true bullet that shows it or accept that this role is a stretch.

Keep a master resume with every bullet you have ever written, then cut a one-page version for each target role type. Most people need only three or four variants, such as backend, full-stack, and infrastructure.

Skills section format

Group skills so a recruiter can scan them in two seconds:

Languages: Go, Python, TypeScript, SQL
Frameworks: React, Next.js, gRPC, FastAPI
Infrastructure: AWS (ECS, Lambda, S3), Kubernetes, Terraform, Docker
Data: PostgreSQL, Redis, Kafka, BigQuery
Practices: CI/CD, observability (Prometheus, Grafana), on-call, code review

Leave out skill ratings, progress bars, and generic items like "Microsoft Office" or "teamwork". If a skill appears here, it should also appear in at least one bullet, and you should be able to answer questions on it. Interviewers routinely pick a line from your skills list and probe it, a pattern covered in our guide to what interviewers look for in coding interviews.

A tailored resume gets you the phone screen and the online assessment. Then you have to perform live while someone watches you code. TechScreen is an invisible AI interview assistant that gives real-time hints during Zoom, Google Meet, HackerRank, and CoderPad rounds without showing up on screen share. Start with 3 free tokens.

Get started free →

The Projects Section for Juniors

For new grads, bootcamp graduates, and career changers, the Projects section often decides whether you get a call. A good project entry is not a list of technologies. It is a short case study written with the same impact formula.

What makes a project worth listing:

  • It is deployed or usable. A live URL, an app store listing, or a package others can install.
  • It has real users or real data. Even 50 users, a public dataset, or a classmate team counts.
  • It shows engineering, not tutorials. Authentication, testing, CI, caching, error handling, or a database schema you designed.
  • It has a clean repo. README with setup steps, sensible commits, and tests.

Example entry:

TripSplit | React Native, TypeScript, Node.js, PostgreSQL     github.com/you/tripsplit
- Built a group expense app used by 300+ students, with offline sync and
  conflict resolution for edits made without network access
- Designed a PostgreSQL schema and REST API with JWT auth; added integration
  tests in CI (GitHub Actions) covering 80% of endpoints
- Cut app start time from 4.1s to 1.6s by lazy-loading screens and caching
  exchange-rate lookups

Two or three projects like this beat eight half-finished clones. Drop the to-do app and the weather app unless you extended them in an unusual way. Open source contributions, hackathon wins, research assistant roles, and teaching assistant positions also belong here or under Experience.

If you are switching into software, our guides for career changers and bootcamp graduates cover how to frame earlier work. Prior domain experience in finance, healthcare, or logistics is a real asset when the target company works in that domain, so keep one or two bullets from it.

Common Software Engineer Resume Mistakes

These are the issues that most often cost qualified engineers a callback:

  • Duty bullets instead of impact bullets. "Responsible for maintaining services" tells the reader nothing about your level.
  • Two-column or designed templates. They look good in a browser and parse badly. Columns can merge into one jumbled line in the ATS.
  • Missing the stack in context. A skills list says "Kubernetes", but no bullet shows you using it. Recruiters notice.
  • Too long for the level. A two-page resume with two years of experience signals poor editing.
  • Unexplained gaps or title jumps. A short line like "Career break, family care" or "Contract, multiple clients" is better than silence.
  • Typos in technology names. "Javascript", "Github", "Postgre", and "NodeJs" look small, but engineers read them as carelessness.
  • Listing every tool you ever touched. It dilutes your real strengths and invites questions you cannot answer.
  • No links, or broken links. A dead portfolio URL or an empty GitHub profile hurts more than having none.
  • Keyword stuffing or AI-generated filler. Phrases like "results-driven, passionate engineer" add no signal. Generic, AI-written resumes are common now, so specific numbers and systems stand out.
  • Applying cold to everything. A resume works much better with a referral attached. Our guide on how to get a referral at a tech company shows how to ask.

Before you submit, run one test: export the PDF, select all text, and paste it into a plain text editor. If the order is wrong or characters are missing, the ATS likely sees the same mess.

Software Engineer Resume Template (One Page)

Use this as a structure, then fill it with your own bullets. It works in Google Docs, Word, or LaTeX, as long as you keep a single column and standard headings.

FIRST LAST
City, State | email@example.com | (555) 555-5555 | linkedin.com/in/you | github.com/you

Backend Software Engineer | Go, Python, AWS, Kubernetes
[Optional 1-2 line summary: years of experience, specialty, one standout result]

EXPERIENCE
Software Engineer II, Company Name                          Mar 2023 - Present
- [Verb] [system/feature] using [tech], [measurable result]
- [Verb] [system/feature] using [tech], [measurable result]
- [Verb] [system/feature] using [tech], [measurable result]
- [Ownership or collaboration bullet: on-call, design doc, mentoring]

Software Engineer, Previous Company                         Jul 2021 - Feb 2023
- [Verb] [system/feature] using [tech], [measurable result]
- [Verb] [system/feature] using [tech], [measurable result]
- [Verb] [system/feature] using [tech], [measurable result]

PROJECTS (optional for mid-level and above)
Project Name | Tech, Tech, Tech                            link
- [What it does, who uses it, one technical highlight, one result]

SKILLS
Languages: ...
Frameworks: ...
Infrastructure: ...
Data: ...

EDUCATION
B.S. Computer Science, University Name                      2021

How to adapt it by level

  • New grad or junior: Move Education to the top, under the header. Add relevant coursework only if it matches the role (distributed systems, databases, operating systems). Expand Projects to two or three entries with three bullets each.
  • Mid-level: Keep the order above. Give your current role the most bullets and show at least one example of owning a feature or service end to end.
  • Senior and staff: Add the two-line summary. Lead each role with the bullet showing the widest scope: cross-team projects, architecture decisions, or business outcomes. Our staff engineer interview guide explains the scope signals interviewers will dig into, and your resume should preview them.

Name the file clearly, such as "First-Last-Resume.pdf", not "resume_final_v7.pdf".

Turning Resume Calls Into Offers

A strong resume changes your response rate. It does not change what happens next. Every bullet becomes a possible interview question, so prepare a two-minute story for your top five bullets: the problem, your approach, trade-offs, and the result. That same material feeds your answer to tell me about yourself and your behavioral rounds.

Track your applications and response rate per resume variant. If a variant gets almost no responses after a few dozen targeted applications, rewrite its top third first: title line, summary, and the first two bullets of your most recent role. For the wider plan of where and how many places to apply, see our software engineer job search strategy.

Once your resume starts landing interviews, the live rounds become the bottleneck. TechScreen runs invisibly during your screen share and helps you structure answers, recall patterns, and explain trade-offs in real time on Zoom, Google Meet, CoderPad, and HackerRank. Try it on your next phone screen with 3 free tokens.

Get started free →

Frequently Asked Questions

Do ATS systems automatically reject software engineer resumes?

Usually not in the way people fear. Common tech ATS platforms such as Greenhouse, Lever, and Ashby store and rank applications, but a human recruiter typically decides who moves forward. Automatic rejections mostly come from knockout questions you answer on the application form, such as work authorization, location, or required years of experience. The bigger risk is a resume that parses badly or lacks the terms a recruiter searches for, so it never surfaces in their search.

Should a software engineer resume be one page?

One page is the right default for new grads, juniors, and most mid-level engineers with under about eight to ten years of experience. Recruiters skim quickly, and a single page forces you to keep only your strongest evidence. Senior, staff, and principal engineers with long, relevant histories can justify two pages, as long as the first page carries the most recent and most impressive work. Never go to two pages just to fit older or weaker bullets.

What is the best format for resume bullet points as an engineer?

Use an impact formula: a strong action verb, what you built or changed, the technical approach, and a measurable result. Google's former HR head Laszlo Bock popularized a version called X-Y-Z: accomplished X, as measured by Y, by doing Z. For example, 'Cut p95 checkout latency from 900ms to 350ms by adding a Redis read-through cache and batching inventory calls.' If you lack exact numbers, use honest scope like users, services, or team size.

How many keywords should I put on my software engineer resume?

There is no magic count. Include the specific languages, frameworks, cloud services, and practices named in the job description that you genuinely have, and use them inside your experience bullets, not only in a skills list. Match the employer's exact wording where it is accurate, such as 'Kubernetes' rather than only 'container orchestration'. Keyword stuffing, hidden white text, or listing tools you cannot discuss in an interview tends to backfire once a human reads the resume.

Should I use a PDF or Word file for my tech resume?

A text-based PDF exported from a word processor or LaTeX is fine for nearly every modern tech ATS and preserves your layout. Make sure the text is selectable, not a scanned image, and that it copies out in a sensible order when you paste it into a plain text editor. If an application portal explicitly asks for a .docx file, follow that instruction. Avoid tables, text boxes, and multi-column layouts that can scramble during parsing.

What should a junior developer put on a resume with no experience?

Lead with education or a short skills line, then a Projects section that does the job an experience section would. Pick two or three projects with real users, real data, or real deployment, and write each one with the same impact bullets you would use for a job: what you built, the stack, and an outcome such as users, performance, or test coverage. Include links to a live demo and a clean GitHub repo. Internships, open source contributions, and teaching assistant roles all count as experience.

Ready to use AI assistance in your next interview?

TechScreen is the invisible AI assistant trusted by engineers interviewing at Google, Meta, Amazon, and hundreds of other companies. Start with 3 free tokens — no credit card required.

Ace your next interview →