TL;DR

Lead with a technical skills section matching the job description. Write impact-driven bullet points (not just responsibilities). Include projects with links to GitHub or live demos. Keep it 1 page for <5 years experience, 2 pages max for senior roles.

Software Engineer Resume Structure

Tech resumes follow a specific format that recruiters and ATS systems expect. Here's the structure that works best:

  1. Contact Information - Name, email, phone, LinkedIn, GitHub
  2. Summary (optional) - 2-3 sentences for senior roles
  3. Technical Skills - Categorized by type
  4. Experience - Reverse chronological, achievement-focused
  5. Projects - For junior devs or career changers
  6. Education - Degree, bootcamp, or relevant coursework
  7. Certifications (optional) - AWS, Google Cloud, etc.

Technical Skills Section

This section is critical. It's what recruiters and ATS scan first. Organize by category and match keywords from job descriptions.

Example Technical Skills Section:

Languages: Python, JavaScript, TypeScript, Java, SQL

Frontend: React, Next.js, Redux, HTML/CSS, Tailwind

Backend: Node.js, Express, Django, FastAPI, GraphQL

Databases: PostgreSQL, MongoDB, Redis, Elasticsearch

DevOps: Docker, Kubernetes, AWS (EC2, S3, Lambda), CI/CD, Terraform

Tools: Git, GitHub Actions, Jira, Figma

Tips for the Skills Section

  • Only list what you can discuss in an interview. If you used a framework once, don't list it.
  • Match the job description. If they want React, put React first.
  • Keep it current. Remove outdated technologies (jQuery, unless relevant).
  • Don't rate yourself. "Python (5/5)" looks unprofessional.

Experience Section: Writing Impact-Driven Bullets

This is where most developers struggle. They list responsibilities instead of achievements.

The Formula

[Action Verb] + [What You Did] + [Technology] + [Quantified Impact]

Weak:

Responsible for developing features for the web application

Strong:

Built real-time notification system using WebSockets and Redis, reducing average response time from 3s to 200ms

Weak:

Worked on improving application performance

Strong:

Optimized PostgreSQL queries and implemented caching layer, improving API response times by 60% and handling 3x more concurrent users

Weak:

Participated in code reviews

Strong:

Led code review process for a team of 6 engineers, establishing standards that reduced production bugs by 40%

Metrics to Include

  • Performance: Response times, load times, throughput
  • Scale: Users served, requests per second, data processed
  • Quality: Bug reduction, test coverage, uptime
  • Efficiency: Development time saved, deployment frequency
  • Business: Revenue impact, user growth, conversion improvements

Example Resume: Mid-Level Software Engineer

Full Resume Example:

Alex Chen

San Francisco, CA | [email protected] | github.com/alexchen | linkedin.com/in/alexchen

Technical Skills

Languages: Python, JavaScript, TypeScript, Go

Frontend: React, Next.js, Redux, Tailwind CSS

Backend: Node.js, FastAPI, GraphQL, REST APIs

Infrastructure: AWS (EC2, Lambda, S3, RDS), Docker, Kubernetes, Terraform

Databases: PostgreSQL, MongoDB, Redis

Tools: Git, GitHub Actions, DataDog, Sentry

Experience

Software Engineer | TechCorp Inc. | 2022 – Present

  • Designed and built microservices architecture handling 50M+ daily API requests with 99.9% uptime
  • Led migration from monolithic Django app to containerized services, reducing deployment time from 45 minutes to 5 minutes
  • Implemented real-time data pipeline using Kafka and Redis, processing 100K events/second
  • Mentored 3 junior developers through code reviews and pair programming sessions

Software Engineer | StartupXYZ | 2020 – 2022

  • Built customer-facing dashboard in React, increasing user engagement by 35%
  • Developed RESTful APIs serving 10K+ daily active users
  • Reduced infrastructure costs by 40% through AWS optimization and reserved instances
  • Implemented automated testing, increasing code coverage from 45% to 85%

Projects

Open Source CLI Tool | github.com/alexchen/cli-tool

  • Built developer productivity tool in Go with 500+ GitHub stars
  • Implemented plugin architecture supporting 20+ community-built extensions

Education

B.S. Computer Science | University of California, Berkeley | 2020

Resume Tips by Experience Level

Entry-Level / New Grad

  • Lead with education if from a strong CS program
  • Emphasize projects, internships, and relevant coursework
  • Include hackathons, open source contributions, personal projects
  • Link to GitHub-make sure your repos are polished
  • Keep to 1 page

Mid-Level (3-7 years)

  • Lead with technical skills and experience
  • Focus on impact and scale of projects
  • Show progression (increased responsibility, leadership)
  • Include 1-2 significant side projects if relevant
  • 1-2 pages depending on depth

Senior / Staff Engineer

  • Include a brief summary highlighting expertise
  • Emphasize technical leadership, architecture decisions
  • Show cross-team impact and mentorship
  • Include system design, scalability achievements
  • 2 pages acceptable

ATS Optimization for Tech Resumes

Most tech companies use Applicant Tracking Systems. Here's how to optimize for them:

  • Use standard section headers: "Experience" not "Career Journey"
  • Include keywords from the job description in your skills and bullets
  • Use standard formatting: No tables, columns, or graphics
  • Spell out acronyms once: "Amazon Web Services (AWS)"
  • Submit as PDF or .docx (check what they prefer)

Reading job descriptions and extracting keywords manually is tedious-especially when you're applying to multiple roles. MORT's Resume Builder automates this by analyzing job descriptions and tailoring your resume's keywords and phrasing to match what each company is looking for.

Common Mistakes to Avoid

Common Mistakes to Avoid

  • Listing every technology you've touched. Quality over quantity.
  • Vague bullets. "Worked on backend" tells recruiters nothing.
  • No links. GitHub, portfolio, deployed projects add credibility.
  • Typos in code examples. If you include code snippets, triple-check them.
  • Too long. Senior engineers at Google have 2-page resumes. You can too.
  • Objective statements. These are outdated. Use a summary or skip it.

Tailoring Your Resume for Different Roles

Not all software engineering jobs are the same. Adjust emphasis based on the role:

  • Frontend: Emphasize UI frameworks, responsive design, performance optimization, accessibility
  • Backend: Emphasize APIs, databases, scalability, system design
  • Full Stack: Show breadth across both, highlight end-to-end ownership
  • DevOps/SRE: Infrastructure, automation, monitoring, incident response
  • ML Engineer: Model development, data pipelines, ML frameworks, research

If you're specializing in one of these tracks, a role-specific example can help you calibrate emphasis and keywords: see our dedicated backend developer resume example or frontend developer resume example for bullet points and keyword lists tailored to each specialization.

Build your software engineer resume

MORT's Resume Builder creates ATS-optimized resumes tailored to specific job descriptions. Import your LinkedIn, add the job posting, and get a customized resume in minutes.