The Dos and Don’ts of a Software Engineer Resume to get you shortlisted for interviews more

Improve your resume to get noticed and shortlisted by the recruiters more

Aqeel Anwar
6 min readDec 15, 2021


Putting yourself on a piece of paper in an effective way can be a daunting task. Since it is going to be your first impression to the hiring managers/recruiters, you need to make the most out of it. You might be a great software/Machine Learning engineer, but if you fail to effectively present it on your resume, it is going to hurt your chances of being shortlisted for the interviews.

This article aims at highlighting some of the important dos and don'ts for a Machine Learning/Software Engineer resume. The article is divided into two parts — The Looks and The Content. In the first section, the general appearance of the resume is discussed, while in the later section, the actual content is discussed.

A. The looks:

The first impression of your resume is how it looks in general. Recruiters rarely start reading the resume right after opening it. A quick skim through /scan of the resume is done before delving into the specifics. A good look at the resume guarantees that it will be read further or with interest.

To make sure that your resume is appealing visually, consider the following points.

1. Concise:

Your resume should NOT be more than 2 pages long (One page is even better). A longer resume tends to lose the reader's interest and has a negative impact. Only academic resumes are justified to be longer.

2. Compact:

Your resume should NOT have too many white/empty spaces, nor should it have wide margins. As discussed above, you only have 2 pages to showcase yourself, make sure to use most of them.

Resume should be compact — Image by Author

3. Resourceful:

Make use of hyperlinks for your LinkedIn profile, your personal/advisor’s webpage, your GitHub projects, to cite relevant projects/papers in the content section, etc. Take a look at the example below. Hyperlinks circumvent the need of copy-pasting the link to a browser, making it much more effective. Most of the time, people won’t open the link if they have to copy-paste it to the browser.

Make use of PDF hyperlinks — Image by Author

4. Coherent:

The resume should have the same formatting across the entire document. Make sure the indentation, font size, text formatting, etc. is coherent across the document. An incoherent formating throws off the reader’s interest and portrays a non-serious attitude.

5. Updated:

Make sure your resume is updated. It's always good to have the last update tag at the end of the resume indicating to the reader when was the resume last updated.

6. Few colors if any:

Too many colors on your resume can be distracting. Use either a complete black and white resume, or if you wish to choose colors, make sure you don’t have more than two colors. The purpose of colored text should be to highlight important sections. Also, the color you select should be high contrast. Most of the time the resume is printed on paper and passed around. Printing a color resume as black and white should not make it difficult to read.

7. Format:

Never share an editable file (.doc, .docx, etc), always share your resume as a PDF file. A word file can have different formatting when opened in different versions of MS Word. Also, someone can mistakenly edit it. It’s better if you can use LaTeX. Changing one thing in MS Word wreaks havoc. LaTeX makes things easy.

8. LaTeX goes a long way:

Most people use MS Word to create their resumes because it is easy to use. But sometimes, it can be really difficult to achieve certain formatting in MS Word. If you are not careful, moving things around can ruin the entire outlook of your document. LaTeX on the other hand is a command-based scripting tool that initially is hard to use, but once you get used to it, the formatting and the outlook are much better than any documenting tool you have worked with. To get started (hassle-free) with LaTeX, you can create a free online account at and get started with one of the many resume templates available.


B. The content

1. Personal Information:

Make sure you have the correct personal information. The email ID used should not sound nonprofessional. It should be as close to your name as possible without any silly nouns/adjectives (such as etc.). Do not include your mailing address or your picture.

2. Tailored:

Modify your resume to reflect relevance to the job description highlighting the important keywords. E.g. say if the job description asks for experience in Python language and you have the relevant experience, make sure to mention it explicitly when summarizing your job responsibilities.

2. Showcase Open-source projects:

Open-source GitHub projects are a great resource to showcase your abilities to the recruiter. These projects can be related to your course work, research or can be some part-time hobby projects. Make sure to include the ones relevant to the job you are applying for. For example, if a job requires python development, you don’t need to link the GitHub projects on web-designing (remember it should not be more than 2 pages long, hence not everything can be put on the resume).

3. Relevant Courses:

The goal is to convince the recruiter that you are a great match for the job description. One of the best ways is by listing a few relevant courses that you have taken in the area. Important to note here is that your resume should not be your degree transcript. You should not list more than 3–4 courses. This list should be tailored based on the job description.

4. Relevant Skills:

Make sure to include a section of skills relevant to the job you are applying for. This makes it easier for the recruiter to find relevant information and does not need to dig in to see if you are a good match. For example, if applying for a Machine Learning position, it's a good idea to include ML platforms that you have used such as TensorFlow, Keras, PyTorch, etc as well as languages such as Python, C++, etc.

5. Accomplishments:

In your work experience section, make sure you not only mention your responsibilities and duties but also your accomplishments. Highlight the impact of your work. E.g. instead of writing

Worked on the problem of neural network-based facial recognition using TensorFlow resulting in a classification accuracy of 98%.

write this

<what is it?> Led a project on neural-network-based facial recognition using TensorFlow that yielded an accuracy of 98%. <what’s different?> An end-to-end stand-alone system was developed that can work off of existing CCTV camera system using plug-and-play technology. <Accomplishments> The system was successfully implemented in the XYZ university in their graduate classes. <impact to company finances> The reliability and accuracy of the system yielded the company a long-term implementation and services contract for it to be implemented in their three other campuses across the country.


An impressive-looking resume goes a long way in getting shortlisted for the initial interviews. This article covers the dos and don’ts of the look and content of your resume.

If this article was helpful to you or you want to learn more about Machine Learning and Data Science, follow Aqeel Anwar or connect with me on LinkedIn or Twitter. You can also subscribe to my mailing list.



Aqeel Anwar

Senior ML Engineer @NVIDIA | ex-Samsung | GeorgiaTech | Writer | Researcher | Traveler | |