The Waterloo (CS/Eng) intern ecosystem is immensely strong. First year students generally work at the best companies that they can, often taking smaller startups where they are able to learn the most. There's a steady transition to final co-op terms, where most classmates end up working in Silicon Valley, Redmond, NYC, and their own startups. It's a great place to be if you want to be part of the brain drain.
Like many well-known American business schools, UW has the fortune of having graduates opting to return term-after-term to hire interns. Since UW interns are full-year round, this creates a dependency of companies to hire interns (compensation is less than full-time employees, but it's still nice).
While I understand that other schools may have 'almost' co-op programs, Waterloo's is the largest one in the continent (and perhaps the world too). By having multiple exposures to different employers, the school provides successful students the ability to quickly ascend the ranks of the corporate ladder while receiving academic instruction on how to be better at their jobs.
I understand a common problem at other universities is that courses are not always relevant to the real world. By placing students constantly in contact with production code, there is a strong backlash against badly taught and irrelevant course material. Waterloo is grounded in the real-world, as I think most of us live in it.
My only complaint is the geese and the timezone. I'd prefer to be on the west coast, but Waterloo is home (until Winter term).
The other more famous UW also does this: Google has a habit of hiring lots of UW graduates (see Jeff Dean), who then go on to hire other UW graduates...and also a very good co-op program with many willing local companies (most notably, Microsoft, but also Intel in Portland).
He got his phd from UW, just not that UW. It's in the wiki page also. University of Washington is one of the best state schools in the world, and routinely ranks in the top ten with its computer science department.
I find Americans view "America" as "The World". I'm not questioning your metrics, your statistics, or the quality of UWashington, but I think you mean 'Public School'.
The phrase state school is meaningless if you live in countries that don't have states.
Like all great schools what makes the students great is selection bias. Waterloo has a great reputation, so it gets the first pick of the best students. The great graduates give the school a great reputation.
Lather, rinse, repeat.
(Not that I'm complaining as I was part of the system and have benefited greatly from it. Co-op is a very, very big deal. But the professors and the school itself is not appreciably different from U of T or UBC or wherever)
It's not just how good they are. They have a different attitude from students from elite US universities. More practical, less arrogant. I'm not sure whether it's a Canadian thing or a Waterloo thing though.
Elite US universities essentially select for hyper-competitive people. If you weren't hyper-competitive at ages 14-17, you won't be getting in. This isn't the case at Canadian schools where basically any talented student can attend a top school provided they aren't inordinately lazy.
It's a Canadian thing. You'll find grads from all the Canadian universities are humble and practical.
Being a top university with grads in high demand, it's actually amazing that Waterloo grads haven't gotten a reputation for being more arrogant. I know I was at one point in my life.
As a Canadian I'd argue that this is a cultural trait that can easily be adopted by other countries. It is also a cultural trait we Canadians are rapidly losing. The reason Canadian universities produces these types of grads is because our universities are much more accessible to our citizens. It reflects our practical outlook on social programs like education, health care, and transit. Go on the TTC subway during the day and you'll find suits going to work on Bay St., kids going to U of T, and Tim Horton cashiers too. Get sick and you'll often have access to the same doctors that wealthy people do (though this has more to do with your geographic location... it's better to be in a big city).
You don't have to have a certain surname to get into Waterloo. You'd be much better off just scoring well on the Fermat Contest. When nobody gives a shit what you have, and it's what you do that gets you places, you tend to be more modest. We have a long list of financial tools to make school happen for students that have the talent and will to go. We also have a fairly strong set of public school systems that get students to university's door. Again, these schools are accessible.
One of the sadder things about Google's founder success is that more parents want to emulate this success for their kids by keeping them away from Canada's otherwise pretty good public school system. It will quickly deteriorate if more parents pick up on this trend to send their kids to private or Montessori schools.
"You don't have to have a certain surname to get into Waterloo. You'd be much better off just scoring well on the Fermat Contest. When nobody gives a shit what you have, and it's what you do that gets you places, you tend to be more modest."
Well put. UBC grad here, living and working in the valley now but if I ever wanted to raise a family I would think strongly about moving back to Canada purely for the great accessibility to quality public education.
I think it's more of a Canadian thing than a Waterloo thing. Ironically it's the same Canadian conservative attitude that investors often complain about (not shooting for the moon) that is responsible for the more pragmatic, practical attitude of entrepreneurs here. Waterloo is special because it has three great academic institutions and a culture of entrepreneurship that stretches back many years and encompasses everything from textiles to brewery and distillation industries.
I just commented and have pretty much the same opinion that you do. I've often wondered if this practical opinion on has anything to do with Canadians having to shovel the snow. Hear me out...
In the U.S., there are dramatic weather and natural disasters that bring communities together. Floods, tornadoes, hurricanes, earth quakes. We don't have these extremes. But what we lack for in extreme weather, we make up for in volume. In Canada, we just have snow that has to get shovelled often. That means waking up a few times a week in your neighbourhood to shovel snow and side walks. Folks that don't do it are shamed and pressured into doing it. But even if they hold out, somebody just shovels the damn snow, because we're all the better for it. There is nothing more annoying than walking 90 m down a perfectly shovelled sidewalk and then having to walk 5 m along icy packed snow because some jerk refused to pitch in.
With snow, when everybody pitches in their share of effort, entire cities can function. That has a profound impact on how you see government programs. "If I pitch in my bit, and everybody pitches in theirs, our health care/education/transit system can be pretty good". Moreover, when you actually see cities dig out from underneath snow, you debunk the myth that people are lazy. Most people, and a vast majority at that, pitch in and get things going. Again, this contributes a great deal toward our mindset on social programs.
Most students get taught cutting edge technology and approach and that is always a few years ahead (less than it used too be) and with that are completely lost once they go into the real World. A system that exposes the student with reality so that they can understand the good reasons for bad choices with all that go with it then they have less attitude.
Thus you avoid, new people fresh out of education telling people they need to drop there old system and redo it and bookabibble-C as it is just the greatest for things that in reality are never used in the company.
I left edication as a COBOL programmer and could code lovely Jackson Structured Programs, totaly unaware of the GO TO verb even existed in COBOL, could do lovely variable writes with PIC X OCCURS DEPENDING and yet reality was use GO TO it is the site standard and faster code. Luckly I was young enough to not argue and learned the reasons behind it, though I only did a intense 2 year corse at college and no univercity. Had I went further before I entered employment then my attitude would of been more of an issue for me.
With that you can look at education as a drug, if left without any grounding work experience then the reality of what they see and what is needed can go adrift. That and a 5 minute fix could be charged as many thousands of income and a 5 hours fix can be charged at pennies, customer perception and with that another aspect we all learn. With that the best engineers can and do often make the worst people to put a value upon their work. Though that is another level.
Having attended UWaterloo's CS program as well as other institutions, in addition to completing many courses from elite US universities (MIT, Harvard, Stanford, etc.), I've come to an interesting conclusion.
Elite US schools have an unparalleled reputation built upon hundreds of years of pedigree, and as such, there is incredibly fierce competition for entrance. Once you are admitted to an Ivy, the hard part is behind you, and you can get on with your courses. Uwaterloo is the the reverse: it is almost trivial to gain entrance, but surviving the devastating curriculum is another matter entirely.
Elite US schools have the best teachers in the world in my opinion, as the quality of their online lectures have shown. However, it appears that the assessment difficulty is similar to a top level Canadian schools (UofT, McGill, etc.). This is the crucial difference between UWaterloo and every other university.
UWaterloo assessment is brutal. In every way that an assessment can be made hard, it is done so. The tests are purely theoretical, making rote memorization useless. Furthermore, they are very long, putting slow and deep thinkers at a disadvantage. On top of all this, there is an extremely strict system of producing completely new exams and assignments, while making sure previous years' materials are not released. Combine this with an uncompromising curriculum in terms of breadth and depth, and you have one of the most rigorous CS programs in the world.
Now you can argue whether all of this is unnecessary (whiteboard vs terminal coding), but the truth is, the sheer difficulty of the challenge tends to weed out the uncommitted. The reason why UWaterloo grads are humble, is because they have had their egos beaten out of them. Without exception, every UW Math/CS undergrad is one of the smartest people in their high school/town/province. They come to UW, and within the first year, they have a serious confidence crisis as they are failing courses and getting marks they've never seen before (50s 60s 70s).
Once this occurs, they either quit, or swallow their ego and just focus on learning the material and preparing for the exams. There is no psychological foundation for arrogance, as even the best and brightest suffer failures repeatedly.
To summarize: UWaterloo is war. Your morale suffers, your friends fail and leave, and you lose all hope. But the few who survive are battle-hardend engineers by the end.
Unofficial UW motto: "Cry in the dojo, laugh in the battlefield."
Addendum: Co-op terms are a refreshing break from this academic war zone. I was always amazed at how simple, straightforward and fun actual work was in comparison to the ruthlessness of the curriculum.
Addendum II: Couldn't resist adding this hilarious interview with Elon Musk regarding his time at Queen's (another good Canadian school). He decided against UWaterloo, but for entirely different reasons:
> completely new exams and assignments, while making sure previous years' materials are not released
This seems absurd. Both MathSoc and EngSoc maintain exam banks, which students can (and do!) contribute to. Professors release past midterms and finals to help students prepare all the time -- assuming they think they're relevant. (Sometimes they're not -- the accreditation boards and curriculum committees shuffle stuff around every few years to keep up with du jour trends in education.)
All good engineering schools share this quality. If you don't feel "academic PTSD" after being done with your engineering curriculum, you probably didn't go to a good enough engineering school.
Thanks you for depressingly pointing out that Elon Musk is the same age as I am. Unlike Elon however, I managed to find women on the Waterloo campus. It's far from difficult.
As a fellow UW CS grad, I'd like to say this is pretty on the button, except for the fact that I wouldn't say it's trivial to get into as you need very high marks and more, at least in the year I entered, which was the double cohort (grade 12 and 13 graduating at the same time). My buddy had a 99 average in OAC (grade 13) in every math and science course, made top finals in Canada for every UW math contest, and did a whole slew of other impressive things and was still rejected for Computer Engineering, and this was and is still one of the smartest guys I know. Later that summer they did grant him entrance luckily, but it was ridiculous that you needed such high marks to get in. From a CS perspective though, the minimum marks required were like 10-15 points higher than the next top school from what I remember.
UW CS was the most brutal experience of my life and after 1 day of frosh week I realized every one I met was smarter and more accomplished than me. You get the pride and confidence beaten out of you so quick it's not funny. I powered through and hated every minute of it, but I didn't want to give up, I wanted to make it and show the world I could beat UW; it was the enemy. Many people I knew quit or disappeared after 1 year or 2nd year, I wanted to quit, I had many crises, but I brute forced through, clawing to the minimum required average to stay in the program. I was lucky to know at least a few others who were doing the same, which helped me feel not so alone. You swallow your pride and do everything you can to stay afloat, even while others around you take 1 extra full course a term while doing a double major with no effort and you wonder why you are so stupid or what planet everyone is from. We didn't get reading week, we got reading days, sometimes only day. You never got a summer break, only co-op, which was like a vacation compared to school, but it was the most useful thing of all I think. Everything was theory, it was so abstract and real world useless at the time that it bended your mind, this bugged me the most as an entrepreneur. By the end the work isn't easier, you are just better at managing your time and knowing how to defeat the non-stop barrage of assignments. You realize you should make more friends because some of the people that you always hated for having every answer first on the newsgroups, even outsmarting the TAs, was the guy who would be the top engineer at the best firms in no time, or that you can hire them and be unstoppable. The non-stop shifting between co-op and school made it feel like you were doing 3 years of experiences per 1 year, so time felt so distorted and you grew that much faster. Having the courage to move to a new city every 4 months and relearn everything also changes you. You knew what kind of experience having a job was and how disjointed it was from school. You learned what you didn't want to do, you started using your schooling to try and improve work places, and by the end you felt very comfortable with your skills and your knowledge of how the real world works. Pretty much everyone I knew had a job offer almost a year before graduating.
I think anyone else from UW would say the same thing, but during and for years after, being idle for more than an hour or two made you feel really really guilty, like you knew you should be working or making progress, and if you don't lose that feeling, you can accomplish great things very quickly. A weekend of relaxing was more stressful and unnerving than anything. I think most people leave Waterloo after they graduate because they hate it so much, it was so brutal that the city itself becomes an incarnation of what you experienced. It's getting better now, but damn did I hate everything for a long time. I beat it though, and I'm proud to say I survived.
I stuck around in Waterloo because I was an entrepreneur and I knew it was the best place to start a business. I volunteered and ran entrepreneurship organizations, tried to start my own companies and made a huge network. I flipped from hating Waterloo to loving it, and 10 years later I'm still here and running a funded startup. I wished Velocity and the Communitech Hub and all the other great stuff going on now was here back when I was in school, but so glad it's here now. The smarts, determination, experience and energy of these student entrepreneurs combined with the guidance and support of the programs makes for a very fierce advantage.
UW isn't private, a good chunk of the tuition is subsidized by the Canadian government for all Canadian citizens. On top of that undergraduate student loan interest is also paid while you are studying at the school.
UW may not be private but the pricing is based on supply/demand not costs. For example, a first year student enrolled in Math pays half as much as a first year student enrolled in CS. They both take exactly the same courses in the same rooms at the same times with the same professors.
Engineering and CS students subsidize the rest of the school in order to improve the university's rankings. We're just cash cows to them.
I too think it's a bit more. Speaking as a physics major in co-op, the co-op program has taught me (and I'm sure will continue to do so) a great deal in terms of entrepreneurship as well as software. It's taught me a lot of things I wouldn't know about running a company had I not actually been in one/heard people who've started one talking about it.
Combined with the people who are here, waterloo is dripping with a sense of vigour that if you go looking for it will send you to great heights.
Think about it this way:
Your buddies are starting companies, earning many thousands of dollars and changing the world in important areas; are you simply going to sit around and graduate? I think not.
There is a positive cycle that happens, no doubt, but I think it's more than this. McGill also gets great students, but my experience with Waterloo alums has been better.
Unlike Canada's two other highly reputable schools (U of T and McGill), Waterloo's reputation derives largely from the quality of its graduates over the last few decades, not from the fact that at one time they were the only university in their respective regions. Old money vs. new success. I say this as a U of T grad.
The McGill that earned McGill's reputation hasn't existed since people were going around in horse-drawn carriages.
We used to recruit there for my prior employer. Everyone thought it was because one of the big bosses got his engineering degree there. Then we found the folks were just as talented as their ivy league peers, and very honeset, down to earth, and willing to work hard too.
Students trade independence during summers for year-round schooling that has them gaining 2 years of work experience at up to 6 different organizations by the time they graduate. And the reputation of the program is such that, if you've got the ability, you'll get opportunities at the biggest tech players.
On top of the work experience, you'll have a wealth of experience applying to literally hundreds of jobs, being interviewed, both technically and non-technically, perhaps as many times as you will for the rest of your career, and all of this while working alongside and competing with very bright peers.
The co-op program actually increases time to degree a little bit (three terms), because a “normal” 4 year university degree is 1/3 summer term, while Waterloo students alternate co-op term and academic term after their first two terms (I’m glossing over some details, but this is more or less how it used to work).
A = academic; S = summer (most universities); C = co-op (Waterloo)
Most unis : AASAASAASAA
Waterloo : AACACACACACACA
Essentially, Waterloo students get 8 academic terms and 6 co-op terms in 14 4-month terms. As others have mentioned, the history and structure of the co-op program means that students are getting industry experience very early on in university. The extra few terms seem like a small price to pay for that experience.
Most other (US / Canada) universities focus their teaching in the fall and winter terms so that a student will get 8 academic terms and 3 summer terms (where you’re much more on your own in terms of finding a summer job).
I went to waterloo, I wanted to add a little more insight to your comment.
the system you gave is correct, but there is a little nuance to it. when you are on your academic term, around midterm time you have to find your job for the next term (assuming you don't continue your previous term's job). so during midterms you are studying like mad and interviewing like a pro to make next term work. its not easy, but you become extremely adept at interviews (trial by fire) and editing your resume. Also you get used to shrugging off rejection.
funny is if you get the Google, Apple, Amazon, Microsoft, or Facebook job. Your next term you can pretty much get a job at any of the others.
another scary tidbit at UW, is the level of talent around you. I can't tell you how many times my mind has been blown away by another person's ability to make some impossible assignment/task look like a cake walk. so its really hard to be arrogant at UW. I remember feeling like I can leap tall bounds in a single stride, but everyone else seems to just fly.
This. Thought i was smart in high school. Got the highest score in the descarte math course. Went to waterloo and got my ass whooped. Always below average. My time at Waterloo made me feel dumb. I mean, things were just effortless for them. I was just a late bloomer, I tell myself.
Thanks, I appreciate your insights. I applied there so I learned about their system a bit, but a little book knowledge is nothing compared to a multi year experience.
I agree with this. I went to a strong American school, and if I look at the co-ops/interns/fresh grads I see from my Alma mater and those that have come from Waterloo, on a lot of areas they're pretty much on par (Comp Sci fundamentals,, etc). But the Waterloo Grads just know how to work within a team better. It makes a great first impression to everyone else, and gets things off on the right foot.
There really is something special about the way the school gets them ready.
I'd say it's the breadth of their COOP program. I'm at UofO and we got COOP too, except it's 4 terms instead of 6.
The COOP office here is too afraid of looking bad by sending 1st years into COOP, so they only make it available starting 2nd year. If they'd understand better the nature of our industry and would let us start COOP earlier, it would be much better.
I guess it might be a consequence of being in Ottawa; the city is very government-employed, and thus the university has a very conservative and byzantine feel. Things move so slowly here and it's always a heavy admin process to change something. w.r.t to CS/SEG students, that impacts COOP and the material we're taught (which is deprecated).
A step in the right way is that they've now made COOP mandatory for everybody in Software Engineering, and made it start on the first summer (total of 5). I don't understand why it wasn't like that to begin with.
All in all, sometime I wish I was at UofW to be in a more interesting setting. But again, it's not so much about your university than about what work you do on your own.
Most Canadian universities have co-op programs, though. I just finished my last courses at UVic and am currently doing my 3rd co-op term (and locked in for a fourth). I agree that co-op is basically mandatory, but I'm wondering what sets UW apart from other universities with similar programs.
My understanding is that no other Canadian schools have a co-op program that is as established and has the same scale and reputation. With those attributes come top quality employers, more responsibilities on the job, etc. (generalizing, of course).
From the Waterloo co-op website [1]:
17,300 co-op students enrolled over three semesters in more than 120 programs.
4,500 employers hire Waterloo co-op students.
Also, Waterloo engineers take at least six co-op terms starting as early as January of freshman year, which is much more and much earlier than other schools.
ETS also makes students do a co-op after only one term and considering that 90%+ of the students there come from a CEGEP degree (technical degree) and have already completed 2 co-op terms, I can safely say that UW isn't alone.
I would say that the variability of education quality between Canadian schools isn't that high, but the number of universities isn't great either. Waterloo does try to be more experimental with their curriculum than many other schools, but the real secret is in the co-op/internship program.
All Waterloo engineering & (many) computer science students start doing internships in first year and complete 6x 4-month internships before they graduate. This means that you get significant experience before you're cast off on your own, and a chance to test the working conditions at a variety of companies, roles and locations. Graduates are better prepared to hit the ground running once they get their diploma.
For hiring companies, they get a low risk 4 month interview. Waterloo also has interns available all year long (not just in the summer months), so they can spread out the minor burden of training an intern.
I haven't seen a similar model anywhere else and Waterloo has been doing it for decades.
It has a reputation for being the best engineering school in Canada, so lots of the best people self-select to go there. Now having said that, I think there is less variability in the quality of education you get between Canadian Universities as compared to US schools. This is mostly based wishy-washy conjecture though.
After working with so many bright colleagues from Waterloo, I knew such an article was bound to come up one day considering they are known so less here in the valley.
Coming from a collegiate programming world, their ACM ICPC record is also pretty top-notch.
In this case, I would attribute it to the province and wise choices with the allocation of government money.
Ontario, the province Waterloo is located in, has historically been pretty good about pushing technology, especially in rural areas. For instance, in the early to mid-nineties the rural public schools local to me had high speed internet connections, while I was reading articles about schools in big city USA that had no access to the internet at all. Today, we have a fibre optic internet connection to the farm, while I read about farms in the US still struggling with dialup connections. Additionally, programming has virtually always been a part of the school curriculum. My father even talks about programming on punch cards in high school. Again, I read about US schools only thinking about introducing this today.
I think that lead to a disproportionate number of young people growing up in the area of Waterloo with a strong technological mindset, due to availability of technology that much of North America did not have easy access to. Then, Waterloo, due to its reputation, gets the best of that bunch.
With all that said, I feel the government has pulled away from a lot of that technology spending in more recent times, so it will be interesting to see if Waterloo can maintain the quality of output for decades to come as the young children today come up through the system.
There are solid financial reasons for a Canadian engineering student to want to stay in Canada. With that in mind, some school is going to end up being The Best Tech School In Canada. That's Waterloo.