Master's of Mathematics student at the University of Waterloo, member of the Computational Motion Group.
Github: brookedolnyI have been fortunate enough to graduate from the University of Waterloo’s Software Engineering program with six four-month internships, which means I graduated from university with two full years of work experience. By far the biggest reason I was able to get offers from tech companies and work in such interesting fields is because the program runs resume critiques every year. Upper year software engineering students critique lower year students resumes, and then critique each others after the lower years all have feedback. This culture of upper years assisting lower years in getting jobs is a big reason I have gotten where I am, and so I continue to try and volunteer to help younger years get internships.
If you are applying for an internship and are looking for resume advice, hopefully this post is helpful to you! The advice is mostly geared towards those applying to tech and programming jobs, but if you aren’t in this field hopefully you will get something out of this post too.
For any tech roles, there are only a few sections you’re going to absolutely need: Experience, Projects, Skills, and Education. You want your resume to be exactly one page long, and the order of the sections should change based on your experience level in the field and where you’re applying. You will also likely want to have your email, a link to your Github (or Gitlab if you prefer) and Linkedin.
If you’re applying for a job through your institution’s job board, your education should go at the bottom. Otherwise, putting it closer to the top can be better if you are in a relevant program for the internships you’re applying to. On a personal note - I have always kept my institution at the bottom on my tech resume. I have education at the top of my formal CV, but thats a topic for another blog post! Also - if you don’t have the degree yet, remember to say you are a candidate for that degree. You do not have it yet!
The skills section is usually a summary of the languages, libraries, and tools you have worked with, and should also go near the top. Think of it as the tech worlds idea of a “summary” section you see in other fields, only focused on programming. If you have other previous internships, your experience section can go next. Note that “experience” does NOT mean just paid work experience - if you taught programming at a summer camp, you did volunteer tutoring or teaching, were lead programmer on a robotics team, or participate in a student design team or club, these can go in your experience section! You need to make sure you are able to give examples of tangible work you have done and emphasize the technical skills you gained by having this position.
The final section should typically be projects, and these should demonstrate your programming ability. Having at least one project on Github is more appealing to recruiters as well, since they can actually see you wrote code. If you were a repeated contributor to any open source projects, you can put these here. Any course projects that were open-ended and you had to design are fine too (as long as you have the rights to their IP! This is school-specific.). You will also likely want at least one project that isn’t related to a course, and that shows your interest in a specific topic (web dev, game dev, parallel programming). Any project on your resume you should be able to explain what you learned and why you chose to do the project. If you can’t do that, it shouldn’t be on your resume.
In general, I find the best layout for most students (and the layout I used) is the following:
You are also going to need to decide what tool you’re going to use to make your resume in. I personally use LaTeX, mainly because it results in clean and refined documents with consistent margins, and is very easy to customize. You can find my LaTeX resume on my Github if you need some ideas for layout. I’ve seen really well-done resumes done in canva and they’re easy to customize. You can also just use Microsoft Word or Google Docs, but I wouldn’t really recommend it.
In your content, you should be specific about what you did and what you improved. If you have any analytics (improved performance by x percent, decreased load times by y seconds on average, etc.), those are great to include. Languages you used, tools you helped create or design, any features you implemented are all important to add. Use action verbs for the first word of each bullet point, words like designed, implemented, integrated, identified, managed, resolved, conducted. This helps make your experience seem more impactful and interesting, and makes it more engaging to read.
Formatting is the difference between a good or decent resume and a great one, in my opinion. I’ve seen many students with great, well-written resumes that are not formatted well, making them difficult to read. A colleague once told me that a recruiter is spending maximum a minute reading your resume before deciding if they should consider interviewing you. While they may do a second pass, you want the key information to be conveyed as quickly as possible. I have a few standard pieces of advice for formatting.
There are also two simple tests to check the formatting of your resume:
It can be hard to make yourself stand out when recruiters are looking at hundreds of resumes. I usually give two main pieces of advice at resume critiques: have something you are passionate or care about on your resume, and make the resume’s style fit your personality. If you have a passion project you have been working on, or you volunteer regularly and want to put that on your resume, do it! Having one project that you have worked on for years and love to add to, or a volunteer position you are deeply passionate about can easily fit into your resume, and makes you different than the hundreds of other computer science students applying for the position. The second point is more about styling your resume. Pick header colours and fonts that are readable but not standard, that give your resume slightly more personality than using all black default font text (make sure they are still printable though!). I personally include a very short “interests” section at the bottom of my tech resume, and my interviewer actually read it and commented on it! (If you are curious, it was that I played ice hockey, and he commented that I have a more teeth than he expected for a hockey player)
tags: posts - resume - internship - advice