https://classprofile.andyzhang.net
About the program
The University of Waterloo’s Software Engineering (SE) is an interdisciplinary program supported by both the Faculty of Mathematics and the Faculty of Engineering. For 5 years, all 141 graduating students of the class of 2018 spent 8 semesters in school with similar schedules as well as 6 co-ops.
SE is commonly compared to Computer Science, and is often seen as its more-constrained, engineering-oriented counterpart. Prospective students may wonder whether SE is the right fit for them, and whether they’ll enjoy the environment. This profile attempts to showcase who SE 2018 students are, what they've done, and how university went for students.
Preface
The findings in this report were derived from the results of a class survey. In total, 113 out of 141 (80%) graduating students responded. SE classes can vary significantly depending on the year, so generalize from this survey to other classes at your own risk.
Study terms are defined as 1A, 1B, 2A, up to 4B (8 terms). 4 month co-op terms occur after every study term starting after 1B and ending before 4B.
All analysis involving income is expressed in Canadian dollars (CAD). The exchange rate used to convert from USD to CAD depends on time and is stated where relevant. All salaries include monthly housing stipend or the monthly cost of corporate housing if applicable.
This class profile was inspired from the Systems Design Engineering 2017 Class Profile created by Joey Loi and Atef Chaudhury.
Table of contents
COMPANIES
At least 300 companies from 58 different cities have hired an SE student.Students had the opportunity to work in many different types of environments, including working at a 5 person startup, writing code in Kenya, researching with professors, and working at a big tech company. While a majority of students were software engineers during their co-ops, some explored other areas such as design, product management, finance and consulting.
The benefit of having 6 co-op terms is that students get to explore different company sizes doing different positions in different cities. This is invaluable for students because it helps students figure out what they want upon graduation.
Companies students have co-oped at
Legend:
Less enjoyed, more enjoyed
Fewer students, more students
FacebookMicrosoftGoogleAmazonNvidiaSquareUberPivotal LabsUniversity of WaterlooRemindBloombergLinkedInYahoo!YelpAutodeskCourseraVeeva SystemsSAPSMART TechnologiesIBMCIBCWealthsimpleBlackberryMintedWishTextNowSnapGametimeIHS CanadaPagerDutyUltimate SoftwareBlackBerryOracleTD Canada TrustBDO SolutionsEmbarkUken GamesTwitterOntario MinistryEvertz Microsystems360 Education LabsTheRedPinNoomToast IncInklingFixmoDesire2LearnA9MilqCisco MerakiDBRSDigiflareJane StreetKlick HealthBlue Coat SystemsParalucentVaricentVoiceboxSnap Inc.Drive.aiWattpadEmpress EffectsHearsay SocialSysomosNulogyD2LZyngaPlaceIQVisierSandvineRocscienceLookout Mobile SecurityOntario Institute for Cancer ResearchMedAvail TechnologiesNakina SystemsSumo LogicSonyLumotuneCollective Health IncBauxyGrand RoundsRangle.ioAMDFlexportIntentional SoftwareEventbriteRiot Gamesif(we)SlackNetSuiteBroadconnectKikEnflickSystemgroup Consulting Inc.500pxHuang & Associates AnalyticsTabbleDabbleToyotaTop HatTrapeze GroupMerakiSpotifyShopifyAppleNCRRedfinHorizn StudiosSymphony CommerceZenefitsSolink Corp.Wriber INCCanadian blood servicesyujaIrdetoRiviera PartnersPhoenix Interactive DesignConnected LabShanghai Air RocBig RoadVelloWexinGivery Inc.2418118 Ontario IncSpringboard Data ManagementMosaixSoft IncAddeparWyzelinkMabel's LabelsOnCorp DirectAkamaiExtreme InnovationsTeranet Inc.LeonardoSunnybrook Health Science CenterCitigroupSmart TechnologiesTutorjamCitadelAsigraImply DataHansa Language CenterVeyoGrouponCI Investments IncIBM VaricentFGF BrandsMetrolandDeepSubconscious.aiPebbleDropboxHLCRBC Bank of CanadaHubdocNokiaBDA EntertainmentSuzhou Information and Technology Company LimitedDepartment of defenseImaggleKhan AcademyXO Group Inc.Huang & Associates Analytics IncMassTechPointClickCareQuinStreetMaluubaForensiqGametime Inc.Achievers Inc.PDT Partners30AvidbotstheScore IncDIVE NetworksAudiobooks.comToronto HydroEMCYextRidecoZanbatoRichardson AssociatesESCTT Inc.Arvato SystemsVidyardMonstercatWechatBig Viking GamesQuoraMorningstar IncImagine CommunicationsKennaFlybitsRSVPHelpfulOlsoni4iOptaUniverseOANDAOriginateAdRollTicketfi IncNTree Inc.DockerOICRInfoScoutAlteraCMPASearsVesselLixarBitTitanTableauOceliusAcquiaPolarStripeUCICMosaic Sales SolutionsIndochinoZazzleSequenceNexJMicrodea Inc.irl
LOCATIONS
91% of students co-oped in at least 2 different countries.One of the factors behind only 9% of students interning in Canada were restrictions from work visas which primarily affects non-Canadians.
The majority that co-oped in the US worked in California and specifically in Silicon Valley. One of the reasons for this is because Silicon Valley is the headquarters for many large tech companies that hire software engineers such as Google, Facebook, Apple, etc.
During 5 of the 6 co-op terms, there was at least one student working outside of North America. This included cities such as Stockholm, Nairobi, Phnom Penh, Shanghai, Tokyo, etc.
Locations students have worked in
Proportion of students in the areaCo-op term numberCaliforniaEast Coast CanadaWest Coast CanadaPNW USAEast Coast USAOutside NA1st2nd3rd4th5th6th0%10%20%30%40%50%60%70%80%90%100%
FAVOURITE LOCATIONS
31% of students that worked in California preferred working elsewhere.While California is still preferred by most, this suggests that it is not for everyone. The infamous ‘Cali or Bust’ mentality could have hindered some students from exploring opportunities in other cities that may have been better suited for them.
Location of favourite companies
Outside NAWest Coast CanadaPNW USAEast Coast USAEast Coast CanadaCalifornia378122564
SALARY
By the last co-op term, salaries tripled in comparison to the first.Average monthly salaries per co-op term were $2914, $4236, $5895, $7981, $9338, $10015 (in CAD, includes housing stipend).
The difference could be explained by the increase in salaries and stipends to compensate for the difference in living costs between different locations. For example, San Francisco housing typically costs a student between $1,500 to $2,500 per month. In comparison, Waterloo housing costs a student approximately $700 per month.
Monthly compensation per co-op term in CAD
Monthly compensationCo-op term number1st co-op2nd3rd4th5th6th co-op2,0004,0006,0008,00010,00012,00014,00016,00018,00020,000
Does X affect job pay?
SALARY AS A METRIC
In order to rank jobs appropriately, salary is used as a proxy metric to measure job opportunities. Due to the subjectiveness of this metric, the following results should be taken with a grain of salt because higher salary does not imply higher job satisfaction.
GRADES
Grades do not correlate with salary at all.In other words, having a high cumulative average does not imply that the student will get a good salary in the upcoming co-op term. This suggests that there are more important factors than grades when it comes to finding a good job.
Some companies do use grades as a cutoff to filter large amounts of candidates. However, many companies are aware that grades are not a good indication of how performant a student can be during co-op.
This suggests that if a student wanted to optimize for getting the best co-op possible, aiming for a higher grade may not yield the desired results, and their efforts can be redirected towards other involvements such as side projects.
Grades compared to monthly salary
5055606570758085909510002,0004,0006,0008,00010,00012,00014,00016,000Monthly compensation in CADCumulative average
Co-op number:
1
2
3
4
5
6
Interactive: Click on a co-op number to view the plot for that co-op.
GENDER
Women are paid the same as men on average for co-op terms.This is great to see because this suggests that women and men have equally good job opportunities for co-op.
However, this does not suggest that there is no gender bias in the longer term. fact, according to a Glassdoor study, "younger workers face a smaller gender pay gap than older workers." This finding is not exclusive to the tech industry.
Salary per co-op term
Monthly salary in CADCo-op term numberMaleFemale1st2nd3rd4th5th6th01,0002,0003,0004,0005,0006,0007,0008,0009,00010,000
YEARS OF CODING EXPERIENCE
Students who started coding earlier were paid similarly compared to students who started coding later.In other words, it doesn't matter if a student started at the age of 13 or 18. This suggests that students that started coding later are not at a disadvantage in terms of co-op job opportunities.
Coding start age compared to monthly salary
Average first 3 co-op monthly salary in CADAge started codingUnder 1616 or older2,0003,0004,0005,0006,0007,0008,0009,00010,00011,000
HACKATHONS
Students who attended at least one hackathon earned 18% more on average than those that didn't attend any.In other words, students who show passion for building projects get better job opportunities than those that don't. Alternatively, this result could be because students that attended a hackathon cared more about getting a higher paying job.
Students who attended more than 5 hackathons earned approximately 27% more than those that only attended between 1 to 5 hackathons. This could suggest that the former had a lot more relevant work to show which is more appealing to employers.
Hackathon attendance's influence on monthly salary
Average first 3 co-op monthly salary in CADNumber of hackathons attended01-5>52,0003,0004,0005,0006,0007,0008,0009,00010,00011,000
SIDE PROJECTS
Students that build side projects earned 13% more on average than those that don't build side projects.The more time that a student invests into side projects, the more they are likely to get paid. Side projects are often seen as the closest thing to software work experience, making it a great time investment to compensate for any lack of work experience.
It is important to mention that side projects and hackathons are not the only way to find a job. There have been many less practiced methods students have used to find job opportunities such as referrals, networking, etc.
It is just as important to note that students who are not involved in software-related extracurriculars still find great jobs. In fact, many SE students and faculty encourage pursuing interests besides software.
Side project commitment compared to monthly salary
Average first 3 co-op monthly salary in CADCommitment to side projects0h / month1-10h / month>10h / month2,0003,0004,0005,0006,0007,0008,0009,00010,00011,000
ADMISSION AVERAGE
Admission averages have no significant impact on job pay.A 90 in one school could be harder to achieve than a 99 in another school. In other words, admission averages are an inaccurate metric to determine how successful someone is because high schools do not standardize their grades with each other.
Admission average compared to monthly salary
Average first 3 co-op monthly salary in CADAdmission average<=93>932,0003,0004,0005,0006,0007,0008,0009,00010,00011,000
Background
GENDER
Women make up 17% of students, which is approximately the same proportion as the number of women in tech.Although we are still working towards increasing the number of minority gender groups, we can see a positive increase within the recent SE classes
There are also many on-campus communities that supports the success of women in computer science at UWaterloo. For example, Women in Computer Science, and Women Who Code Waterloo .
One student preferred not to disclose.
Gender proportion in class
Men93Women19
ETHNICITY
Students come from many different ethnic backgrounds, which span 27 different countries.There was a significant number of students Caucasians, South Asians, and East Asians.
Students' ethnicities
HispanicAfricanMiddle EasternSouth East AsianEuropeanSouth AsianNorth AmericanEast Asian112722252755
HIGH SCHOOL EXTRACURRICULARS
Less than 35% of students were involved in a STEM, CS or Robotics clubs during high school.Instead, students participated in all sorts of extracurricular activities such as volunteer work for non-profits, being a cadet, starting a school newspaper, and more. Pursuing their own unique personal interests was a common pattern amongst students during high school.
Note that this is not a comprehensive list, and that students have participated in other extracurricular activities as well.
Extracurriculars during high school
SportsMusicSTEM clubCS clubSchool councilRoboticsVolunteeringDebateDECAAV clubChessYearbookBusiness ClubCommunity servicePhotographyMUNDramaTutoringCadetsPublic speakingReligious ClubDanceShad ValleyKumonCultural clubsPlaysEnvirothonBook clubCards clubJunior AchievementDDRAnimeReach for the TopZontaMock TrialsCharitiesLink crewTriviaIT HelpdeskOSAIDVideo productionSocial Justice clubEco councilWe Feed Children founderPublic gardeningSpace ClubHistory clubBridge building
INTERNATIONAL STUDENTS
14% of students are international, which is 4% fewer than University of Waterloo as a whole.This could be due to the higher tuition costs for international students, who pay 27% more than the average international tuition fee. This could also be caused by the Engineering Admissions having a max quota for international students.
International students came from countries including Nigeria, United Arab Emirates, China, Pakistan, South Korea, Indonesia.
Proportion of international students
Canadian97International16
Family background
INCOME
More than half of students come from families whose income is higher than the median Canadian family income ($76,000).These numbers do not include income from co-op terms. The majority of students have a family income between $50,000 and $150,000.
Number of students per family income class
Prefer not to disclose>150k / year100-150k / year50k-100k / year0-50k / year22549324
LEVEL OF EDUCATION
There are more parents with Masters and Doctorates combined than Bachelors.Compared to our parents, only 3 students out of 113 are planning on attending grad school. This could be a generational shift, or maybe it could just be that students are tired of school after 5 years with no summer.
Parents' highest education
Some postsecondaryHigh schoolDid not complete HSDoctoratesPostsecondary DiplomaMastersBachelors234994046
Academics
GRADES
Study terms gradually become more difficult, but class averages remain consistent.3B was voted as the most difficult term by students. Despite being the most difficult, its class average was only slightly lower compared to other terms. This suggests that students progressively become better at coping with difficult courses.
Grades from 1A to 4A
Term averageStudy term number1A1B2A2B3A3B4A50556065707580859095
ATTENDANCE
Attendance consistently drops term by term, except after 3B3B also happens to be the hardest term.
This could be because students enjoyed their 4A classes more, or maybe they were possibly looking to compensate for their lower grades in 3B.
Alternatively, students attend slightly more class more during summer terms (2B and 4A).
Attendance vs Grades
Proportion of class attendedStudy term number1A1B2A2B3A3B4A50556065707580859095100
Courses
FAVOURITE REQUIRED COURSES
Although 3B was the most difficult term, it had Concurrency (CS343), the most popular course.The top 8 favourited courses were all between 2A and 3B. Although these terms are slightly more difficult, they also happen to have the most interesting content for students.
Students are also required to take several technical electives to fulfill their credits. The most popular electives included Graphics (CS488), Distributed Computing (ECE 454), and Human-Computer Interaction (CS 449).
Favourite mandatory courses
ECE 222SE 212SE 101MATH 135ECE 124CS 240SE 380CS 349MATH 239CS 341SE 350CS 241CS 343111112233891220
LEAST FAVOURITE REQUIRED COURSES
3B also had Feedback Controls (SE 380), the most disliked course, which explains why it was the hardest term.Although SE 463 is just as disfavoured, it was a much easier course, which explains why 4A was an easier term.
It's important to note that courses that were disliked do not imply that students find the content useless. Instead, there are a variety of factors such as personal interests, final grades, and assignments. For example, Logic and Computation (SE 212) is considered useful by 88% of students according to UWFlow.
Least favourite mandatory courses
CS 247CS 341SE 464ECE 124CS 240STAT 231CHE 102SE 350ECE 105MATH 213ECE 106SE 212SE 380SE 46311111233445103434
Does X affect grades?
ATTENDANCE
There was no correlation between self-reported attendance and grades.To be clear, this does not suggest that not going to class is beneficial. Instead, it suggests that it is possible to achieve good grades without attending all classes.
Attendance compared to relative grade from the average
0%10%20%30%40%50%60%70%80%90%100%-30%-25%-20%-15%-10%-5%+0%+5%+10%+15%+20%Grades relative to averageProportion of class attended
PARENTS' EDUCATION
Grades are slightly higher when at least one parent had a university-level degree.This suggests that there could be a correlation between parents' education and how academically inclined students are.
However, this does not suggest that having a parent with a university-level degree is a requirement for getting good grades.
Parents' education compared to grades
Cumulative averageParents' educationPost-secondary, high schoolBachelorsMasters, Doctorate646668707274767880828486889092
Program Outcome
PREFERRED PROGRAM
70% of students would choose SE again if they could go back to high school.Computer Science is a popular alternative because it has more course flexibility. Unlike SE, Computer Science does not have a cohort which makes it harder for CS students to meet others.
Preferred program
ArchitectureEnglishFine ArtsMechatronics EngineeringSystems Design EngineeringComputer ScienceSoftware Engineering111112979
THE EXPERIENCE PER GENDER
Being a part of Software Engineering was life-changing for most of the class, and equally enjoyed by both men and women.51% of the class rated SE a max rating score, and 87% of the class rated above a 4 out of 5. Shoutouts to the Software Engineering faculty and the class for creating such a great environment for students!
Program rating per gender
RatingGenderMaleFemale2.02.22.42.62.83.03.23.43.63.84.04.24.44.64.85.0
CUSTOMIZING THE EXPERIENCE
There are many ways students can make the best of their time in university. As a software engineering student, it is normal for students to attend a few hackathons, build some side projects, intern as a software engineer in Silicon Valley.
However, several students took the extra leap of faith to make the most of their university experience. Here are some of their stories:
Transitioning into design
I’ve always seen myself as an outsider among my peers in more ways than one. Outside of class, I invested my time in pursuits like illustration, photography, and fashion blogging. When I learned about product design, a field that bridged computing and design, I knew this was it.
I’m grateful I took the leap that landed me my first product role because once I was surrounded by a community of designers with passions similar to my own, I knew I finally belonged.
John Salaveria
Incoming Product Designer at Yelp
Starting a tech club for nonprofits
On one of my co-ops I met a member of a Berkeley student club called Blueprint, where students build tech for nonprofits. I loved the idea of it since it combined my skills in tech with my passion for volunteering. With another girl, I started the Waterloo chapter of the club.
We've gotten to work with some amazing non-profits, whose missions range from cataloging the world's dying languages to the preservation of bumblebees to investing in entrepreneurs in rural Kenya. It's been a lot of hard work, and at times it left me feeling burnt out, but it's been an incredible experience.
Luisa San Martin
Incoming Software Engineer at Uber ATG
Exploring data science
I saw data science as a way to grow my skill set in a way that differentiated me from other software engineers. I believe having an internship in data science has had a larger impact on my personal and career growth than completing another software engineering internship.
Throughout my data science internships I've learned various analysis and communication skills that will benefit me no matter what position I decide to pursue. I feel lucky to have had people believe in me to jump into a completely different role with no previous experience.
Christopher Luc
Incoming Software Engineer at WhatsApp
Minoring in Cognitive Science
I've always been interested in the mind, so when I saw the option for a minor in cognitive science, I thought, why not?
I'm somewhat torn by the end of it. I missed out on some courses, but I took others that I really enjoyed (like a seminar course that I did a research experiment in!). I could've taken these without being enrolled in the minor though, so my advice is to just take courses you're interested in and not stress about the minor.
Soheil Koushan
Incoming Software Engineer at Embark Trucks
Stumbling into product management
During my 2nd co-op, I ended up having to do customer support part-time for a month which helped me build user empathy. I was also involved with the Product Vision Club, a product management community.
I was hooked and ended up leading the club as well as organizing Canadian Undergraduate Technology Conference. Taking the risk to put myself in uncomfortable situations helped me transition into product roles early on, and I’ve loved the world of product management ever since.
Kaivalya Gandhi
Incoming Associate Product Manager at Yahoo!
Balancing school and a startup
At the end of my third year, Marcus and me had an opportunity to join an early-stage startup building autonomous semi trucks. In coordination with the SE Program, I was able to finish my degree remotely by submitting assignments online and flying back for exams. During this time, I got to be a part of Embark’s incredible journey as we grew from a small team of 5 engineers to one of the leading players in the self-driving space.
Taking this unconventional path gave Marcus and I incredible experience beyond my schooling that will follow me throughout my career.
Paul Ashbourne, Marcus Sjolin
Head of Infrastructure, Autonomous Truck Engineer at Embark Truck
Interests and lifestyle
EXTRACURRICULARS
Unlike high school, almost half of students were not involved in any extracurriculars during undergrad.Most students were the only SE 2018 student involved in their club.
Most students did not pursue any extracurricular activities related to STEM.
Non-comprehensive list of university extrcurriculars
SportsEngsocStudent Design TeamBlueprintRock climbingOrientation weekMusicUW Hip HopDanceVelocityHackathonsPhotographyRhythm gaming clubVolunteeringUW Indian ConnectionCoaching high school robotics teamDramaModellingChristian FellowshipProduct Vision ClubCanadian University Technology ConferenceStyle SocietyEngineering AmbassadorsEngiqueersHack the NorthUW/UXKarate ClubKendo ClubStartupShoe tagGLOWFASSSinging
Coding
PROGRAMMING LANGUAGE
Python is the most popular programming language among SE students.Python’s versatility for back-end web, scripting, and especially machine learning could explain why it is so popular in our class. Many of these disciplines are highly in-demand in the software engineering, making Python an ideal general purpose language.
Java continues to be very popular since it is commonly taught as students' first programming language in high school.
Many companies hire web developers for co-op, which could explain why JavaScript, a scripting language for the web, is so popular. It also happens to be the most popular language amongst all developers according to a StackOverflow survey.
Favourite programming language
RustClojurePascalObjective-COCamlC#LuaCRubyGolangScalaC++JavaScriptJavaPython1111112238911182633
EDITOR
Sublime Text is the most popular text editor used in our class, followed by Vim and Atom.Interestingly, Visual Studio Code is one of the less popular editors in our class but it is the most popular editor according to the same StackOverflow survey. This could be because it was released very recently after most students were already accustomed to their favourite editor.
Favourite editor
EclipseNotepad++JetBrainsVisual Studio CodeIntelliJAtomVimSublime236711162349
DESKTOP OPERATING SYSTEM
The majority of students are using a macOS machine.This result isn’t surprising since macOS is built on top of Unix, enabling a lot of important functionality for programmers
Interestingly, most students didn’t have a macOS machine in first year. Many employers provided MacBooks as work laptops which introduced students to macOS's development environment. As a result, many students converted to being MacBook users during university.
Favourite desktop operating system
Linux16Windows20macOS77
HACKATHONS
More than 80% of students have gone to at least one hackathon.They are especially popular at UWaterloo, home to Hack the North, Canada's biggest hackathon.
According to Justin Trudeau, “Hack the North will give you a chance to not only let your imagination run wild, but to meet other people who can help you solve problems: mentors, friends and colleagues, who will challenge you to take your ideas a step further.”
Number of hackathons attended
>106-101-505137619
SIDE PROJECTS
Most students have also worked on some sort of side project during university.Amongst those that have built side projects, only 25% dedicated more than 10 hours a month to their side projects. This should be taken with a grain of salt since commitment may vary depending on the term and year.
During the first few years of SE, side projects are often a means to getting a better co-op job because it compensates for the lack of software work experience.
Estimated commitment to side projects
40h+/month30-40h/month20-30h/month10-20h/month1-10h/month0h/month53596327
SOFTWARE DISCPLINES
57% of students enjoy an aspect of web development (front-end, back-end, full-stack).Many co-op positions happen to be related to web development which explains why many students are more familar with it. Alternatively, students could just find web development the most fun. Interestingly, there are no course offerings in SE for web development unlike ML and AI.
After web development, 25% of students enjoy machine learning (ML) or artificial intelligence (AI). This aligns with the rising popularity and demand of both disciplines.
Only 3 students have expressed interest in mobile development. This is surprising because of both how high in-demand it is and how ubiquitous it is amongst consumers.
Disciplines of interest
PhysicsVirtualizationTheory & ImplementationSystem ArchitectureDesktop appsRoboticsDistributed SystemsData ScienceInfrastructureMobile DevelopmentEmbedded SoftwareUser ExperienceDesignBig DataProduct ManagementGraphicsSecurityFull-stack WebArtificial IntelligenceMachine LearningFront-end WebBack-end Web111112223345666671116192039
EXERCISE
Almost 80% of students exercise at least a few times a month.This could be in the form of intramurals, gym, sports team, etc. Students typically start SE intramural teams with one another. Although school is time consuming, most students actively set aside time for physical activities.
Exercise frequency
NeverFew times a yearFew times a monthFew times a weekDaily111352316
COOKING
Over half of students cook every week.In other words, many of us have a lot of experience cooking. How good is our cooking? That’s a completely separate question that may be better left unanswered.
These results vary depending on whether students are on a study or co-op term, since many companies cater meals during weekdays.
Cooking frequency
NeverFew times a yearFew times a monthFew times a weekDaily1511412917
SLEEPING
Software engineers may have a reputation for being nocturnal, but most students aren’t night owls.In fact, 72% of students usually sleep before 1AM. However, some students do still prefer sleeping late, possibly because they focus better at night, or maybe they like gaming very late.
5:00AM-6:00AM might sound crazy, but then again, SE students willingly go to 24 hour coding events called hackathons.
Estimate sleep time
6:00AM5:00AM4:00AM3:00AM2:00AM1:00AM12:00AM11:00PM10:00PM1127182538145
Future
POST-GRADUATION PLANS
As of 5 months before graduation, 77% of students already have an offer, and 15% of students are still looking for a job.7 students are planning to do graduate studies after graduating. Although most of the class plans to join the workforce immediately, 34% of students are considering grad school in the future.
Even though 80% of the class has worked in California, less than half of students have chosen to live in California after graduating. Although California is perceived by many as the place to be for software engineers, seeing the gap in the conversion rate suggests that there are many other great places for software engineers such as East Coast Canada, East Coast US and Pacific North West US.
Post graduation plans
Grad schoolHave offer, not interviewingNo offer, interviewingHave offerAccepted offer35174344
Desired location
AsiaWest Coast CanadaUS Pacific North WestEast Coast USEast Coast CanadaCalifornia2411163049
MOTIVATIONS
Good compensation and growth as an engineer were the main factors affecting post-graduation plans.This could explain why California was a popular choice for full-time location.
Although family may be the least popular factor, most students working away from home have expressed interest in working near their families in the future.
Factors affecting post-graduation plans
FamilyHaving an impactLocationGood coworkersImproving skillsCompensation192630343953
DEBT
65% of students are graduating debt-free.30% of students have less than $30,000 in debt. Among students who are in debt, the median debt is $22,500.
It's important to note that there were students from each family income bracket who graduated debt-free. All students with family income higher than $200,000 graduated debt-free.
Debt per family income bracket
Amount of debt upon graduationFamily income bracket0-50k/year50-100k/year100-150k/year150-200k/year>200k/yearNot disclosed010,00020,00030,00040,00050,00060,00070,00080,00090,000100,000
ADVICE
"Figure out which advice applies best to you and ignore the rest."The following is a summary of the advice shared by students with the intention of being shared with both prospective and current SE students. Many of the sentences are directly quoted or rephrased from the original advice.
Your success should not be defined by others. Just because someone else is better than you at something, it does not mean that you're failing. Instead, be open and realize you can learn something from everyone. Realize that your peers' successes should be motivation rather than a reason to put yourself down.
Find value in modesty, empathy, and courage. Learn to develop good habits early on, and budget your time based on your options and priorities. These skills are indispensable during university. Find a hobby you love. That hobby just might be software engineering, or it could be something completely different like drawing video game characters.
Stop worrying about marks. They don't get you far unless you're looking at post graduate studies. This also means that you should know when to stop working on assignments to work on other things. "After graduation, I won't remember many of the bogus technical concepts. I will, however, remember the late nights in the SE lab with friends, fooling around while doing a last minute assignment."
Try out as many different co-ops as possible. And don't Cali or continuous. It's tough to get your first job, but don't give up. And if you get a co-op at a big company, it does not mean that you're at the top of the world.
And most importantly, university goes by in a flash, so enjoy it!
- University of Waterloo Software Engineering Class of 2018
Thank you!
I hope you enjoyed reading the University of Waterloo Software Engineering 2018 Class Profile!
Acknowledgements
This project wouldn't have been possible without the help of some great people:
Patrick Lam, director of Software Engineering, for confidentially managing the data and unbiasedly advising the project from start to finish.
Christopher Luc for setting up the processing architecture and advising about the best statistical methodologies to apply, and Richard Wong for helping write processing scripts.
Joey Loi and Atef Chaudhury for inspiring me to create this class profile. Much of the process and structure of this was borrowed from their Systems Design Engineering 2017 Class Profile.
Jenny Sun, Derrek Chow, Kaitlyn Yong, and Bo Peng for providing feedback on the initial drafts of the class profile.
Balaji Sankaranarayanan, Emily Walls, Seun Makinde, Soheil Koushan, and Bilal Akhtar for providing feedback on the survey sent out.
Resources
UWATERLOO SOFTWARE ENGINEERING
Software Engineering Program Homepage https://uwaterloo.ca/software-engineering/
Co-op at UWaterloo https://uwaterloo.ca/co-operative-education/
Academic Calendar https://ugradcalendar.uwaterloo.ca/page/ENG-Software-Engineering
INSPIRATIONS
Systems Design Engineering 2017 Class Profile http://joeyloi.com/SYDE2017classprofile.pdf
HackerRank 2018 Developer Skills Report http://research.hackerrank.com/developer-skills/2018/
StackOverflow 2018 Developer Survey Results https://insights.stackoverflow.com/survey/2018/
DATA
Processing scripts https://github.com/se2018/class-profile
Class Profile code https://github.com/andyzg/classprofile
SE Exit Survey results (not related to Class Profile) https://ql.tc/Hia9QK
Get in touch!
Let me know what you think! You can reach me at andy.zhang@edu.uwaterloo.ca.
About the program
The University of Waterloo’s Software Engineering (SE) is an interdisciplinary program supported by both the Faculty of Mathematics and the Faculty of Engineering. For 5 years, all 141 graduating students of the class of 2018 spent 8 semesters in school with similar schedules as well as 6 co-ops.
SE is commonly compared to Computer Science, and is often seen as its more-constrained, engineering-oriented counterpart. Prospective students may wonder whether SE is the right fit for them, and whether they’ll enjoy the environment. This profile attempts to showcase who SE 2018 students are, what they've done, and how university went for students.
Preface
The findings in this report were derived from the results of a class survey. In total, 113 out of 141 (80%) graduating students responded. SE classes can vary significantly depending on the year, so generalize from this survey to other classes at your own risk.
Study terms are defined as 1A, 1B, 2A, up to 4B (8 terms). 4 month co-op terms occur after every study term starting after 1B and ending before 4B.
All analysis involving income is expressed in Canadian dollars (CAD). The exchange rate used to convert from USD to CAD depends on time and is stated where relevant. All salaries include monthly housing stipend or the monthly cost of corporate housing if applicable.
This class profile was inspired from the Systems Design Engineering 2017 Class Profile created by Joey Loi and Atef Chaudhury.
Table of contents
- 1 Co-op
- Companies, locations, salary, factors affecting salary
- 2 Background
- Gender, ethnicity, high school, family
- 3 Academics
- Grades, attendance, courses, factors affecting grades
- 4 Program outcome
- Rating, preferred program, paths
- 5 Interests and lifestyle
- Extracurriculars, software discipline, lifestyle
- 6 Future
- Debt, post-graduation plans
COMPANIES
At least 300 companies from 58 different cities have hired an SE student.Students had the opportunity to work in many different types of environments, including working at a 5 person startup, writing code in Kenya, researching with professors, and working at a big tech company. While a majority of students were software engineers during their co-ops, some explored other areas such as design, product management, finance and consulting.
The benefit of having 6 co-op terms is that students get to explore different company sizes doing different positions in different cities. This is invaluable for students because it helps students figure out what they want upon graduation.
Companies students have co-oped at
Legend:
Less enjoyed, more enjoyed
Fewer students, more students
FacebookMicrosoftGoogleAmazonNvidiaSquareUberPivotal LabsUniversity of WaterlooRemindBloombergLinkedInYahoo!YelpAutodeskCourseraVeeva SystemsSAPSMART TechnologiesIBMCIBCWealthsimpleBlackberryMintedWishTextNowSnapGametimeIHS CanadaPagerDutyUltimate SoftwareBlackBerryOracleTD Canada TrustBDO SolutionsEmbarkUken GamesTwitterOntario MinistryEvertz Microsystems360 Education LabsTheRedPinNoomToast IncInklingFixmoDesire2LearnA9MilqCisco MerakiDBRSDigiflareJane StreetKlick HealthBlue Coat SystemsParalucentVaricentVoiceboxSnap Inc.Drive.aiWattpadEmpress EffectsHearsay SocialSysomosNulogyD2LZyngaPlaceIQVisierSandvineRocscienceLookout Mobile SecurityOntario Institute for Cancer ResearchMedAvail TechnologiesNakina SystemsSumo LogicSonyLumotuneCollective Health IncBauxyGrand RoundsRangle.ioAMDFlexportIntentional SoftwareEventbriteRiot Gamesif(we)SlackNetSuiteBroadconnectKikEnflickSystemgroup Consulting Inc.500pxHuang & Associates AnalyticsTabbleDabbleToyotaTop HatTrapeze GroupMerakiSpotifyShopifyAppleNCRRedfinHorizn StudiosSymphony CommerceZenefitsSolink Corp.Wriber INCCanadian blood servicesyujaIrdetoRiviera PartnersPhoenix Interactive DesignConnected LabShanghai Air RocBig RoadVelloWexinGivery Inc.2418118 Ontario IncSpringboard Data ManagementMosaixSoft IncAddeparWyzelinkMabel's LabelsOnCorp DirectAkamaiExtreme InnovationsTeranet Inc.LeonardoSunnybrook Health Science CenterCitigroupSmart TechnologiesTutorjamCitadelAsigraImply DataHansa Language CenterVeyoGrouponCI Investments IncIBM VaricentFGF BrandsMetrolandDeepSubconscious.aiPebbleDropboxHLCRBC Bank of CanadaHubdocNokiaBDA EntertainmentSuzhou Information and Technology Company LimitedDepartment of defenseImaggleKhan AcademyXO Group Inc.Huang & Associates Analytics IncMassTechPointClickCareQuinStreetMaluubaForensiqGametime Inc.Achievers Inc.PDT Partners30AvidbotstheScore IncDIVE NetworksAudiobooks.comToronto HydroEMCYextRidecoZanbatoRichardson AssociatesESCTT Inc.Arvato SystemsVidyardMonstercatWechatBig Viking GamesQuoraMorningstar IncImagine CommunicationsKennaFlybitsRSVPHelpfulOlsoni4iOptaUniverseOANDAOriginateAdRollTicketfi IncNTree Inc.DockerOICRInfoScoutAlteraCMPASearsVesselLixarBitTitanTableauOceliusAcquiaPolarStripeUCICMosaic Sales SolutionsIndochinoZazzleSequenceNexJMicrodea Inc.irl
LOCATIONS
91% of students co-oped in at least 2 different countries.One of the factors behind only 9% of students interning in Canada were restrictions from work visas which primarily affects non-Canadians.
The majority that co-oped in the US worked in California and specifically in Silicon Valley. One of the reasons for this is because Silicon Valley is the headquarters for many large tech companies that hire software engineers such as Google, Facebook, Apple, etc.
During 5 of the 6 co-op terms, there was at least one student working outside of North America. This included cities such as Stockholm, Nairobi, Phnom Penh, Shanghai, Tokyo, etc.
Locations students have worked in
Proportion of students in the areaCo-op term numberCaliforniaEast Coast CanadaWest Coast CanadaPNW USAEast Coast USAOutside NA1st2nd3rd4th5th6th0%10%20%30%40%50%60%70%80%90%100%
FAVOURITE LOCATIONS
31% of students that worked in California preferred working elsewhere.While California is still preferred by most, this suggests that it is not for everyone. The infamous ‘Cali or Bust’ mentality could have hindered some students from exploring opportunities in other cities that may have been better suited for them.
Location of favourite companies
Outside NAWest Coast CanadaPNW USAEast Coast USAEast Coast CanadaCalifornia378122564
SALARY
By the last co-op term, salaries tripled in comparison to the first.Average monthly salaries per co-op term were $2914, $4236, $5895, $7981, $9338, $10015 (in CAD, includes housing stipend).
The difference could be explained by the increase in salaries and stipends to compensate for the difference in living costs between different locations. For example, San Francisco housing typically costs a student between $1,500 to $2,500 per month. In comparison, Waterloo housing costs a student approximately $700 per month.
Monthly compensation per co-op term in CAD
Monthly compensationCo-op term number1st co-op2nd3rd4th5th6th co-op2,0004,0006,0008,00010,00012,00014,00016,00018,00020,000
Does X affect job pay?
SALARY AS A METRIC
In order to rank jobs appropriately, salary is used as a proxy metric to measure job opportunities. Due to the subjectiveness of this metric, the following results should be taken with a grain of salt because higher salary does not imply higher job satisfaction.
GRADES
Grades do not correlate with salary at all.In other words, having a high cumulative average does not imply that the student will get a good salary in the upcoming co-op term. This suggests that there are more important factors than grades when it comes to finding a good job.
Some companies do use grades as a cutoff to filter large amounts of candidates. However, many companies are aware that grades are not a good indication of how performant a student can be during co-op.
This suggests that if a student wanted to optimize for getting the best co-op possible, aiming for a higher grade may not yield the desired results, and their efforts can be redirected towards other involvements such as side projects.
Grades compared to monthly salary
5055606570758085909510002,0004,0006,0008,00010,00012,00014,00016,000Monthly compensation in CADCumulative average
Co-op number:
1
2
3
4
5
6
Interactive: Click on a co-op number to view the plot for that co-op.
GENDER
Women are paid the same as men on average for co-op terms.This is great to see because this suggests that women and men have equally good job opportunities for co-op.
However, this does not suggest that there is no gender bias in the longer term. fact, according to a Glassdoor study, "younger workers face a smaller gender pay gap than older workers." This finding is not exclusive to the tech industry.
Salary per co-op term
Monthly salary in CADCo-op term numberMaleFemale1st2nd3rd4th5th6th01,0002,0003,0004,0005,0006,0007,0008,0009,00010,000
YEARS OF CODING EXPERIENCE
Students who started coding earlier were paid similarly compared to students who started coding later.In other words, it doesn't matter if a student started at the age of 13 or 18. This suggests that students that started coding later are not at a disadvantage in terms of co-op job opportunities.
Coding start age compared to monthly salary
Average first 3 co-op monthly salary in CADAge started codingUnder 1616 or older2,0003,0004,0005,0006,0007,0008,0009,00010,00011,000
HACKATHONS
Students who attended at least one hackathon earned 18% more on average than those that didn't attend any.In other words, students who show passion for building projects get better job opportunities than those that don't. Alternatively, this result could be because students that attended a hackathon cared more about getting a higher paying job.
Students who attended more than 5 hackathons earned approximately 27% more than those that only attended between 1 to 5 hackathons. This could suggest that the former had a lot more relevant work to show which is more appealing to employers.
Hackathon attendance's influence on monthly salary
Average first 3 co-op monthly salary in CADNumber of hackathons attended01-5>52,0003,0004,0005,0006,0007,0008,0009,00010,00011,000
SIDE PROJECTS
Students that build side projects earned 13% more on average than those that don't build side projects.The more time that a student invests into side projects, the more they are likely to get paid. Side projects are often seen as the closest thing to software work experience, making it a great time investment to compensate for any lack of work experience.
It is important to mention that side projects and hackathons are not the only way to find a job. There have been many less practiced methods students have used to find job opportunities such as referrals, networking, etc.
It is just as important to note that students who are not involved in software-related extracurriculars still find great jobs. In fact, many SE students and faculty encourage pursuing interests besides software.
Side project commitment compared to monthly salary
Average first 3 co-op monthly salary in CADCommitment to side projects0h / month1-10h / month>10h / month2,0003,0004,0005,0006,0007,0008,0009,00010,00011,000
ADMISSION AVERAGE
Admission averages have no significant impact on job pay.A 90 in one school could be harder to achieve than a 99 in another school. In other words, admission averages are an inaccurate metric to determine how successful someone is because high schools do not standardize their grades with each other.
Admission average compared to monthly salary
Average first 3 co-op monthly salary in CADAdmission average<=93>932,0003,0004,0005,0006,0007,0008,0009,00010,00011,000
Background
GENDER
Women make up 17% of students, which is approximately the same proportion as the number of women in tech.Although we are still working towards increasing the number of minority gender groups, we can see a positive increase within the recent SE classes
There are also many on-campus communities that supports the success of women in computer science at UWaterloo. For example, Women in Computer Science, and Women Who Code Waterloo .
One student preferred not to disclose.
Gender proportion in class
Men93Women19
ETHNICITY
Students come from many different ethnic backgrounds, which span 27 different countries.There was a significant number of students Caucasians, South Asians, and East Asians.
Students' ethnicities
HispanicAfricanMiddle EasternSouth East AsianEuropeanSouth AsianNorth AmericanEast Asian112722252755
HIGH SCHOOL EXTRACURRICULARS
Less than 35% of students were involved in a STEM, CS or Robotics clubs during high school.Instead, students participated in all sorts of extracurricular activities such as volunteer work for non-profits, being a cadet, starting a school newspaper, and more. Pursuing their own unique personal interests was a common pattern amongst students during high school.
Note that this is not a comprehensive list, and that students have participated in other extracurricular activities as well.
Extracurriculars during high school
SportsMusicSTEM clubCS clubSchool councilRoboticsVolunteeringDebateDECAAV clubChessYearbookBusiness ClubCommunity servicePhotographyMUNDramaTutoringCadetsPublic speakingReligious ClubDanceShad ValleyKumonCultural clubsPlaysEnvirothonBook clubCards clubJunior AchievementDDRAnimeReach for the TopZontaMock TrialsCharitiesLink crewTriviaIT HelpdeskOSAIDVideo productionSocial Justice clubEco councilWe Feed Children founderPublic gardeningSpace ClubHistory clubBridge building
INTERNATIONAL STUDENTS
14% of students are international, which is 4% fewer than University of Waterloo as a whole.This could be due to the higher tuition costs for international students, who pay 27% more than the average international tuition fee. This could also be caused by the Engineering Admissions having a max quota for international students.
International students came from countries including Nigeria, United Arab Emirates, China, Pakistan, South Korea, Indonesia.
Proportion of international students
Canadian97International16
Family background
INCOME
More than half of students come from families whose income is higher than the median Canadian family income ($76,000).These numbers do not include income from co-op terms. The majority of students have a family income between $50,000 and $150,000.
Number of students per family income class
Prefer not to disclose>150k / year100-150k / year50k-100k / year0-50k / year22549324
LEVEL OF EDUCATION
There are more parents with Masters and Doctorates combined than Bachelors.Compared to our parents, only 3 students out of 113 are planning on attending grad school. This could be a generational shift, or maybe it could just be that students are tired of school after 5 years with no summer.
Parents' highest education
Some postsecondaryHigh schoolDid not complete HSDoctoratesPostsecondary DiplomaMastersBachelors234994046
Academics
GRADES
Study terms gradually become more difficult, but class averages remain consistent.3B was voted as the most difficult term by students. Despite being the most difficult, its class average was only slightly lower compared to other terms. This suggests that students progressively become better at coping with difficult courses.
Grades from 1A to 4A
Term averageStudy term number1A1B2A2B3A3B4A50556065707580859095
ATTENDANCE
Attendance consistently drops term by term, except after 3B3B also happens to be the hardest term.
This could be because students enjoyed their 4A classes more, or maybe they were possibly looking to compensate for their lower grades in 3B.
Alternatively, students attend slightly more class more during summer terms (2B and 4A).
Attendance vs Grades
Proportion of class attendedStudy term number1A1B2A2B3A3B4A50556065707580859095100
Courses
FAVOURITE REQUIRED COURSES
Although 3B was the most difficult term, it had Concurrency (CS343), the most popular course.The top 8 favourited courses were all between 2A and 3B. Although these terms are slightly more difficult, they also happen to have the most interesting content for students.
Students are also required to take several technical electives to fulfill their credits. The most popular electives included Graphics (CS488), Distributed Computing (ECE 454), and Human-Computer Interaction (CS 449).
Favourite mandatory courses
ECE 222SE 212SE 101MATH 135ECE 124CS 240SE 380CS 349MATH 239CS 341SE 350CS 241CS 343111112233891220
LEAST FAVOURITE REQUIRED COURSES
3B also had Feedback Controls (SE 380), the most disliked course, which explains why it was the hardest term.Although SE 463 is just as disfavoured, it was a much easier course, which explains why 4A was an easier term.
It's important to note that courses that were disliked do not imply that students find the content useless. Instead, there are a variety of factors such as personal interests, final grades, and assignments. For example, Logic and Computation (SE 212) is considered useful by 88% of students according to UWFlow.
Least favourite mandatory courses
CS 247CS 341SE 464ECE 124CS 240STAT 231CHE 102SE 350ECE 105MATH 213ECE 106SE 212SE 380SE 46311111233445103434
Does X affect grades?
ATTENDANCE
There was no correlation between self-reported attendance and grades.To be clear, this does not suggest that not going to class is beneficial. Instead, it suggests that it is possible to achieve good grades without attending all classes.
Attendance compared to relative grade from the average
0%10%20%30%40%50%60%70%80%90%100%-30%-25%-20%-15%-10%-5%+0%+5%+10%+15%+20%Grades relative to averageProportion of class attended
PARENTS' EDUCATION
Grades are slightly higher when at least one parent had a university-level degree.This suggests that there could be a correlation between parents' education and how academically inclined students are.
However, this does not suggest that having a parent with a university-level degree is a requirement for getting good grades.
Parents' education compared to grades
Cumulative averageParents' educationPost-secondary, high schoolBachelorsMasters, Doctorate646668707274767880828486889092
Program Outcome
PREFERRED PROGRAM
70% of students would choose SE again if they could go back to high school.Computer Science is a popular alternative because it has more course flexibility. Unlike SE, Computer Science does not have a cohort which makes it harder for CS students to meet others.
Preferred program
ArchitectureEnglishFine ArtsMechatronics EngineeringSystems Design EngineeringComputer ScienceSoftware Engineering111112979
THE EXPERIENCE PER GENDER
Being a part of Software Engineering was life-changing for most of the class, and equally enjoyed by both men and women.51% of the class rated SE a max rating score, and 87% of the class rated above a 4 out of 5. Shoutouts to the Software Engineering faculty and the class for creating such a great environment for students!
Program rating per gender
RatingGenderMaleFemale2.02.22.42.62.83.03.23.43.63.84.04.24.44.64.85.0
CUSTOMIZING THE EXPERIENCE
There are many ways students can make the best of their time in university. As a software engineering student, it is normal for students to attend a few hackathons, build some side projects, intern as a software engineer in Silicon Valley.
However, several students took the extra leap of faith to make the most of their university experience. Here are some of their stories:
Transitioning into design
I’ve always seen myself as an outsider among my peers in more ways than one. Outside of class, I invested my time in pursuits like illustration, photography, and fashion blogging. When I learned about product design, a field that bridged computing and design, I knew this was it.
I’m grateful I took the leap that landed me my first product role because once I was surrounded by a community of designers with passions similar to my own, I knew I finally belonged.
John Salaveria
Incoming Product Designer at Yelp
Starting a tech club for nonprofits
On one of my co-ops I met a member of a Berkeley student club called Blueprint, where students build tech for nonprofits. I loved the idea of it since it combined my skills in tech with my passion for volunteering. With another girl, I started the Waterloo chapter of the club.
We've gotten to work with some amazing non-profits, whose missions range from cataloging the world's dying languages to the preservation of bumblebees to investing in entrepreneurs in rural Kenya. It's been a lot of hard work, and at times it left me feeling burnt out, but it's been an incredible experience.
Luisa San Martin
Incoming Software Engineer at Uber ATG
Exploring data science
I saw data science as a way to grow my skill set in a way that differentiated me from other software engineers. I believe having an internship in data science has had a larger impact on my personal and career growth than completing another software engineering internship.
Throughout my data science internships I've learned various analysis and communication skills that will benefit me no matter what position I decide to pursue. I feel lucky to have had people believe in me to jump into a completely different role with no previous experience.
Christopher Luc
Incoming Software Engineer at WhatsApp
Minoring in Cognitive Science
I've always been interested in the mind, so when I saw the option for a minor in cognitive science, I thought, why not?
I'm somewhat torn by the end of it. I missed out on some courses, but I took others that I really enjoyed (like a seminar course that I did a research experiment in!). I could've taken these without being enrolled in the minor though, so my advice is to just take courses you're interested in and not stress about the minor.
Soheil Koushan
Incoming Software Engineer at Embark Trucks
Stumbling into product management
During my 2nd co-op, I ended up having to do customer support part-time for a month which helped me build user empathy. I was also involved with the Product Vision Club, a product management community.
I was hooked and ended up leading the club as well as organizing Canadian Undergraduate Technology Conference. Taking the risk to put myself in uncomfortable situations helped me transition into product roles early on, and I’ve loved the world of product management ever since.
Kaivalya Gandhi
Incoming Associate Product Manager at Yahoo!
Balancing school and a startup
At the end of my third year, Marcus and me had an opportunity to join an early-stage startup building autonomous semi trucks. In coordination with the SE Program, I was able to finish my degree remotely by submitting assignments online and flying back for exams. During this time, I got to be a part of Embark’s incredible journey as we grew from a small team of 5 engineers to one of the leading players in the self-driving space.
Taking this unconventional path gave Marcus and I incredible experience beyond my schooling that will follow me throughout my career.
Paul Ashbourne, Marcus Sjolin
Head of Infrastructure, Autonomous Truck Engineer at Embark Truck
Interests and lifestyle
EXTRACURRICULARS
Unlike high school, almost half of students were not involved in any extracurriculars during undergrad.Most students were the only SE 2018 student involved in their club.
Most students did not pursue any extracurricular activities related to STEM.
Non-comprehensive list of university extrcurriculars
SportsEngsocStudent Design TeamBlueprintRock climbingOrientation weekMusicUW Hip HopDanceVelocityHackathonsPhotographyRhythm gaming clubVolunteeringUW Indian ConnectionCoaching high school robotics teamDramaModellingChristian FellowshipProduct Vision ClubCanadian University Technology ConferenceStyle SocietyEngineering AmbassadorsEngiqueersHack the NorthUW/UXKarate ClubKendo ClubStartupShoe tagGLOWFASSSinging
Coding
PROGRAMMING LANGUAGE
Python is the most popular programming language among SE students.Python’s versatility for back-end web, scripting, and especially machine learning could explain why it is so popular in our class. Many of these disciplines are highly in-demand in the software engineering, making Python an ideal general purpose language.
Java continues to be very popular since it is commonly taught as students' first programming language in high school.
Many companies hire web developers for co-op, which could explain why JavaScript, a scripting language for the web, is so popular. It also happens to be the most popular language amongst all developers according to a StackOverflow survey.
Favourite programming language
RustClojurePascalObjective-COCamlC#LuaCRubyGolangScalaC++JavaScriptJavaPython1111112238911182633
EDITOR
Sublime Text is the most popular text editor used in our class, followed by Vim and Atom.Interestingly, Visual Studio Code is one of the less popular editors in our class but it is the most popular editor according to the same StackOverflow survey. This could be because it was released very recently after most students were already accustomed to their favourite editor.
Favourite editor
EclipseNotepad++JetBrainsVisual Studio CodeIntelliJAtomVimSublime236711162349
DESKTOP OPERATING SYSTEM
The majority of students are using a macOS machine.This result isn’t surprising since macOS is built on top of Unix, enabling a lot of important functionality for programmers
Interestingly, most students didn’t have a macOS machine in first year. Many employers provided MacBooks as work laptops which introduced students to macOS's development environment. As a result, many students converted to being MacBook users during university.
Favourite desktop operating system
Linux16Windows20macOS77
HACKATHONS
More than 80% of students have gone to at least one hackathon.They are especially popular at UWaterloo, home to Hack the North, Canada's biggest hackathon.
According to Justin Trudeau, “Hack the North will give you a chance to not only let your imagination run wild, but to meet other people who can help you solve problems: mentors, friends and colleagues, who will challenge you to take your ideas a step further.”
Number of hackathons attended
>106-101-505137619
SIDE PROJECTS
Most students have also worked on some sort of side project during university.Amongst those that have built side projects, only 25% dedicated more than 10 hours a month to their side projects. This should be taken with a grain of salt since commitment may vary depending on the term and year.
During the first few years of SE, side projects are often a means to getting a better co-op job because it compensates for the lack of software work experience.
Estimated commitment to side projects
40h+/month30-40h/month20-30h/month10-20h/month1-10h/month0h/month53596327
SOFTWARE DISCPLINES
57% of students enjoy an aspect of web development (front-end, back-end, full-stack).Many co-op positions happen to be related to web development which explains why many students are more familar with it. Alternatively, students could just find web development the most fun. Interestingly, there are no course offerings in SE for web development unlike ML and AI.
After web development, 25% of students enjoy machine learning (ML) or artificial intelligence (AI). This aligns with the rising popularity and demand of both disciplines.
Only 3 students have expressed interest in mobile development. This is surprising because of both how high in-demand it is and how ubiquitous it is amongst consumers.
Disciplines of interest
PhysicsVirtualizationTheory & ImplementationSystem ArchitectureDesktop appsRoboticsDistributed SystemsData ScienceInfrastructureMobile DevelopmentEmbedded SoftwareUser ExperienceDesignBig DataProduct ManagementGraphicsSecurityFull-stack WebArtificial IntelligenceMachine LearningFront-end WebBack-end Web111112223345666671116192039
EXERCISE
Almost 80% of students exercise at least a few times a month.This could be in the form of intramurals, gym, sports team, etc. Students typically start SE intramural teams with one another. Although school is time consuming, most students actively set aside time for physical activities.
Exercise frequency
NeverFew times a yearFew times a monthFew times a weekDaily111352316
COOKING
Over half of students cook every week.In other words, many of us have a lot of experience cooking. How good is our cooking? That’s a completely separate question that may be better left unanswered.
These results vary depending on whether students are on a study or co-op term, since many companies cater meals during weekdays.
Cooking frequency
NeverFew times a yearFew times a monthFew times a weekDaily1511412917
SLEEPING
Software engineers may have a reputation for being nocturnal, but most students aren’t night owls.In fact, 72% of students usually sleep before 1AM. However, some students do still prefer sleeping late, possibly because they focus better at night, or maybe they like gaming very late.
5:00AM-6:00AM might sound crazy, but then again, SE students willingly go to 24 hour coding events called hackathons.
Estimate sleep time
6:00AM5:00AM4:00AM3:00AM2:00AM1:00AM12:00AM11:00PM10:00PM1127182538145
Future
POST-GRADUATION PLANS
As of 5 months before graduation, 77% of students already have an offer, and 15% of students are still looking for a job.7 students are planning to do graduate studies after graduating. Although most of the class plans to join the workforce immediately, 34% of students are considering grad school in the future.
Even though 80% of the class has worked in California, less than half of students have chosen to live in California after graduating. Although California is perceived by many as the place to be for software engineers, seeing the gap in the conversion rate suggests that there are many other great places for software engineers such as East Coast Canada, East Coast US and Pacific North West US.
Post graduation plans
Grad schoolHave offer, not interviewingNo offer, interviewingHave offerAccepted offer35174344
Desired location
AsiaWest Coast CanadaUS Pacific North WestEast Coast USEast Coast CanadaCalifornia2411163049
MOTIVATIONS
Good compensation and growth as an engineer were the main factors affecting post-graduation plans.This could explain why California was a popular choice for full-time location.
Although family may be the least popular factor, most students working away from home have expressed interest in working near their families in the future.
Factors affecting post-graduation plans
FamilyHaving an impactLocationGood coworkersImproving skillsCompensation192630343953
DEBT
65% of students are graduating debt-free.30% of students have less than $30,000 in debt. Among students who are in debt, the median debt is $22,500.
It's important to note that there were students from each family income bracket who graduated debt-free. All students with family income higher than $200,000 graduated debt-free.
Debt per family income bracket
Amount of debt upon graduationFamily income bracket0-50k/year50-100k/year100-150k/year150-200k/year>200k/yearNot disclosed010,00020,00030,00040,00050,00060,00070,00080,00090,000100,000
ADVICE
"Figure out which advice applies best to you and ignore the rest."The following is a summary of the advice shared by students with the intention of being shared with both prospective and current SE students. Many of the sentences are directly quoted or rephrased from the original advice.
Your success should not be defined by others. Just because someone else is better than you at something, it does not mean that you're failing. Instead, be open and realize you can learn something from everyone. Realize that your peers' successes should be motivation rather than a reason to put yourself down.
Find value in modesty, empathy, and courage. Learn to develop good habits early on, and budget your time based on your options and priorities. These skills are indispensable during university. Find a hobby you love. That hobby just might be software engineering, or it could be something completely different like drawing video game characters.
Stop worrying about marks. They don't get you far unless you're looking at post graduate studies. This also means that you should know when to stop working on assignments to work on other things. "After graduation, I won't remember many of the bogus technical concepts. I will, however, remember the late nights in the SE lab with friends, fooling around while doing a last minute assignment."
Try out as many different co-ops as possible. And don't Cali or continuous. It's tough to get your first job, but don't give up. And if you get a co-op at a big company, it does not mean that you're at the top of the world.
And most importantly, university goes by in a flash, so enjoy it!
- University of Waterloo Software Engineering Class of 2018
Thank you!
I hope you enjoyed reading the University of Waterloo Software Engineering 2018 Class Profile!
Acknowledgements
This project wouldn't have been possible without the help of some great people:
Patrick Lam, director of Software Engineering, for confidentially managing the data and unbiasedly advising the project from start to finish.
Christopher Luc for setting up the processing architecture and advising about the best statistical methodologies to apply, and Richard Wong for helping write processing scripts.
Joey Loi and Atef Chaudhury for inspiring me to create this class profile. Much of the process and structure of this was borrowed from their Systems Design Engineering 2017 Class Profile.
Jenny Sun, Derrek Chow, Kaitlyn Yong, and Bo Peng for providing feedback on the initial drafts of the class profile.
Balaji Sankaranarayanan, Emily Walls, Seun Makinde, Soheil Koushan, and Bilal Akhtar for providing feedback on the survey sent out.
Resources
UWATERLOO SOFTWARE ENGINEERING
Software Engineering Program Homepage https://uwaterloo.ca/software-engineering/
Co-op at UWaterloo https://uwaterloo.ca/co-operative-education/
Academic Calendar https://ugradcalendar.uwaterloo.ca/page/ENG-Software-Engineering
INSPIRATIONS
Systems Design Engineering 2017 Class Profile http://joeyloi.com/SYDE2017classprofile.pdf
HackerRank 2018 Developer Skills Report http://research.hackerrank.com/developer-skills/2018/
StackOverflow 2018 Developer Survey Results https://insights.stackoverflow.com/survey/2018/
DATA
Processing scripts https://github.com/se2018/class-profile
Class Profile code https://github.com/andyzg/classprofile
SE Exit Survey results (not related to Class Profile) https://ql.tc/Hia9QK
Get in touch!
Let me know what you think! You can reach me at andy.zhang@edu.uwaterloo.ca.
最后编辑: