GuideLesson 10 of 11
Resume Checklist
There are plenty of resume checklists out there, but few are specific to Software Engineering roles. Here's a list of Dos and Don'ts for your Software Engineer resume.
This checklist is a condensed version of the Technical Resume course.
General
Dos
- Typography
- Use the same font throughout and use a readable and common font. Arial, Georgia, Helvetica, Roboto, are good choices.
- Date formatting
- Experiences should be listed in reverse chronological order. Use a consistent date format throughout. We recommend "MMM YYYY", e.g. "Mar YYYY".
- Do a spellcheck
- Remove spelling errors and typos! If you use Google Docs or Word to write your resume, this should be built-in.
- Keep within two pages (ideally one page)
- Unless you have over 15 years of experience, it is unlikely your resume will need to be longer than one page. You can use two pages if you need to but 90% of the time you wouldn't.
- Prioritize relevant things
- List things that are relevant to the role you are applying for. If you're going for an Android Software Engineer position, there's lesser value in listing your Artificial Intelligence side projects if you have other projects which are more relevant to the role. You do not have to include everything you've done before.
- Omit your school extracurricular activities unless they are relevant to tech (e.g. hacker club, hackathon organizer)
Don'ts
- Don't use design software to create the resume
- Your resume should be created using Google Doc, Microsoft Word, or LaTeX. Do not use any design software otherwise Application Tracking Softwares (ATS) will not able to parse it.
- Don't use acronyms only
- Avoid using acronyms, spell out in full, at least for the first occurrence of the term. Amazon Web Services vs AWS.
- Don't include a references section
- Reference checks are usually only done at the offer stage. Companies will ask if they require you to provide this.
Contact Information
Dos
- Include important information
- Make sure you have the following information listed at the top of your resume: name, email, phone number, location, LinkedIn profile URL.
- Use a personal email
- Use email addresses you have permanent access to, avoid using school emails if there's a possibility of you losing access to it in future. Regardless, it's still better to use personal emails as it will be relevant for life. Imagine using a school email when you are in your 30s!
- Be explicit about location information
- Be explicit about state and city information. Since USA is huge, if you are in the same state as the company you're applying for, the geographical proximity could give you an edge over other applicants.
- Format your phone number
- Format your phone number and include the country code: +1 (123) 456-7890
- Include useful links about yourself
- Add links to websites which demonstrates your professional background - personal website, blog, GitHub profile, Stack Overflow, Twitter, Medium, Substack, etc.
- Supercharge your LinkedIn profile
- Links text should include your username: "linkedin.com/in/johndoe" as opposed to "LinkedIn". This is because interviewers might print out the resume.
- Customize your LinkedIn URL. By default, your LinkedIn URLs will look something like
https://www.linkedin.com/in/john-doe-886903121. You can change it to a cleaner version without any numbers at the back by following these instructions.
- Give your GitHub profile a makeover
Don'ts
- Don't add unnecessary information
- There's no need to include unnecessary personal details like birthday, age, photo, which should not affect the outcome.
- Don't include links where there is no content
- You probably have GitHub, Medium, Stack Overflow accounts but if you haven't written anything there, there's no point including them. Only add links if they showcase your professional background.
- Don't include broken links
- You should click on all your links to ensure they're leading to the right destinations.
Professional Summary
Dos
- Summarize your background
- Use this section to summarize your background and point out unique points or specialized skills.
- Tailor to the role
- Align this section to the job role that you are applying for, using the same keywords where relevant.
Don'ts
- Don't state your objective
- The objective is clear from the role you are applying to.
- Don't specialize in too many things
- It's rare for people to have too many specializations and if you do that you will appear to be exaggerating. It's better to tailor the specialization you mention depending on the job posting.
Work Experience
Dos
- Use bullet points
- A resume is not a cover letter. List down your impact as bullet points in a concise manner.
- Use Google's XYZ formula
- Write your bullet points according to this format: "Accomplished [X] as measured by [Y], by doing [Z]."
- Example: Instead of saying "Built the checkout pages of the e-commerce portal in a team", say "Led development of an optimized checkout flow which boasts a conversion rate of 5%, resulting in an ARR of $10M by working with in a cross-functional team of 4 and doing extensive A/B testing."
- Quantify impact and achievements
- Numbers help with justifying impact. Possible ways to quantify achievements - number of users, queries per second, cost/time saved, revenue generated (make sure it is not sensitive information), number of people involved in the project, number of files/lines of code refactored, reduction in support tickets filed, etc.
- Include technologies
- Technologies used at work weigh more heavily than technologies listed in your skills as you are likely to have spent more time using that technology and as a result, more familiar with it.
- Give examples
- Giving concrete examples of past work is a way of demonstrating the scope and complexity of the work.
- Demonstrate leadership, scope, and complexity
- You should try to convey the complexity and scope of the projects. This is especially important if you are going for senior roles and have fewer actual years of experience than the standard for the role.
- Hiring managers will be more convinced you are up for the job if you have prior experience at your current company.
Don'ts
- Don't include unimportant things done at work
- Such as organizing offsites or social events for your team.
Skills
Dos
- Categorize skills
- If you have lots of skills to list, categorize them to improve readability. Examples of categories: Front end, Web frameworks, Databases, Cloud Platforms, Machine learning/Data, etc.
- Pay attention to formatting and letter casing
- JavaScript, not Javascript or JS. MySQL not Mysql. You get the idea.
- Only list skills you are confident of
- Keep your skills section high signal, prioritize the skills that are relevant and you are confident to demonstrate and defend during the interviews. Leave out things you have only used once or twice, otherwise it might look like you're "keyword stuffing".
Don'ts
- Don't list too many skills in the same domain
- Listing all of React, Angular, and Vue (front end frameworks) is overkill even if you are familiar with all of them. It is unlikely a company uses all three. Listing all of them will make you seem like an expert beginner, just list the ones that the job description asks for.
Education
Dos
- Mention your GPA if it is good
- Anything above 3.0 (on a 4.0 point scale) is considered good.
- If your overall GPA is low but your GPA for a subset of classes (e.g. a specialization is good), you can just mention that.
- Use official degree name
- Ensure your degree name matches the official degree you were awarded.
- Mention honor class and awards where relevant
- This helps put a perspective to your grades and helps you stand out.
- Mention Teaching Assistant (TA) roles where relevant
- For which classes if you have worked as a TA, mention it, as teaching is a sign that you have mastery of a topic.
Don'ts
- Do not write too much
- There is no need to focus too much on education if you are not a junior candidate (<2 years). The space is better spent on professional achievements.
Projects
Dos
- Be mindful of what you add
- Most people won't have projects worth adding to their resume. Only include projects if: (1) you don't have enough content in the work experience section, (2) they are being used by people and actually showcase your abilities, (3) demonstrate your passion in a new field which is outside your current working experience, especially if you want to switch into another field/domain.
- Explain the project, your role, and the technologies
- Most side projects will never be heard of, so you will need to explain what it is about. If the project is huge and done in a team, explain what your role was and what technologies were used to build the project. This is not very different from the "Work Experience" section.
- Include links
- If your project is live (website or on App Store), do include links where people can check them out. If the source is on GitHub, tidy up the README as well. Well-maintained side project demonstrates passion and ability.
Don'ts
- Don't list school assignments
- School assignments can be broadly classified under two categories - (1) assignments with standard answers and (2) open-ended projects where you can decide what to work on (thesis projects, research projects). The former provides little value and should not be included.