Reading Time: 15 minutes

In the name of God,

Hey guys, welcome back to my blog.

In this series, I’m going to explain inside out of my immigration story, plan and process. I hope it helps people or makes them think again.

In this episode, we are going to go through how I wrote my resume. Every software engineer should have a paper to represent himself with. For me, this took me quite some time and energy. Writing a resume is usually the first step when searching for a new job. Whether you want to move to a different place or not you will need a well-crafted resume.

For me writing a resume is hard. Knowing that you will have to change it and keep it updated is even worse. At first, it seems like an easy essay about yourself. With essays, you have space, time and whole vocabulary at your disposal. With resumes your resources are limited. Your resume will get only one chance so make it count.

Let’s get started

Writing a resume is not an one hour task that you can do and forget about it. It’s actually a development process and takes a long time (for me it did!). Just like what we do with the software it has to be maintained, you have to develop new features and more importantly fix bugs. So the best way I could control my resume development was by using versions!. Yeah, you heard me right! I versioned my resumes semantically!.

At the end of my interviews, I reached version 4,2. meaning I had resumes in 4 templates and the fourth version had 2 bug fixes!. As with any other versioning, keeping a good history of your versions will be handy along the path.

So you can see I took this resume development idea seriously!. This development lifecycle wouldn’t be complete without tests. Like any other software, resumes need a QA before release and have to be tested. Testing for me was the hardest part because there are not many free automated tests tools out there and no crash report on the user’s hands! Fun fact about testing is that I used A/B testing on my resumes to see which one fits best! and the results were surprising!

So don’t just go pick a template and write a few lines and think you have the best resume in the world! It took a few years to grow and gain knowledge, and your resume has to be very good to show a clear reflection of you. You can not write a resume in one hour and expect it to tell your entire story perfectly!

Again just like any software, your resume grows too. When adding more experiences or you want to make it specialized for a job description those versions can be very useful.

That’s my overview of resume maintenance. When it comes to writing I found that there are quite some tips and tricks to follow. After reading lots of articles I put together these tips to help myself with writing a good professional resume. As with any other tip, there are trade-offs. So when writing your resume you may think that this tip does not work for you or you might need other tips as well.

Only one page

Keep your resume as short as possible. Usually, having 10 years or less experience with a university degree will fit perfectly on a single page. I know that is a very hard one to claim, but I’m going to stand on it firmly!.

It’s very important because the longer it gets the less chance you have that somebody actually reads it. The more you write the more you have to explain later. The more you say the more you mistakes you are going to make. The more you write the less chance you are going to have when your resume passes an Application Tracking System (ATS). Finally, the more you write the more chance you are going to write not important stuff.

It might sound funny these days but, if your resume exceeds one page there is a chance that other pages get lost and the recruiter won’t see them at all. Of course, that only happens if they print it out. We can not ever be too sure, right?

Alright, we know it’s important to keep it short but the question is how? There are some technics that we can make use of to shrink our resume. I’m going to introduce a few of them here:

Using a single page template with more free space:

Finding a template might look like an easy task nowadays, but make sure that you are using a template that allows you to keep your resume on a single page.

Reduce the margins and spaces:

Most of the time the template you are using occupies a large amount of your page so either change your template or reduce the unused spaces (margins and dividers) to a minimum. It’s not really necessary to have lots of blank space around your paper.

Lower Font size:

Yeah, one of the easy ways to shrink your resume to one page lowering the font size. Just make sure it’s easily readable.

Remove your photo:

I’m going to explain this in greater detail in just a bit!

Rewrite and only highlight the very important points:

You don’t have to write a story from your childhood until now! So make sure that you are focused and presented.

So these were the points that I thought of and helped me to shrink my resume.

It’s time to ask the question again. Can I have a resume with more pages? Well if you have tried all of the above and still need more space and you are certain you will make good use of that extra, then yes. I would say we can add one more page. I have asked a few HR and recruiters so I can confidently say almost nobody reads the third page. So 2 pages is my max.

Remember there is no silver bullet and you have to figure this out by yourself. In my case, I have two versions one in a single page and one in two pages. The reason that I’m still keeping the two-page resume is that the second page is not that important for me so in case if they don’t have time to read it I’m OK with it.

Focused resume for each job

This is the hardest one to achieve but the benefits are really high!. Trust me the reader always wants to see how good you match the requirements and skills first. They usually match and mark the resume based on the job description. I added my skills relative to those stated in the job description.

There are ways that you can achieve this easier. One is to write a complete resume with small pieces left out to fill later and whenever you see a job just fill in the blanks and you are good to go.

*Confession I really did not do this except one or two times.

The template that works

Don’t push yourself to use a template that you don’t like or think that this does not present me well enough. Also, make sure your template allows you to modify it easily.

I don’t like graphical ones because they don’t work with ATS very well and sometimes they leave me less space. More importantly, I’m not super familiar with Photoshop which makes editing them harder.

Then came the picture question! Should I add my picture on a resume or should I use a template that does not have a section for that? After asking and reading a lot I figured not adding my picture has more good than adding it. The most important take was “people would judge me based on my picture even before talking to me”. Also removing that picture freed a good amount of space.

The next question for me was should I create my own unique template or should I just copy. The answers to this one did not satisfy me and I started to create it from scratch. After wasting a long time and spending hours fine-tuning everything I figured this was a terrible idea. I have used one of the free templates instead.

Skills that you know most

There are quite a lot of people who think having a skill section is wrong in the first place. But I think having a long list in Skills is wrong not the section itself.

I used to go on a rampage and write everything my head could name of and Then rank them. I thought I must show how good I am here. Yet there are quite a few wrong things with this thought which I managed to fix during lots of iterations.

The most important note here is don’t use this section to show off! This section is just an add-on to your experiences and clarifies which skills (tools, ways, and …) you used along the way. So if you are familiar with something that does not fit in the experiences or you learned something on your own you can add it in this section.

The ranking was the second problem. You should only add the skills you are most confident about. Not the one you worked or (even worse) you just heard of. A friend told me having more than 10 skills does not sound good and looks suspicious I used this as a rule of thumb.

Usually, the way I write this section is I would look at a job description and only write the skills that the job needs and I know most. Followed by some soft/general skills. Then with the help of a question, I fine-grain them to get final ones. The question was:

Am I prepared well enough to talk about this skill and answer questions even too deep?

If even this question did not help I would actually read some interview questions about that skill to see if I can pass.

This was the fastest and best way I could get to my list.

Experiences: focus on Achievements more and more

This section is the heart of your resume. so the more you work on it the better chance you will have later. There is a lot to talk about in this section but here I’m going to just explain things that worked for me.

First, remember to write your experiences from new to old so the latest job you have/had should be on top followed by the previous ones.

Then I would suggest writing a small summary of what you did there and what was your responsibilities. Don’t go wild here and write a 9000-word long essay here. Keep it short and to the point.

Finally and the most important part is to write about your achievements and remarkable moments for that experience using bullets. Bullets allow that line to stand out and force the reader’s eyes to catch them first, so try your best to make them promising and worthy.

Now some notes about these bullets:

  1. They should not be more than one line. try to rephrase it if you think you need to go beyond that
  2. Avoid sensationally words and feelings (ex: First in the world, Magical way, One out of 1000 and …)
  3. Use numbers as much as possible. So instead of saying drastically write down the percentage of that. ie: Applied moon project and managed to reduce bugs and crashes by 50%.
  4. Talk about what you have achieved not what you did. Creating an app is not an achievement, yet making that app more beautiful might be one.
  5. Don’t say abstract stuff. Your resume is not a puzzle map so be clear about your points. Also, tell the reader the reason for that achievement.

For the people who are like me and don’t like the word achievement I’m going to leave some real examples here:

  • TDD using AsserJ, Mokk, Junit, Espresso decreased incoming bugs by 66%.
  • Design and develop E2E encryption
  • Co-ordinated with BA/Business groups for a better understanding of functional requirements.
  • Developed 40+ apps with an agile team of 5.

Your work experiences and their bullets, in particular, should be the most important takeaways of your resume. Make them shine and count.

Separate sections

One of the most helpful elements for the reader’s eyes is Sectioning. Sections are important to every text. I even received some comments about better sectioning of my articles! Your resume is not an exception.

It’s better to use Sections to separate contexts in your resume. Sections play a very important role in your paper because they help the reader’s eyes to quickly pick what they are looking for and not get lost in the jungle of words. So using Sections is really important but be aware over sectioning can be a problem too.

A few examples of good sectioning are:

  1. Separating your experiences section with “Experiences” header on top.
  2. Separating each experience with your title on top of them.
  3. Drawing a line can quicky split everything in two.

It’s always good to ask a fresh pair of eyes for review and also test your resume using ATS.

Definitely talk about your Interests

People usually forget about humanity in their resumes. Leaving interest and hobbies out of your resume means that you are just a machine. I used to think that recruiters only care about my career, technical knowledge, skills, and professional experiences. Boy, I was so wrong!

They really need to know if we are a human or just some robots that can work. After all, they are looking for a human to join their team who has feelings, soft skills like communication, and culture. Robots don’t have any of that. So don’t present yourself as one.

They need to find out if you can communicate/get along/talk with the rest of the team. The best way to know that is to see if you have some common Hobbies/Interests with the rest of the team members. So don’t be shy and at least mention what you like to do in your free time.

One thing worth mentioning here is VideoGames and Movies don’t make a good Interest/Hobby. I have been told it’s better to leave them out from this list even though if you are a big fan of them. There are quite a few reasons a recruiter might have against them (scientific and made up).
These are the ones I could figure out:

  1. You are addicted to Computers
  2. You don’t have a social life
  3. You can not communicate with other people
  4. You are not performant enough

So think about what you are writing in this part.

Some example of Interests/Hobbies might be:
Spending time with my family, playing football, swimming, working out and etc.

Contact detail is correct and working

Honestly, I did not think there are people who would make a mistake in literally the most important part of a resume “Contact details”. But I have read, asked and been told that finding such an application is not that hard. I think it is not really necessary to emphasize it, but just a reminder, make sure of your contact details every time you want to send your resume.

Otherwise, how would you expect them to reach out to you?!

Avoid abstraction

Think of your resume as a very short and brief story of your life in the past few years. You have to make the reader follow your story and stays onboard until the end.

If there is one thing hurting the reader’s mind is Abstraction.

The more abstract sentences you use the less the reader will follow. Generally, we should not leave anything to the reader’s imagination. Unfortunately, the famous “Leaving as an exercise for the reader” does not really work here! In order to achieve this, we have to be as specific as possible.

In your bullet points be direct, in your bio/story share your personality using less ambiguous words. Avoid using sentences like: I’m a very good person, I can write code in the best way, I have worked with this tech.

No typos, Grammar and punctuation checks

Having typos or Grammer issues in such a short letter does not really make sense. The only meaning this fault is you do not care about yourself, job, and the company you are applying to. Thus make sure to review and get rid of them before applying even for the first time.

Nowadays there are lots of tools that can help you out with typos, grammar, and punctuation. Grammarly is one of them. This very text you are reading is verified by Grammarly too. Above that, I would strongly suggest asking a friend to review it.

Size and format

At first, I did not even know that I should have cared about my resume’s size and format. It turns out, in order to support every job application system its kind mandatory to have a lookout for these two.

Let’s start with size. My first resume was only 1.5MB. These days this volume is not something noticeable at all. But I figured the smaller sizes have a better chance of going through the process. For the record, there are some systems with a size limit of 1MB or less.

Now you might ask how can I reduce my resume size again. This is not really easy but there again there are some tricks. Removing that picture will help you a lot. Fonts are also very heavy and you need to watch out for them. Graphics take a lot of space too.

I usually make PDF export of my resume, in most cases, it’s enough. But I have come across some pages which only support DOC format so maks sure you have a copy in other formats too.

Run through an ATS

I have mentioned and warned you about a machine reading your resume called ATS a few times in this post but now is the time to talk about them. So what is an ATS?

ATS stands for the Application Tracking System. Basically it helps companies to manage job applications and interview processes. There are different versions with different capabilities of this software. It’s very hard to guess what kind of system your dream company is using. Companies usually have this system as their first step for your application.

Some of the ATSs come with a resume scan and match. What this feature means is that they read your resume and try to match it against the Job description and criteria provided by the company. The better match you are the higher chance your resume will be delivered to a real HR person.

To be a match they usually look for keywords and sentences from the job description on your resume. So the more keyword you used the better match you are. Hence my emphasis on a specific resume for each position.

Some of these machines only look for keywords and don’t really read your resume. So try to use keywords of the job description in your resume as much as possible.

Alright, these machines seem to be important how do we improve our resume for them?

One of the simple ways you can improve your resume for these machines is to copy all of its content (using ctrl+a and ctrl+c) and past it to a normal .txt file. Then try to read it yourself and see if everything still looks intact. For example check to see if you can see your first work experience right below the title of “Experiences”, or check to see if your contact details have been grouped and still showing correctly, also it worth checking if section’s names are not replaced with each other.

Your template is also very important for these machines. Make sure your template is ATS readable. A graphical template is not good, I learned this the hard way. My first resume was totally graphical (there was no text at all, just a big picture) and only after a few failures I figured my resume was not readable by those ATS machines at all.

There are some templates out there that work best with ATS but don’t do any good on the human eye and vice versa. What I did here was to create two resumes (version 3 and 4) one that is more human-friendly and one ATS-friendly. If a company is considered as big I would use that ATS-friendly but if the company is not that big I would use the Human-friendly version. I send them mostly based on luck and size of the company.
Honestly, I don’t like to have this separation myself. So if you guys are trying to find a template for yourself do your best to find and write it in a way that has a balance of both.

Remember I talked about sections?
One of the best ways to help an ATS machine parse your data is by using sections. ATSs will look for sections to find relevant information and match it against the job description.

Another issue I have faced was fonts. sometimes using different fonts for letters or words of a sentence works like a delimiter for the machine and instead of helping it will actually destroy the word.

One time I used not a very common font and typed “Experience” exactly like this, but when I looked at the output of the machine I saw “E” was on the first line and “xperience” on the next, so the machine could not find any of my experiences or some of them could only extract my previous ones, not the most recent one. These types of issues can be easily fixed using normal and very standard fonts and structures.

Finding a free scanning service is a little hard and I could not really find a decent one. But there are paid ones as well. I’m going to leave some links here that I have tried and worked with:

  1. CVScan: This is the only totally free software I managed to find but it only looks for keywords.
  2. Jobscan: Not free but they have a one-time free review for every account
  3. ZipJob: As far as I could remember they had the most detailed review.
  4. ResumeWorded: A friend recommended and I never used for myself.

There is also a trick I found We can do is to use Glassdoor and Linkedin as our free scanner! to do this you should create a profile first but do not complete your profile yourself and instead use the automatic tool they provide for doing so. Selecting that option will request you to upload a resume to the website. Then after the processing is done they try to fill in your profile with what they managed to extract from your resume! So this way I could simply see if some part of my resume was readable enough or not.

For example, there was a problem with my contact section and they could not extract my email address properly, after a few changes I managed to fix it. I know this option is not really meant to be used this way but it gave me a good start!

It’s good to keep in mind that improving your resume for these machines might come at the cost of less readability for a real person. So evaluate and measure everything carefully before you make any change.

Another very important feature of these machines is the debouncer. companies can specify a wait time for failing applications. Whether you fail in the middle of the interview process or if you even did not get a chance to enter the interview process you have to wait before you can try again. The most common periods I have heard is 6 month and a year. so if you apply to these companies and fail you have to wait for another 6/12 months before applying again. Thus make sure that you make it count.

Ask somebody to review your resume

Reviewing, in general, is one of the best practices of life. Your resume is no exception. Having your work reviewed and being able to review someone’s is a skill to grow. Asking other people reviewing your resume will definitely help you in one way or the other. A pair of fresh eyes will discover points that you can not by yourself easily.

If you have a recruiter friend who knows about this stuff then that person has to be your number one priority for reviewing.

But there are some ways that could increase the outcome of the reviewer. Before handing your resume to them make sure you know what you want from them and what kind of review will be more helpful.

Reading a resume without any clue or goals will not be very fruitful. For example, you can ask them to do it in only 3 seconds to see if the highlights of your resume stand out good enough. or you may ask them to look for any typos that you forgot to fix (if they find any you may want to check typos section again!). or you may ask them to see if your resume is well balanced and designed.

These are just examples of how you could improve reviewer outcomes for yourself. you might have some ideas for yourself too.

Read more

Last but not least I would suggest reading more and more about other people’s experiences and resumes. Especially people in your field.

So that’s it for all of my tips on how to create an eye-catching resume. Let me know if I missed anything or you have any other tips. Happy to hear different stories every day.

As always you can find me on Twitter.

Hope you enjoyed it. Thanks for reading.



Please enter your comment!
Please enter your name here