Reflecting on the Waterloo Co-op Experience

Today I’m wrapping up my sixth and final co-op (read internship) as part of my engineering program at the University of Waterloo. The co-op process at UW has been one of the most defining — and gruelling — aspects of my university experience. The six internships scattered over the last 5 years have taught me a lot and given me quite a bit to be grateful for.

First and foremost are the people I got to meet thanks to the program. I cannot emphasize this enough. The people you meet over the course of your co-op journey — in the form of your colleagues, mentors or friends — will all have a tremendous impact on you.

Working at different companies, in different industries, you will constantly be in the presence of some exceptionally talented people, some of whom are industry experts and bring with them decades of experience and insight. Watch them. Learn from them. Most people, if asked nicely, are helpful and willing to guide newbies.

I was fortunate enough to have had several mentors who treated me as more than another intern on the team. They guided me in my career, gave me sound advice and made me feel like they had a vested interest in my success.

Another thing that becomes obvious pretty quick is the vast difference in the way companies operate across an industry. Culture, work-life balance, and performance expectations at a startup with, say 50 people, are all vastly different from those at a large corporation with hundreds of thousands of employees. Not that one is necessarily better than the other, but each comes with it’s own set of pros and cons.

Similarly, the industries one works in can be extremely different too. Some industries are relatively newer (Blockchain/Cryptocurrency come to mind) and have a lot more room for exploration and creativity. While others have been around for decades and are a lot more “mature”, with typically a different set of challenges.

Another important consideration is the kind of work you like to do. Some people like to put themselves out there and build user facing products that are tangible. Their satisfaction in their work is driven by working directly with end users, understanding their needs and solving their problems in creative ways. While others prefer to be more “behind the scenes” and enjoy building all the infrastructure needed to support these applications, or working on research teams.

Co-op is an opportunity to experiment with — and learn — your preferences on all of these fronts before you step into the “real world”. It allowed me to better understand what makes me tick and what I value most when working a full time job.

Personally, I got the opportunity to work for a startup, a university and a couple of mid to large sized tech companies. Each one of them afforded me a unique experience and allowed me to familiarize myself with different facets of software development and find specific areas where I feel the most at home.

Hopping from one job to the next over and over again also has the nice added bonus of repeatedly forcing you out of your comfort zone. Every four months or so, you get thrown into a new environment with a new set of people, possibly in a city you’ve never been in before, all while trying to pick up new technical skills that are required for you to succeed at work.

Students often tout the wealth of technical knowledge they gain through co-op as the most important thing they got out of the program. But IMO that’s only a side effect. The bigger piece of the puzzle is not in having experience with every piece of technology on the planet, but in being able to adapt to changing work environments and quickly picking up the skills that are needed for you to be productive.

This is especially true for students who, like me, have never worked a job in their lives going into university. The first couple of internships are a great way to build up your soft skills and to understand what is generally expected from you in a workplace setting.

Of course, this is not to say that the whole thing is a magical fairy tale. Navigating all the stresses of school life can be hard enough. But simultaneously hunting for jobs, going through interviews, and trying to stay on top of course work is a whole other beast. Everyone faces their fair share of rejections and disappointments along the way, too.

Ultimately, the program is what you make of it. The more effort you put into the system, the more you get out of it. Co-op is definitely not the only way to get these experiences while at school, but having a structured and dedicated program helps. And besides, no student ever complained about getting paid to travel and having a little extra pocket money.

Just another opinionated, run-off-the-mill geek • Software Dev @Amazon • Writes about engineering, product and technology