How to Write an Outstanding Software Engineering Resume

Close up of asian woman hands using laptop computer at home

Kilito Chan/Moment/Getty Images

Job seekers may be tempted to create a resume that lists all their skills and experience and call it done. But in today’s competitive tech world, you’ll need to tailor your software engineer resume to each position to grab attention.

Taking the time to use keywords and terms and remove any superfluous information can put your software engineering resume at the top of the pile. Read on to find out how.

Tailor your resume to each job you apply for

Tech companies use applicant tracking software that scans resumes for keywords before sending them to hiring managers. By tailoring your resume to the job posting, you dramatically increase your chances of making the first cut and getting a job interview.

Use job descriptions from employers as a template for your software engineering resume. Highlight responsibilities and essential skills from the lists, and replicate employer language and keywords in your resume and application. Just be sure to integrate them naturally (and don’t claim skills you don’t actually have).

For example, if you want to become a software engineer at Amazon, include phrases like “X years of software development experience with Java, Python, and C#/C++.”

You may have heard recommendations to hide keywords in white text on the page. Applicant tracking software converts your resume to plain text, so those keywords don’t stay hidden. Focus on highlighting the relevant skills you have rather than making it difficult for you to get in shape.

How to Format Your Software Engineer Resume

Hiring managers don’t have much time to spend reading resumes, so limit yours to one page. If you have many years of relevant experience, you can reach two pages.

A font size of 11-12 should allow you to fit everything in without clutter. List your professional and educational experiences in reverse chronological order.

Keep your resume design simple and professional. At most, use one pleasant color in addition to black and white. Impress recruiters with your skills, not a stark magenta background.

Use an intuitive and clean structure, either a one or two column format. Bullets aid readability, and white space helps your resume look clean and to the point.

A software engineering resume should include the following:

  • On your mind
  • Summary/objective
  • Work/employment experience
  • Skills
  • Projects
  • Education

On your mind

Your CV header introduces potential employers to your professional identity and personal brand.

In addition to your name, email address, and phone number, include hyperlinks to your LinkedIn page, GitHub profile, website, portfolio, and anything that highlights your applicable skills and talents.

The header doesn’t just tell recruiters how to reach you, it emphasizes what you can do.


The summary/objective section is just below the header, but remember to write it last. That way, it can capture the spirit of your resume and describe how your experience and skills will add value to the job you want.

This section should only be one or two sentences long and include some of the most important keywords from the job description.

Using the example of Amazon, a strong resume/objective might say: “Qualified software engineer looking for a role at Amazon Financial Technology where I can build on my 5+ years of software development experience with Java, Python and C#/C++”.

Professional experience

The work and employment experience section of your CV is where you can demonstrate the impacts and results of your work. The goal is to show, not tell, recruiters what you can do for the company.

Don’t just list tasks. Instead, help the hiring manager visualize that you’re doing the job successfully by using the STAR method to outline past projects and responsibilities: Ssituation, Jinterrogate, Astock, Rresults. Here you can highlight how your work benefited the organization or how you solved a problem.

Where possible, describe the impact of your work with statistics. For instance:

Instead of…

Timely implemented bug fixes


Cleared a backlog of 120 bugfixes in my first six months on the job

Instead of…

Updating quality control processes


Gave quality control processes their first update in five years, reducing QC completion time by 15%

Sentences and sentence fragments are acceptable.

If you’re new to the field, visit How to Become a Software Engineer to learn how to gain experience for your resume.


The skills section of your software engineer resume should be concise and easy to navigate. Try listing relevant skills in bulleted lists. Again, only include skills applicable to the job.

For our hypothetical position at Amazon, your list of technical skills might include:

  • Java
  • Python
  • VS#
  • C++
  • Agile
  • UNIX/Linux
  • Data structures
  • Service Oriented Architecture
  • object-oriented programming

Avoid listing soft skills. A bulleted list has no place for the context you’ll need to prove you have an abstract skill like “starting yourself”, and an employer is unlikely to trust your self-assessment without this context. Instead, record the people skills for your cover letter.


Now that your resume has caught the attention of the hiring manager, your projects section should showcase your passion for software engineering and include the most relevant projects for the position you want. Include one-line descriptions of a few projects and a link to your portfolio for more details.

In addition to work projects, you can use completed projects for courses or bootcamps, contributions to open source projects, and your own projects.

Commonly used portfolio formats include website, blog, LinkedIn page, or GitHub pages. For inspiration, explore How to Create a Coding Portfolio.


The education section should list the schools you attended, where they are, the date you graduated, and the degrees/certificates earned. Even if you earned something other than a degree in software engineering, completing a graduate degree demonstrates dedication and critical thinking skills to employers.

You are not required to include your GPA unless the job description specifically requires it. The exception: If you’re a recent graduate with little work experience and your GPA was high, listing it can demonstrate your attendance.

You can also include internships you did while in school and any software engineering or coding bootcamps you attended.

Additional topics

If you have the space and additional sections will add depth to your resume, consider including the following.


Are you a Certified Software Engineer? Do you hold certifications in specific programming languages ​​or platforms? List them, especially if the job description mentions them.


Only include volunteer work that is relevant to the job you are applying for. Be specific about the projects you have worked on and your roles.

Languages ​​you speak

If the job description mentions a preference for a particular language or if you are applying for a position in an international company, the list of languages ​​you speak may give you an advantage.

Professional organizations to which you belong

Include them if they apply directly to the position or if you have learned that the people likely to supervise you are from the same organizations.

SEE: 12 business organizations advancing DEI values ​​in tech

Courses you have taken

If your work or volunteer experience lacks a key element for the position, include any courses that could help supplement your skills.

If your previous experience does not include a key job skill, but you have taken a course in that area,

Hiring HackerEarth CTO Information

Vishwastam Shukla, a man in a blue suit, smiles in a professional photo.

Vishwastam Shukla is the Chief Technology Officer at HackerEarth, a platform to engage and find the best developers with hackathons. HackerEath enables companies to assess, interview and develop developers. Previously, Vishwastam was Site Manager and Head of Software Development at Amazon.

Responses have been lightly edited for length and clarity.

ZDNet: What are the main things you look for when reading a software engineer candidate’s resume?

Vishwastam Shukla: I generally look for what I call “performance peaks”. These spikes could appear in many forms. For example, it could be work experience in a large organization, a high-impact individual project, or sometimes even ivy league training for junior engineers.

These peaks tell me that the individual, when needed, can outdo themselves and show resilience against great odds.

ZDNet: What are the most common mistakes you see on people’s resumes that cost them the interview stage, and what can they do differently?

VS: Long and detailed CVs are immediately rejected. You can put your life’s work in 1.5 to two pages maximum. Short and clear resumes are the best.

Instead of listing 20 different skills you may have learned over time, talk about them in the context of your job. It may be helpful to focus on your most relevant experience for the position you are applying for.

ZDNet: When you read a software engineering candidate’s resume, what makes you instantly want to set up an interview with them?

VS: I want to set up an interview with a candidate when they describe their previous experience and the impact or complexity is absolutely unambiguous.

This article has been reviewed by Sierra Gawlowski, PE

A portrait of Sierra Gawlowski, a smiling brunette woman.

Sierra Gawlowski, PE, earned her bachelor’s degree in civil engineering and is a licensed professional engineer in Washington State. She has worked for a private consulting engineering company as well as for public bodies. Sierra enjoys mentoring engineering students and junior staff. She also leads a project team for Engineers Without Borders and currently sits on the board of Kilowatts for Humanity.

Gawlowski is a paid member of the Red Ventures Education Integrity Network.

Last revised May 23, 2022.

Gordon K. Morehouse