You need a resume to apply to almost any company. In this section, we will talk about what a good resume should look like and how to write one.

The purpose of a resume is to concisely describe your relevant past experience. But as long as it's clear and short, don't stress about it too much. Your resume doesn't need to look fancy, or to contain some right keywords. There are no magic resume secrets that will attract recruiters and get you to the interviews. Resume should just clearly lay out your experience and skills, and they should do the rest.

Here is a good resume example that you may follow. We will discuss it in detail below. (If you want to create a similar resume, you can use this template)


Breaking down the resume

Let's go over the resume above and look closer at some of the details.

  1. Template.

    This resume template is actually the one that me and my friends used to get job offers from Google, Facebook, and other companies, so we are sure that it's at least good enough.

    Note how simple this resume is. Again, your resume doesn't have to be fancy, beautiful, or "catch the eye". As long as it's clear, it's good.

    It's usually the best idea to use some preexisting template when building your own resume, and not try to invent the wheel yourself. You can use the template above, or pick a template in Google Docs or Overleaf. It doesn't really matter where you build your resume — just remember to save and share it in the pdf format later.

  2. One page.

    If you don't have more than 10-15 years of experience, keep your resume to one page (if you have 10-15+ years of experience, you can consider two pages if absolutely necessary). Even Linus Torvalds can probably have one page resume ("Linux, Git"), so why won't you?

    In almost all cases, one page is more than enough for everybody. Recruiters spend a very short time looking at your resume (often just tens of seconds), so they won't fully read a long one anyway. Moreover, a long resume can dilute your best points with unnecessary details, and simply tire or intimidate the reader. Plus, people often print resumes, and the second page can just get lost.

  3. English.

    It's very important to have good English in your resume. Resume with grammatical errors can leave a very bad impression, and decrease your chances.

    Be sure to double-check your grammar and spelling. After you are done writing your resume, share it with 1-3 friends, and ask them to give you feedback and to look for errors.

  4. Personal details.

    In almost all cases, you shouldn't include your personal details like age, nationality, or your photo in the resume. In a lot of countries, companies can't select people based on these traits, so the companies also don't want to see them in the resumes in the first place.

    Note that this doesn't apply in some countries, especially Asian ones, and you may need to include a photo or other details in your resume. Be sure to check the requirements first.

  5. Experience.

    In most cases, your job and internship experience should be the main part of your resume. It's usually the most relevant thing for a future job.

  6. Bullet points.

    Describe your experience as bullet points, and format them roughly as "Did X, which lead to Y". For example, "Implemented a backend cache, which led to 3x server speed improvement". Try to clearly describe what you did and why, and what results you have achieved. Also, quantifiable results are the best: did you improve the speed/latency/reliability? And by how much?

    Bullet points like this will describe your experience and impact much better and clearer than vague sentences like "Worked on the backend". Also, try to focus on your personal contribution — of course, it's fine that you worked in a team, but what exactly did you do?

  7. Projects.

    Personal projects are a great thing to include in your resume too. They also signal your technical experience, and, which is also important, your initiative and passion. Just pick 1-2 of your best projects — they don't have to be perfect, or even finished or released, as long as there is some technical work put in them.

  8. Education.

    A lot of companies don't care which university you went to or where — unless you have finished a great well-known place like MIT or Harvard. But still, most places need to know that you have (or doing) a Bachelor's Degree (sometimes in Computer Science specifically) — it may be required for a position, or for getting a visa — so you should include it in your resume. If you have a Master's or Ph.D. degree, you should definitely include it too.

    Regarding GPA a good rule of thumb is to include it if it's at least 3.0 — otherwise, you can omit it.

  9. Skills.

    Here you usually should list languages and technologies you are familiar with. Don't include everything you sometime used once, but be sure to have at least 3-5 things. The caveat here is that you may be asked about any of the things you include, so be careful.

  10. Awards and others.

    Do you have something else relevant to include? Some awards in the olympiads or competitions, scholarship or hackathon wins? While they may not affect things much, they still can help, so be sure to include the most impressive ones. Just remember to not include more than 3-5 of these.

  11. Printed.

    Remember that your resume may be printed. Leave big enough margins at the edges of the page, and don't use hyperlinks — always fully spell out the links you include. Also, make sure to have big enough font and line height — some people may have difficulty reading small text.

What not to include

What not to include is probably as important as what to include in the resume. Here are some points:

  • Leave out everything irrelevant. Your hobbies, favorite movies, or life motto don't have anything to do with the job, and will just take space.

  • Unless position requires it, you can also skip the "natural" languages you know (English, French, etc). Usually, they don't affect anything.

  • Objective. You sometimes can see resumes with objectives — something like "I am a backend software engineer with a passion for programming looking for ... positions". These objectives don't add any value and can even limit your possibilities, so it's better to omit them.

  • Listing all university courses you took or school projects you did may make your resume seemingly bigger and more impressive, but these usually don't affect anything and just clutter your resume. In the worst case, a recruiter may think that you included them simply because you don't have anything really valuable to write.

Frequently Asked Questions

  • What should I write in my resume so that I will be definitely invited to the interview?

    Again, there is no magic formula, no "right keywords", and no "best templates". Just make your resume clean, and clearly describe your relevant experience. And after that, getting to the interviews always takes a bit of luck.

  • Should I use the same resume everywhere?

    Generally, one good resume will work for all companies. But if some company requires something specific, you may adjust your resume a bit to highlight the relevant parts more, or to include something new. In this case, make a copy, to keep your "main" and "adjusted" resumes separate.

  • I don't have anything to include in my resume! What should I do?

    Think if you may be forgetting something. Any projects you did in the university, or some internship? People often don't include things because they are afraid it may be irrelevant.

    If you really think you don't have enough to include, consider finding an internship, or you may take some time to learn some technologies and build a simple personal project with them. It will take some time, from several days to a couple of months, but will make you a better engineer and give you some material for the resume.

Action Items
0 / 3 completed (Log in to complete action items)
1. Choose your resume template.
Choose the template you like. You can use the template from the article, or pick a template in Google Docs or Overleaf.
2. Create your resume.
Try to follow the advice from the article.
3. Share your resume with 1-3 friends and ask them for the feedback.
Having somebody check your resume is a great way to improve it and to avoid errors.