Exploiting co-op sequences during my time at Waterloo

I’m not an academic advisor. Consult what you think is best for your future. This is to be used as a rough guideline based on my experience.

Someone recently messaged me on Linkedin asking me the pros and cons of taking an extra year for co-op during my time at UWaterloo.

When I first read their message, my first thought was:

“That was more than two years ago. What did I even do?”

I tried to write a CONCISE answer to them, but shortly after thinking about what I did, the explanation and methodology of what I did was ballooning to multiple paragraphs and was turning into an essay (yikes). All they had asked me about was taking longer to prioritize co-op.

So that is why I am writing this post. I hope to cover:

  1. Why I took an extra year for co-op
  2. Hoarding co-ops explained
  3. Hoarding co-ops strengths and flaws
  4. Why resume screens are not optimized
  5. Why co-op sequences can essentially be exploited
  6. Why I chose to keep co-op as opposed to dropping it and graduating
  7. What advice do I have for future cs students

If after this you are still confused because I break down some pretty specific co-op stuff contact me on LinkedIn and I can explain any of my choices here.

WHY I took an extra year for co-op

This is not an easy question to answer. There are two parts, I had been hoarding co-ops and I wanted to find a full time job. I explain what I mean by hoarding co-ops below.

Hoarding co-ops explained

When I switched into CS from Science I was in the stream that had summer of 2015 off. That counted as using a co-op term. (I still don’t agree with this, but co-op office would not listen to me)

I had done 2 non-dev co-ops by the time I switched into CS and I was capped at using JobMine/WaterlooWorks 5 times. That meant I was entering into CS with 3 co-op terms and I had no experience as a developer up until that point. (Most people had 2-3 co-ops at that point with some basic developer jobs or even more impressive software engineering placements)

As a result of this I decided to HOARD my co-ops till 4th year. Yes. You heard that right. I basically padded my 2nd and 3rd year with more school terms than necessary and use all the co-op terms in 4th year.

My thinking behind this was a lot of the higher-end companies had a 3rd year and above requirement for their internships so why not just save up chances later on and use them then. That way when we are all in 4th year it would be more of a comparison for seniority as opposed to the previous internship experience (and in my case it was very poor work experience) Unfortunately I forgot about a few critical things.

Hoarding co-ops strengths and flaws

Although on paper hoarding co-ops seems optimal but life is rarely optimal. I’ll be very upfront that I forgot about a few critical things and probably should have considered these things before making a pretty major decision like hoarding co-ops which would have multiple year ramifications.

The biggest drawback was when you get to 4th year and people have 4-5 co-ops at a lot of prestiguous places and you have 1-2 co-ops it makes you a much weaker candidate. In some cases it makes you almost guaranteed to be passed up in resume screens. You might think this reason is strong enough to not hoard co-ops but it works in reality because recruiting is broken.

Why resume screens are not optimized

Resume screens are not optimized to find the best/right candidate a lot of times. Hoarding co-ops tries to exploit the fact that recruiters cannot always get the most qualified/smartest candidates. Big companies like Google may interview anyone out of the sheer fact they are in 4th year, companies may take a chance on you in continuous round, companies will overlook lack of experience in some cases because your resume just stands out.

Have you and a friend ever applied to a job, one where you are the clear cut more qualified one yet you get rejected and your friend gets selected for an interview? That happens all the time because recruiters actually are poor selectors of qualified candidates.

On top of that, some big companies only look for candidates in 4th year since they can bring them on for full time. There may be an IOI champion in 1st year but places choose the 4th year over them despite being less skilled due to age.

If being in 4th year is a hard requirement for a job but having good past experience isn’t, then it makes some sense to just wait until you are in 4th year to apply to those specific jobs. Why use your co-ops early on which might help out with early and mid-undergrad getting co-ops when you can optimize for late-undergrad co-ops?

Why co-op sequences changes can essentially be exploited

Exploited might be a strong word here but I had changed my sequence close to 7-8 times in my time in undergrad. That was because I was continually applying for jobs and changing my sequence based on if I had an offer for a co-op. Here is how I did it.

First I’ll outline the rules on co-op sequence changes. You can’t have three co-op sequences that are consecutive. If you apply on WaterlooWorks for the term you HAVE to use a co-op term the subsequent term. You also can’t end on a co-op term. That is it.

To circumvent the rules, I would apply for jobs externally. If I didn’t get anything I would change my sequence and just do another school term. If I found something I would move my co-op term to that slot.

I had to apply externally and not use WaterlooWorks because as I outlined in the rules if you apply for jobs in WaterlooWorks then you HAVE to leave the co-op term there. Applying externally is fine because MOST of the 4th year tier co-op jobs ask you to apply externally anyways. WaterlooWorks is best for start and mid-tier co-op positions but has diminishing returns on the higher tier co-op positions. So in reality you aren’t missing out on too much by applying externally vs. applying on WaterlooWorks on higher tier co-ops.

p.s. Why even stay in co-op if you don’t use WaterlooWorks for the co-op search? I did eventually use WaterlooWorks but ONLY when looking for summer co-ops. This is another thing that I had realized. fall and winter were off-season recruiting seasons. So WaterlooWorks’ is actually worth more in summer (more job postings, more competition) compared to fall and winter. So I would exclusively use WaterlooWorks when looking for summer co-ops. It gave a slight edge and widened my applications. Using it for fall or winter is fine but it is better for off-seasons in 1st or 2nd year with less competition.

Why I chose to keep co-op as opposed to dropping it and graduating

When I reached 4th year, I had done a few CS elective courses and met the requirements to graduate. I had no full time job lined up. Which would mean I would have to apply for jobs upon receiving my diploma. I also had 2 more co-ops remaining from hoarding them until the end. I could drop co-op, forget about those last 2 co-ops and just graduate.

While it was appealing to graduate, it really didn’t mean much. I was okay delaying getting my piece of paper and using the last 2 co-ops now. I reasoned that intern interviews were easier than full-time interviews, which I would end up doing anyways if I graduated. I used my last WaterlooWorks terms while taking a reduced courseload to focus on interviews.

What advice do I have for future cs students

If you read this far into the article you are probably confused or are just as invested in the convoluted co-op sequence strategy. Either way, I had varying levels of success with it. I think looking back there are too many variables to control to sustainably say this works.


To this day, I know very few other people who tried to do what I did. For one, no one is out here risking it all on co-ops. Most people slowly progress and learn through co-ops. I didn’t afford myself luxury so I went all or nothing (all co-ops hoarded till the end). Your mileage may vary.