Socratic Form Microscopy

Resume Tips For Students

by Zach Jacobi in Advice, Software

I graduated from the University of Waterloo with a degree in Honours Nanotechnology Engineering in 2015. Like all engineering programs at UW, this is a coop program. Over the course of four coop terms, I submitted over a hundred resumes and did about 20 interviews.

After I dropped out of graduate school, moved back to Waterloo, and got a job at Alert Labs I suddenly found myself on the other side of equations. I’ve now had a chance to interview students and look at resumes. Hundreds of resumes. Do you know what looking at 200 resumes in a day does to a person? It’s not pretty.

Looking through all these resumes, I was struck by a bunch of self-defeating things that students did. Some of them I remembered doing myself. The double vision was… enlightening. I considered posting an angry anonymous rant on the UW subreddit, but with some helpful prodding, I decided to make a list of advice instead.

Note that all advice is context specific. These are tips that are guaranteed to work if you’re applying for a job and I’m looking at your resume. They’ll quite possibly work well for jobs reviewed by other UW alumni, who also understand the process from both sides. They’re also tips optimized for software jobs, because that’s what I’m hiring for and that’s what I have the most experience applying for. Follow my advice at your own peril.

As always, the views expressed here are my own.

Overall Strategy

Scientists used to partition animals into r-selected species and K-selected species (it refers to the constants the species ostensibly maximized in a population dynamics equation). K-selected species (like humans) have relatively few offspring, but put a lot of effort into each of these offspring. On the other hand, r-selected species (like rats) have a ton of offspring but give each of these offspring very little care.

Which strategy is superior depends a lot on environment.

In coop, it’s the same way. When you’re in 1A or 1B, it actually makes a lot of sense to have a few general resumes (that you still proof-read like mad) and send these out to as many companies as CECA will let you. As you gain experience and figure out what you want, it can pay dividends to become picky about which jobs you apply for and spend a lot of time crafting each resume to maximize the chances that you’ll get an interview.

r-Selection: Apply for all the jobs

If you’re in an early term and using r-selection, you should still spend some time looking at each job. You can send out a lot of resumes, but not an infinite number of resumes and a few heuristics can maximize your chances of being hired. You should probably avoid applying to intermediate and senior positions (the hiring manager may just ignore all first years).

If your resume is sparse, focus on QA jobs, or jobs in early stage companies that can’t afford to pay you very much; they’ll be the most likely to hire you if you lack some (or even most) of the requirements for the positions. Start-ups that are remunerating competitively because they need someone to hit the ground running will be much less likely to extend you an interview if you lack some of the skills they’ve listed.

In most cases, you won’t want to use a cover letter. The person reading it can tell instantly if you’re sending the same one to everyone (yes, even if you change the names), at which point it becomes mostly useless. If you’re using a form letter, the only reason to send one is if you want to prove to the employer that your writing skills are up to scratch. This means that your cover letter must be perfect. Reading it over a few times isn’t enough. Read it out loud twice, then pass it off to a friend to read. Then incorporate their edits and read it out loud twice more. If you don’t trust your own writing, bring it to the writing centre and have them help you.

Don’t be too married to r-selection though. If there’s a job that you’re really interested in, follow the K-selection advice and put together a really solid package.

K-Selection: Optimize your Resume

When you’re in your later terms, it can pay to be picky. Interviews are a huge time commitment and you don’t want to have to do 20 of them (I know people who’ve been in this situation and they did not enjoy it). Look through job postings carefully. From the information you have, imagine yourself working there. Are you happy? Fulfilled? Excited to go to work? If no, then pass.

In addition to optimizing your resume, you should write a unique cover letter for each job. How unique? My rule of thumb is that approximately half of the cover letter should be specific to the job. Be sure to mention whatever it was you imagined would make you happy at the job. Tell the hiring manager that you expect to be able to do your best job there because of **_**. Highlight a skill from your resume that the employer is looking for and tell them (in one paragraph) how you used it in a previous coop term or personal project. Tell them the benefits that that company got from you applying that skill there. You want to sell them the idea that their life will be better if you’re working for them, doing that thing.

If you have any blemishes on your record (a failed coop term or low ranking), you can ignore it. This is easy mode and probably the safest bet. But if you’re feeling adventurous or think your dream job has high standards explain what happened. A reasonable explanation can move a resume from the reject pile to the interview pile. Owning up to failures shows maturity. Introspecting and planning on how to do better shows even more maturity. Trust me when I say most employers are looking to work with mature adults.

On your resume, judiciously prune references to skills that the company doesn’t care about. If there’s something you’re so proud of or skilled in that you don’t want to cut it even though it wasn’t in the posting, move it to the end of the skills list. Make it easy for them to see that you have framework X or language Y. When discussing your past coop terms, reference these skills/languages/frameworks. Give them confidence that you really know it.

If you have hard numbers on improvements that you’ve made, let people know. On my resume, I talk about a script that used to take six weeks to run and can now be run in two hours. Like I said above, you want them to believe that things at their company will be X% better with you working there.

Specific Nitpicks

Here I’ve collected every single resume “feature” that has made me groan over the past week. Please don’t do these things!

Microsoft Office

If I am interviewing you for a programming job, I expect you to know how to use Microsoft Office. Because you got into UW, I can safely assume that you know how to use Microsoft Office. Unless I specifically mention in my posting that I want you to know how to use Microsoft Office, you can use the real estate that mentioning it on your resume would have used to tell me about a skill I will actually care about. Save us both some time here.

I don’t care what CECA says, you are not helping yourself if you apply to a job at a software start-up (or Google, or Facebook, etc.) and take up valuable resume space talking about Microsoft Office. Not even Microsoft cares. Just don’t do it.

Familiar With…

Look, I too was a coop student. And sometimes I would see a really cool job with a technology I didn’t know much about. And I would write on my resume: “Familiar with Technology X”. I never did this with something I’d never used. But I stretched the definition of “familiar” pretty darn far.

I would formally apologize to every employer I did this to, except I’m now 98% sure they all knew exactly what I meant with “familiar with”. When I see your resume says “familiar with node.js”, I know right away that I can’t leave you unsupervised working on a node.js project. Familiar with really means “I used this for a week in class” or “I started to work on a project using this but got pulled off of it a day later”.

The worst part comes when you get to the interview. The most common beginning to a question about anything a student is “familiar with” is “well, to be honest with you…” followed by an explanation of why they only sort of know the language/technology and can’t give me a decent answer to the question. It’s frustrating and disappointing, especially when (against all logic) I trust that you’re actually familiar with it and you crash and burn in the interview.

I don’t have a great solution to this one, because the resume arms race makes it hard not to try and inflate what you know. I think the thing I tried to do (when I resisted the temptation to use “familiar with”) is to give context around a technology. Instead of “familiar with Perl”, I’d write “read and rewrote a Perl application”. Instead of “familiar with Angular.js”, I’d write “created a prototype application in Angular.js”.

Anyway, I guess all I really have to say is that you’re fooling no one with “familiar with” and you’re shooting yourself in the foot for interviews when you use it. If you have a foolproof solution to this problem, let me know!

Nitty Gritty Details

This is similar to and complementary with the previous point.

Anything you put on your resume is fair game for an interview question. Be prepared to expand and explain any acronym you use. Read over your resume and make sure you can do this. Actually do it. Don’t just think to yourself oh yeah, AFM, got that, no problem. Explain atomic force microscopy out loud. Notice how many times you say “um”. Ask yourself if the explanation was clear. If you aren’t satisfied with the answer, practice until you are. Remember that this is easy mode. There’s currently no pressure on you. If you’re struggling now, you’re going to crash and burn during an interview.

If you don’t have time to brush up, then remove the acronym or accept that if you get asked about it you’ll probably lose your shot at an offer (and have no one to blame but yourself). If you can’t explain one thing on your resume, I immediately lose faith in your ability to explain anything else on it. You don’t want me to start doubting your general competence, do you?

Machine Learning

This deserves a heading of its own, because it’s extremely irritating.

When you put down machine learning, you are telling me that you can name a couple machine learning algorithms and speak briefly about the advantages or disadvantages of each. You’re telling me you understand sensitivity and specificity and the receiver operating curve. You’re telling me that you understand overfitting and understand strategies to mitigate it.

If you’ve used someone else’s machine learning algorithm with no thought given to hyperparameter optimization, you don’t know machine learning. This is akin to saying “experience in word processor development” because you’ve used Microsoft Word. Please don’t do it.

I solemnly swear I will never hire someone who puts experience with machine learning on their resume and can’t answer basic questions about it and I doubt I’m the only one who feels this way.

Bullet Point Tense

It’s fairly standard to list your responsibilities at a previous job using bullet points.  I have no issues with this per se. But if you’re going to do this, please (for the love of all that is holy) make sure that you read over your bullet points afterwards.

The most common mistake I see students making here is mismatching tenses. Each bullet point should be in the same tense as the others. Ideally they should all be past tense, but present tense is acceptable as long as you’re consistent with it. If your first bullet point is “collaborate with stakeholders…”, your second cannot be “researched key customer requirements”.

If this doesn’t make sense to you, go talk to the fine people at the writing centre. They’ll be able to explain it better than this blog post can.

Also be careful about how you end bullet points. If one has punctuation, all the others need it too. They’re either sentences or stand-alone thoughts. Either is fine, but don’t use both. This is the sort of thing that 95% of people won’t notice and then the hiring manager for your dream job will and then they’ll start assuming that you don’t really care about details.

These seem like minor nitpicks. And they are! But your resume is more than a list of your skills. It’s a reflection on you. How can you expect me to trust that you’ll care about all the fine details of the job I have for you if you don’t care about them on your resume? How do you expect to convince me that you really do have the “excellent written communication skills” you just listed if you’re messing up basic grammar rules? If I hire you, I want to do it confident that I’ll be able to understand the documentation you write or the panicked 3AM messages you send me about taking the server down. In today’s increasingly text-based world, good written communication isn’t optional.

Bold and Italics

How many times have I used bold and italics so far? Not very many. If I suddenly use it, I’ll get your attention right away. This point is very important! See?

If you bold every skill on your resume, you’ve bolded no skills on your resume. Do this and all I see is this bad looking blur of bold text at the top. You’ve made me less interested in hunting for important skills, not more. Honestly, you can skip bold altogether if you just rearrange your skills so the ones I care about are right at the front. Even if I don’t consciously notice that you’ve helped me out (I probably will notice after slogging through 50 resumes that obstinately refused to do this, but still) I’ll subconsciously register that your skills seem to be a lot better suited for the position than everyone else’s.

If you’re going to use bold, use it only for the technologies that are listed in the job description or to highlight notable achievements. Bold the percentage you decreased outages by or the percentage you outperformed the typical coop by. If you have more than 8 or so words bolded on your whole resume, seriously consider removing some of the bold formatting.

Past Compensation

When we go to interview you, CECA gives us a handy dandy print-out that tells us how much students make (on average). We know roughly what your past compensation is. We know what we’re planning on paying you. Don’t bother telling us what you made during past coop terms. It’s wasted space and isn’t going to influence what we pay you. Just don’t.

School Projects

If you’re in first or second year and really need something to put on your resume, you can put school projects on it. But remember that we’re going to see resumes from your classmates. We’re very quickly going to catch on to the fact that you did that programming project you’ve dressed up as cool because the school made you, not because you wanted to. This makes it of limited value to us, except as a marker of some experience in a specific technology.

Try and write these sections to highlight the technology and what you learned about it. Or if you went above and beyond the project and added to it in your own time, tell us that. Otherwise use this section mainly for plugging white space in your layout and delete it as soon as you have enough work experience to fill a page. If you ever comes down to writing about a work term or writing about a project, do the work term unless the project lets you highlight a language that the job requires that you couldn’t otherwise highlight.


I swear that almost every student in Waterloo has three hobbies picked from a list of ten socially acceptable and academically interesting hobbies. Badminton, Martial Arts, Piano, Hockey, Soccer, Reading, Violin, Archery, Photography, and Video Game Design (which somewhat improbably seems to show up far more often than playing video games).

I have nothing against these hobbies. They’re all (except for soccer) perfectly fine ways to spend time. They also do absolutely nothing to differentiate you. If everyone else has the same hobbies as you, on some level I’m going to believe that you’re faceless and replaceable. Sure, I’ll intellectually know that you’re an individual with something unique to bring to my team. But after 200 resumes, I’m going to have trouble really believing it.

So tell me about the hobby that you’re really excited about but scared put on your resume. Make me remember you as “the student who was brave enough to put Magic: The Gathering on their resume”. Tell me about how you’ve done statistical analysis and stayed up all night trawling Wikipedia to make sure that you’d have the best fantasy hockey team in your league.

If your favourite thing to do genuinely is something really popular and you know that if you simply list it you’ll fade into the background, give me a deeper window into it. Don’t write me a novel, just give me one or two really genuine sentences that convince me that you can get excited about something. Then you’ll no longer be faceless coop applicant #43. You’ll be a person who I’m invested in and interested in hiring.

There’s one last advantage of doing a good job on the hobbies section of your resume. You might be asked about it in the interview. If you play this right, you can talk for a minute or two about a subject you’re extremely confident in and comfortable with. Interviews last a fixed time and those minutes might otherwise be spent grilling you about the nitty gritty details of your technical stack. This is a trade that will almost always come out in your favour, so make sure you can talk about any hobbies you list for at least one minute and make sure you can do it while being visibly excited.

Closing Thoughts

When I was in debate, we learned about the argument tree. It has leaves (these are your opponent’s facts), branches (these are your opponent’s points), and a trunk (this is the viewpoint that underlies your opponent’s whole argument). You have an axe and need to get rid of the tree.

It’s really safe but also fairly ineffective to cut at the leaves. You’ll probably end up doing nothing, in the end. It’s more effective (but riskier) to attack the branches, you may actually even get somewhere that way, but it’s slow going. It’s most effective to hack at the trunk. If you can pull this off (and you won’t always be able to) then you’re guaranteed a win (and you’ll have won with style).

(Incidentally, I recommend debate for anyone who wants to improve their interview skills – it really forces you to think on your feet and improvise and many debaters will be willing to work with you to cut down on verbal tics like “um” and “like”)

Trying to get a coop job has a similar risk/reward curve to debating. You can throw out a lot of acronyms and skills and try and convince the hiring manager that you meet the minimum requirements for the job. This doesn’t really backfire, but it also isn’t going to make the hiring manager excited about you; good enough might be enough to get you a job, but only if someone more interesting doesn’t come along.

You can point out all the ways you made life better at your past coop. This is riskier – maybe you pick metrics that the job you’re applying to doesn’t care about or they decide that you didn’t have the requisite number of three letter acronyms. But it can pay off big time. You can make the hiring manager start to be invested in the idea of a coop with your qualifications and abilities and less willing to settle for just good enough.

Or you can take the time to really craft your resume and cover letter into a story about how you – your skills, experience and personality will make life better and more fun if you’re hired. Now the hiring manager is invested in the idea of having you there. They won’t settle for anyone else, no matter how many acronyms are on their resume. They’ll fight their bosses to get you.

This won’t work everywhere. Some people will find you grating and that sucks. I mean, it’s probably better to find that out before you commit to working with them, but it still sucks. But when this works, it works. I’ve had friends offered extra salary if they ditch other offers. I’ve seen new coop positions created just for people who’ve pulled this off. If you can do this, you’re golden.

On Failure and Second Chances

I read through 200 resumes this week and 185 of them annoyed me in some way. Maybe they applied without any of the qualifications I was looking for. Maybe they said “familiar with” one too many times. Maybe they used a form cover letter, or addressed the cover letter to the wrong person. Whatever they did, I closed their resume in annoyance or disgust.

I don’t remember the name of a single person who annoyed me. If they were to take all this advice and apply again next year, they’d get an interview. In order to screw up memorably, you have to try. Like seriously try. Threaten to hurt us if we don’t interview you. Try and bribe us. Talk about how much smarter you are than us and how you could run our company better. Do one of those things and we’d remember you. But garden variety screw-ups just don’t cut it, not when I have 200 resumes to go through.

I remembered one name at the end of the process. Want to know why? They wrote an excellent cover letter that was clearly targeted right at us. They showed a sense of humour. They didn’t pad their resume at all. They mostly listed relevant skills. They did everything right, but it looked like I wouldn’t be able to interview them anyway, because they didn’t quite have the experience we were looking for.

That was the name I remembered.

Anyway, the point of this story is that if you make a good impression you’ll probably be remembered, but if you screw up a resume in a way that feels horrible to you, don’t worry. It’s a disaster to you, but to us it’s pretty routine. We’re not going to blacklist you.