written on 12/06/2019

The ultimate guide writing a Software Engineer Resume

Applying to companies is hard. The first step to get a new job is to have a nice resume which you will use to apply to the specific company. Normally, this is the first step where the applicant is getting into contact with the company. It is someone's first impression and is really important to have an overall smooth interview process.

After reviewing dozens of resumes in the past years, I decided to write this series of articles to give insights on what I find important when writing a resume. In my time as a Software Engineer at my old company 3YOURMIND I probably reviewed around 100s of resumes and I also helped friends and colleagues with improving their resumes. These colleagues and friends received offers by big technology companies in Europe like Klarna, GetYourGuide or Zalando. Besides that, people on LinkedIn reached out to me to review their resumes. It is an important skill that will lead you through your career. With this boost, you might be able to achieve more in your career in comparison to other people with the same skillset.

Blog posts

  1. The general structure of a resume
  2. WIP: The 10 Second Rule for resumes
  3. The header of your resume
  4. WIP: Showcasing your education perfectly
  5. WIP: Let the Work Experience speak for itself
  6. WIP: Let your Projects section shine
  7. WIP: How to list Technical Skills in a resume
  8. WIP: Target your resume to the role
  9. WIP: Perform a good last impression

How the series will be structured

As I stated earlier, this guide will be split into different blog posts. The reason for this is that a resume, or also known as a CV, has different sections in it and each section has its worth and nuances. Nevertheless, we will start by giving an overview of what a resume is looking like in general. This means what things should go into the resume or should better be left out. Another important rule which will be discussed in this series is the 10-seconds rule which decides if your resume is actually looked at or is thrown into the trash immediately by the hiring manager. After that, I will cover most of the sections in the resume like "The Header", "The Experience" or "The Projects" section. In the end, we will also take a look at some tools which will support you in writing resumes or how to leave a good last impression when the hiring manager actually reviewed your resume.

Why this guide might be not 100% perfect

Resumes are opinionated. Every person on this planet is different. Everyone has their views. Some people prefer capitalism and other people prefer communism. Some people are neutral. The same goes for resumes. There is no perfect resume. Every company you will apply to will see your resume in a different light. Of course, it is important to learn how these companies are thinking to give your resume the small extra touch which will make it better than all your competitors who are fighting for the position. I mainly worked for technology companies in Germany, Berlin. These companies were almost always English-speaking and had some vibe of San Francisco software companies. The culture of these companies is nearly the same and work is also affected by it. But the more important factor is that people think in the same way. When applying to traditional german companies the guide written here will be not as successful because the thought process is different for these companies. But "Step 8 - Target your resume to the role and company" will cover the pitfalls in which you can fall.

Sometimes companies are just opening positions because they have to. The reasons for this can be quite wild from visa sponsorships to just beating the competition in the number of offered positions. So do not ever feel bad for getting a rejection for an application. You do not know if this position was existing.

Other channels for applications

Most application tracking systems (ASTs) also support parsing different social profiles. These social platforms are most often LinkedIn, GitHub and a personal homepage. All of these things might influence the decision process of the hiring manager. I plan to write different guidelines on these social media profiles on how to get most of the recognition out of them. But these are separate topics to the resume because normally a Hiring Manager will look shortly at the applicant's resume. In this time most of the hiring managers will decide to go on with the interview process or to cancel the process. Just if they are undecided, they will try to look into social profiles to analyze if you are capable of doing the job. But most often, the reason why they are undecided is that your resume was unclear and did not point out your skills in the right way. That is why this series will focus entirely on the resume.

It will be a long process

Writing a resume can go quite fast if you know what you are doing and you have previous experience with creating resumes. The more you work on your resume, I also suggest looking at other people's resumes. Sources are hard to find but I can recommend the subreddit r/cscareerquestions. You will find examples at the end of this paragraph. Reviewing other people's resumes will give you insights on what other people might value. It will give you another perspective to review your statements on your resume. These are the most valuable lessons. You need to be able to put your view into the perspective of the other people. Throughout my career, I learned that this is one of the key skills in Software Engineering but also in writing a strong resume. This requires a lot of experience to master, but everyone can do it with a bit of work.

You can find examples of resumes, as I said, on the subreddit r/cscareerquestions. This subreddit is mostly used by students. So be careful about what information is shared there. The subreddit has a resume advice thread twice per week. One of the latest can be found here. Try to look at some resumes after reading this series and try to pinpoint possible issues with the resumes. By pointing these things out, you will learn not to do these mistakes in your resume. It will give you another perspective and will automatically make your resume skills stronger.

Resume templates

Most of us engineers are not designers and it shows in our resumes. In most cases, this is completely fine but as we will learn later a hiring manager will not look a long time at the resume. This makes it important actually that your CV is also visually attractive. It is not hard to design a resume in Word or Google Docs. There are limitations of course but there is also a huge amount of resume builders on the internet. These online tools will help you a lot to get an initial version of your resume going. I always recommend using Google Docs though because in most cases it is enough. A resume should be slick and too adventurous designs might mislead the hiring manager on properly assessing your education, projects, and skills. For design roles, this might be ok, because it shows the creativity of the designer but for software engineers, this is far more unimportant. The content in the resume is far more important than the design of it.

resumebuilder.com

resumebuilder.com is probably the best online resume builder that exists. It just offers four templates but these can be completely used without signup. Another great thing is that the tool supports to change the text of the headings which means that resumes could be also translated. This might be needed if you apply to a company that is using the local language like German mostly.

resume.io

resume.io is the second choice I would choose. It requires an email and signup but provides 13 free templates for your resume. It will not put any branding on your resume which is super nice but also does not support any other languages than English. That is the main pain point of the tool.

standardresume.co

standardresume.co is also an alternative to the previous two solutions. The only problem I had personally was the adjustments of the template. The tool just offers one free template and with limitations on adjustments for the free account, it never was considered for me personally. Also, the tool requires signup which is not so nice. It is a normal Freemium application.

Other alternatives

All other alternatives I have found like cakeresume.com, resumemaker.online or visualcv.com all require signups and have the branding of the resume tool on the final PDF. I do not like that branding is included since it takes away the professionalism of the template. Most of the solutions are also just offering limited templates and feature sets except you pay for them. I did not consider paying since there are good alternatives listed above.

Latex

There is also another way to write a resume. Latex is a syntax that is mostly used in sciences to create documents. It supports a lot of specific functionalities for science work and might fit into your workflow to create your resume. There are also a lot of free templates flowing around the web but I have found Latex to complex to create a resume in my time as a software engineer.

More From Web Dev Stories

The General Structure of a Resume

by Kevin Peters

2019-12-8 - 8 min read

The Header of your Resume

by Kevin Peters

2019-12-29 - 7 min read