THIS SITE

Information for

You are here

Software Engineering

Because today, even your fridge is full of software.

Whether you want to create a VR training program for surgeons, the next “swipe right” dating app, or an autonomous car, software engineers have endless career options in today’s tech-enabled world.

At Waterloo, you won’t just write code. You’ll also analyze software architecture, apply algorithms, understand digital hardware systems, and design human/ computer interfaces. Plus, you’ll learn how to work in teams and manage projects.

Then, during your co-op, you’ll put those skills to work at leading companies like Snapchat or Facebook or hot new startups. When graduate, you’ll be ready to create reliable, affordable, and faster software for all kinds of different purposes.

Study in a high-tech hub

Waterloo Region is home to Google, Kik, and more than 1,000 other technology companies, providing lots of co-op and career opportunities.

Calling all hackers

Bring your ideas to life at Hack the North — Canada’s biggest hackathon — which attracts more than 1,000 students from around the world each year.

 

Female student working on laptop

Through co-op, Software Engineering students work at leading software design firms even before they graduate.

About the Software Engineering program

breifcaseGain 2 years of experience in the co-op program

clickApply directly to this program on your application

grad capEarn a Bachelor of Applied Science degree

 

#1Engineering school in Canada (US News & World Report 2018)

GearsOffered through the Faculty of Engineering and the Faculty of Mathematics

Money flowerStudents earn $17,800 on average per co-op term

 
 

Software Engineering admission requirements

  • Ontario students: 6 Grade 12 U and/or M courses including
    • Advanced Functions (minimum final grade of 70% is required)
    • Calculus and Vectors (minimum final grade of 70% is required)
    • Chemistry (minimum final grade of 70% is required)
    • Physics (minimum final grade of 70% is required)
    • English (ENG4U) (minimum final grade of 70% is required)
    • Recommended courses: Grade 11 U Introduction to Computer Science, Grade 12 U Computer Science
  • Admission averages: Individual selection from the mid-90s
  • Not studying in Ontario? Search our admission requirements
  • Experience in developing well-structured, modular programs is required. Applicants will be asked to explain programming experience on the Admission Information Form that is required for admission

Strong performance in a programming contest, such as the Canadian Computing Competition, is helpful. You're also strongly encouraged to write the Euclid Mathematics Contest

First-year Software Engineering courses

September to December

CS 137 - Programming Principles
ECE 105 - Classical Mechanics
MATH 115 - Linear Algebra for Engineering
MATH 117 - Calculus 1 for Engineering
MATH 135 - Algebra for Honours Mathematics
SE 101 - Methods of Software Engineering

January to April

CS 138 - Introduction to Data Abstraction and Implementation
ECE 106 - Electricity and Magnetism
ECE 124 - Digital Circuits and Systems
ECE 140 - Linear Circuits
MATH 119 - Calculus 2 for Engineering
SE 102 - Seminar

 

After first year

Sample upper-year Software Engineering courses

SE 212 – Logic and Computation
SE 464 – Software Design and Architectures

SE 350 – Operating Systems
SE 465 – Software Testing and Quality Assurance

 

Gain relevant work experience through co-op

By alternating school terms and paid co-op work terms throughout your degree, you can explore new career areas and types of employers as your career interests evolve.

Sample co-op job titles

  • Tools and Automation Engineering Intern
  • Software Developer
  • Computer and Technical Support
  • Fund Analyst
  • Technical Product Manager - Software Design & Development
  • Software Developer - Member Services Information Technology
  • Software Systems Development

Sample co-op employers

  • Mozilla Corporation
  • Tagged Inc
  • Ontario Ministry of Education
  • East Coast Fund Management
  • NexJ Systems Inc
  • Ontario Teacher's Pension Plan Board
  • Technical Solutions Company
 

Careers in Software Engineering

Recent graduates

  • Software Developer, IBM Canada
  • Consultant, PureFacts Financial Solutions
  • Software Manager, Arius Software Corporation
  • Head of Technology and Engineering, Sydus
  • Software Engineer, VistaPrint USA
  • Implementation Consultant, Desire2Learn
  • Software Engineer, Harris Corporation
  • Software Developer, Accenture

Possible professional designation

Helpful links