Skip to content

Software Engineering

University of Waterloo · Waterloo, Ontario

Software state graph, logic circuit and mathematics ink study with the Dana Porter Library as a campus motif
Image source

AI-generated ink illustration

Conceptual study artwork, not a photograph of teaching facilities.

Unidex · generated with ImageGen

Checked 2026-11-05

Deadlines

January 2027

MonTueWedThuFriSatSun
123
45678910
111213141617
18192021222324
25262728293031

Next deadline

  • Apply to Software Engineering

    Engineering application deadline, including Software Engineering.

    September 2027 entry

Requirements

Admission requirements

High-school prerequisites
  • MHF4UAdvanced Functions70% min.
  • MCV4UCalculus and Vectors70% min.
  • SCH4UChemistry70% min.
  • SPH4UPhysics70% min.
  • ENG4UEnglish70% min.
Programming experience required

A programming course or self-study can satisfy the experience requirement. Waterloo looks for interest in solving open problems, debugging, testing and learning new languages.

Waterloo Software Engineering: Ontario high-school requirements
Application steps
  1. Step 1Check your required courses
    • Ontario applicants need a high-school diploma or equivalent and six Grade 12 U or M courses, including all five prerequisites. Each prerequisite needs a final grade of at least 70%.
    Waterloo Software Engineering: Ontario high-school requirements
  2. Step 2Apply through OUAC
    • Apply directly to Software Engineering through OUAC by January 15, 2027. Waterloo lets you select one Engineering program on your OUAC application. Software Engineering is unavailable as an alternate.
    Engineering application instructionsWaterloo Engineering application instructions
  3. Step 3Complete your Declaration of Academic Experience
    • Required for all applicants. Complete the DAE in the Waterloo applicant portal to update your document checklist.
    Document checklist instructionsWaterloo required documents
  4. Step 4Submit the Admission Information Form
    • Submit the required Admission Information Form in the Waterloo applicant portal by February 1, 2027. Waterloo publishes the questions so you can prepare ahead.
    Read the AIF questionsWaterloo AIF and Software Engineering supplementary form
  5. Step 5Submit the Software Engineering form
    • Required for this program. Describe your programming experience in the applicant portal and submit the form by February 1, 2027.
    Software Engineering form instructionsWaterloo AIF and Software Engineering supplementary form
  6. Step 6Complete the online interview
    • Complete the required Kira Talent interview by February 1, 2027. Use your personal checklist link and record one response, up to 90 seconds, about what motivated your program choice.
    Interview instructionsWaterloo mandatory Engineering interview
  7. Step 7Submit your documents
    • Submit the documents on your applicant checklist by February 1, 2027. Ask your school about transcript delivery. Waterloo may require an English test if your four most recent years of full-time education were outside an English-language school system.
    How to submit documentsWaterloo required documents and transcript instructions
Ontario high-school entry

Ontario high-school applicants; average text uses the university's own published guideline

  • Six 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)
  • Admission average: Individual selection from the low to mid-90s
Waterloo current exact programme admission requirements
Programme-specific forms and experience

All applicants to this programme

  • There are supplementary information forms , including the Admission Information Form, and an online interview which are required for admission. We'll email you detailed instructions once we receive your application.
  • You're required to have experience in a programming course (such as Grade 11 or 12 computing and/or information science or equivalent) or self-study and a demonstrated interest in solving open problems, debugging code, testing code, and learning new software languages. You'll be able to tell us about your programming experience as part of the online interview.
  • Participation in the Canadian Senior Mathematics Contest and/or the Euclid Mathematics Contest is not required for admission, but writing one of these contests is required for some scholarships offered by the Faculty of Mathematics.
Waterloo current exact programme admission requirements
Engineering required interview and forms

All Engineering applicants except Architecture; this programme is included

  • Admission Information Form and any required supplementary information forms; online interview required for admission.
Waterloo published September2027 application and document deadlines
Current AIF contents

Applicants to this programme; September 2027 entry

  • Complete four short responses, up to 150 words each: interests, community involvement, an experience reflection and goals for Waterloo.
  • List extracurricular activities and hours from January 1 to December 31, 2026. Submit the shared AIF once through the applicant portal.
Waterloo current 2027 AIF and faculty-specific supplementary forms
Required Engineering interview

Applicants to this Engineering programme

  • Record one 90-second response about experiences motivating your choice of engineering programme through the portal’s Kira Talent link.
  • A separate non-graded yes/no question asks about FIRST Robotics for scholarship consideration.
Waterloo current required Engineering interview format
Optional Engineering alternate choice

Engineering applicants choosing an eligible alternate programme

  • The alternate-choice form is optional. Software Engineering and Biomedical Engineering cannot be requested as alternates.
Waterloo current 2027 AIF and faculty-specific supplementary forms
Ontario students taking IB

Ontario OSSD students taking IB; Waterloo undergraduate degree entry

  • If you take IB at an Ontario high school, Waterloo uses converted Ontario Grade 12 U/M results supplied by your school.
  • Use the Software Engineering Ontario subject requirements. The separate full-IB Diploma point requirements are not the assessment basis for this Ontario route.
  • Any IB mathematics course can qualify if your school awards the Ontario credit required by Software Engineering. Verify that the converted credits include its required mathematics courses.
Waterloo current Ontario/IB assessment policy
British Columbia high school

British Columbia high-school graduates

  • Complete a diploma and six academic Grade 12 courses.
  • English Studies 12 or English First Peoples 12, Pre-Calculus 12, Calculus 12 or AP Calculus, Chemistry 12, and Physics 12.
  • Each named prerequisite requires at least 70%.
  • Published competitive guidance is in the low to mid-90s. Waterloo considers applicants individually.
Waterloo Software Engineering: British Columbia high-school requirements
Alberta high school

Alberta high-school graduates

  • Complete a diploma with five academic courses at the 30 or 31 level.
  • Mathematics 30-1, Mathematics 31, Chemistry 30, English Language Arts 30-1, and Physics 30.
  • Each named prerequisite requires at least 70%.
  • English Language Arts 30-1 uses the final blended mark. For other provincial-exam subjects, Waterloo uses the higher of the school mark and the blended mark.
  • Published competitive guidance is in the low to mid-90s. Waterloo considers applicants individually.
Waterloo Software Engineering · Alberta high school
Saskatchewan high school

Saskatchewan high-school graduates

  • Complete a diploma with five academic courses at the 30 level.
  • Level 30 English Language Arts, Pre-Calculus 30, Calculus 30 or AP Calculus, Chemistry 30, and Physics 30.
  • Each named prerequisite requires at least 70%.
  • Applicants from the previous English curriculum need both English Language Arts 30A and 30B. French Language Arts 30 can meet the language requirement.
  • Published competitive guidance is in the low to mid-90s. Waterloo considers applicants individually.
Waterloo Software Engineering · Saskatchewan high school
Manitoba high school

Manitoba high-school graduates

  • Complete a diploma with five academic courses at the 40 level or higher.
  • Pre-Calculus Mathematics 40S, Chemistry 40S, English 40S, Physics 40S, and Calculus 45A, Calculus 45S or AP Calculus.
  • Each named prerequisite requires at least 70%.
  • Published competitive guidance is in the low to mid-90s. Waterloo considers applicants individually.
Waterloo Software Engineering · Manitoba high school
Quebec CEGEP

Applicants from Quebec CEGEP

  • Complete one year of CEGEP with at least 12 academic semester courses.
  • English 603 or 604, two of Calculus I, Calculus II or Linear Algebra, at least one listed CEGEP physics course, and Chemistry I or II.
  • Each named prerequisite requires at least 70%.
  • Waterloo publishes individual selection from the low 80s for this CEGEP route.
Waterloo Software Engineering · Quebec CEGEP
New Brunswick high school

New Brunswick high-school graduates

  • Complete a diploma with five academic courses at the Grade 12, 120, 121 or 122 level.
  • Pre-Calculus 120B, Calculus 120, and Chemistry, English and Physics at 121 or 122.
  • Each named prerequisite requires at least 70%.
  • Published competitive guidance is in the low to mid-90s. Waterloo considers applicants individually.
Waterloo Software Engineering · New Brunswick high school
Nova Scotia high school

Nova Scotia high-school graduates

  • Complete a diploma with five Grade 12 academic courses.
  • Pre-Calculus 12, Calculus 12, Chemistry 12 Academic, English 12 Academic or English 12 African Heritage, and Physics 12 Academic.
  • Each named prerequisite requires at least 70%.
  • Published competitive guidance is in the low to mid-90s. Waterloo considers applicants individually.
Waterloo Software Engineering · Nova Scotia high school
IB Diploma

Standalone International Baccalaureate Diploma

  • Complete the IB Diploma with six courses, at least three at Higher Level.
  • Mathematics Analysis and Approaches, Physics, Chemistry, English A and another HL or SL course each require at least 4. HL Mathematics and Physics are recommended.
  • HL English B at 5 can meet the English A requirement. The minimum is 31 subject points excluding diploma points, with 6s and 7s recommended.
Waterloo Software Engineering · IB Diploma
British A Levels

British A Level curriculum

  • A Level Mathematics and Physics each require A. A third A Level requires B.
  • Chemistry requires B at GCSE level or above. GCSE English requires B/5. Waterloo recommends As and A*s for individual selection.
Waterloo Software Engineering · British A Levels
Chinese secondary curriculum

Chinese Senior 3 applicants

  • Present Senior 3 Mathematics, Physics, Chemistry, English and one additional academic subject. The required five-course average is 88%.
  • Waterloo lists 75% minimums for Physics, Chemistry, English and the additional academic subject.
Waterloo Software Engineering · Chinese secondary curriculum
Chinese and British A Levels

Chinese applicants taking A Levels

  • Present at least five distinct subjects, including three A Levels. Mathematics, Physics and the third A Level each require A.
  • Chemistry requires B/5 at GCSE level or 82% in Senior 3. English requires B/5 at GCSE, AS or A Level, or 84% in Senior 3.
Waterloo Software Engineering · Chinese and British A Levels
External university transfer

Applicants transferring from a university after Ontario high school

  • Transfer admission is to first year. The minimum cumulative university average is B or 75%.
  • The five subjects can be met by secondary or university courses. Waterloo uses the highest completed academic level.
  • At university level, introductory Linear Algebra, Calculus, Chemistry, English and Physics each require 70%. Applicants who studied outside Ontario should use their own high-school curriculum selector.
Waterloo Software Engineering · External university transfer
Internal Waterloo transfer

Current Waterloo students

  • Applications are competitive and depend on space. The minimum cumulative average to be considered is 75%.
  • Applicants outside the Faculty of Engineering start in 1A and must meet the high-school requirements. Engineering students can consult the faculty for later-term transfer rules.
  • Software Engineering requires experience developing structured, modular programs. The faculty lists a transfer form and a letter explaining the requested change.
Waterloo Software Engineering · internal and external Engineering transfer policies
Mature applicants

Applicants who have not attended college or university

  • Complete the five Grade 12 U Engineering prerequisites or equivalents, submit the AIF and online interview, and demonstrate structured programming experience.
  • Waterloo may require older math or science prerequisites to be updated. Applicants with postsecondary study follow transfer or readmission routes.
Waterloo Software Engineering · Faculty of Engineering mature admission

Degree requirements

Courses and credits21.5 units

21.50 units, excluding COOP and PD, plus all required courses and approved elective rules.

Waterloo 2026–2027 calendar: Software Engineering
Academic standing60% minimum

At least 60% cumulative overall average and 60% term average. Engineering promotion rules also apply.

Waterloo 2026–2027 calendar: Software Engineering
Communication courseBefore 3A

Finish an approved communication course with at least 60% before entering 3A.

Waterloo 2026–2027 calendar: Software Engineering
Technical elective timingFrom 3A

Technical electives cannot be taken before 3A.

Waterloo 2026–2027 calendar: Software Engineering
Final-year design project4A and 4B

Choose SE 490 or GENE 403 in 4A, and SE 491 or GENE 404 in 4B.

Waterloo 2026–2027 calendar: Software Engineering
Co-op credits5 work terms

Five credited work terms and PD 10, PD 11, PD 19 and PD 20.

Waterloo 2026–2027 calendar: Software Engineering
Course sequence changesApproval required

To accommodate a reduced elective load, Waterloo allows CHE 102, CS 343, CS 348, CS 349, CS 449, ECE 140, ECE 192, ECE 358, MSE 343 and SE 380 out of sequence. Other exceptions need prior approval from the Software Engineering Director.

Waterloo 2026–2027 calendar: Software Engineering
Professional development
  • PD 11 · Processes for Technical Report Writing
  • PD 10 · Professional Responsibility in Computing
  • PD 19 · Tactics for Workplace Success
  • PD 20 · Strategies for Career Success
Waterloo 2026–2027 calendar: Software Engineering
When you study and workTwo co-op streams

Waterloo assigns this sequence by default. Students may request Stream 8Y after 3B with advisor approval.

YearFallWinterSpring
1Co-op 1
2Co-op 2
3Co-op 3Co-op 4
4Co-op 5Co-op 6
5After final term
Waterloo 2026–2027 calendar: Software Engineering

Program facts

Entering average

Applicant curriculum

Waterloo reports low to mid-90s. The chart shows approximately 90% to 95%.

Admission details

Waterloo describes the range as low to mid-90s. The marked endpoints are approximate.

Individual selection, based on previous years. This is not a guaranteed cutoff.

Waterloo’s requirementsWaterloo Software Engineering: Ontario high-school requirements

Co-op

Scheduled terms
6
Per term
4 months
Scheduled total
24 months

Default schedule · Stream 8X

  1. Term 1Spring · Year 1
  2. Term 2Winter · Year 2
  3. Term 3Fall · Year 3
  4. Term 4Spring · Year 3
  5. Term 5Winter · Year 4
  6. Term 6Spring · Year 4

5 credited terms to graduate

Compare Stream 8X and Stream 8Y
How co-op is counted

6 scheduled work terms ÷ (8 study + 6 work terms) × 100 = 42.9%.

Share of the published schedule, not a job-placement rate or a promise of earnings. At least five credited work terms are required to graduate.

Current program-level employment reports require a Waterloo account.

Co-op employment reportsWaterloo 2026–2027 calendar: Software EngineeringWaterloo Software Engineering programWaterloo Co-op Data Hub access and definitions
Sources and notes

Specializations

Specializations are recognized on the diploma.

Artificial Intelligence

Study artificial intelligence and machine learning techniques.

Courses

2026–2027 academic calendar

Example week

Monday
Tuesday
Wednesday
Thursday
Friday

Course: 1A

6 required

Fall · Calendar year 1

CS 137Programming Principles0.5 units

Practise procedures, recursion, sorting, pointers and dynamic structures, with analysis of design time and space.

Course outlineWaterloo 2026–2027 calendar: CS 137
CHE 102Chemistry for Engineers0.5 units

Apply chemical calculations, gases, solutions, equilibria, oxidation-reduction reactions and kinetics to engineering.

Course outlineWaterloo 2026–2027 calendar: CHE 102
MATH 115Linear Algebra for Engineering0.5 units

Study matrices, determinants, vector spaces, eigenvalues and complex numbers, with applications.

Course outlineWaterloo 2026–2027 calendar: MATH 115
MATH 117Calculus 1 for Engineering0.5 units

Use limits, derivatives and integration to solve engineering problems, including optimization and approximation.

Course outlineWaterloo 2026–2027 calendar: MATH 117
MATH 135Algebra for Honours Mathematics0.5 units

Develop mathematical language and proof techniques through integers, modular arithmetic, number systems and polynomials.

Course outlineWaterloo 2026–2027 calendar: MATH 135
SE 101Introduction to Methods of Software Engineering0.25 units

Learn engineering communication, measurement and design, professional standards and safety, and preparation for co-op.

Course outlineWaterloo 2026–2027 calendar: SE 101

Elective choices

12 across the degree
27.9% of listed degree units are electives

12 approved 0.5-unit elective slots × 0.5 ÷ 21.5 listed degree units × 100 = 27.9%.

Base units across all eight academic terms. The numerator counts 12 approved electives, including restricted lists. Required either/or courses remain in the denominator. Excludes COOP, PD and additional paired laboratory units. Not unrestricted study.

Waterloo 2026–2027 calendar: Software Engineering
Year 11B · 1 slot
Year 22B · 1 slot
Year 33A + 3B · 2 slots
Year 44A + 4B · 8 slots
Optional specializations
  • Artificial Intelligence
  • Business
  • Computational Fine Art
  • Human-Computer Interaction
Specialization requirements
Sources and notes
Waterloo 2026–2027 calendar: Software Engineering
Waterloo class schedulesWaterloo Fall 2026: CS 137 class sectionsWaterloo Fall 2026: CHE 102 class sectionsWaterloo Fall 2026: MATH 115 class sectionsWaterloo Fall 2026: MATH 117 class sectionsWaterloo Fall 2026: MATH 135 class sectionsWaterloo Fall 2026: SE 101 class sectionsWaterloo Winter 2027: CS 138 class sectionsWaterloo Winter 2027: ECE 124 class sectionsWaterloo Winter 2027: ECE 140 class sectionsWaterloo Winter 2027: ECE 192 class sectionsWaterloo Winter 2027: MATH 119 class sectionsWaterloo Winter 2027: SE 102 class sectionsWaterloo Fall 2026: CS 241 class sectionsWaterloo Fall 2026: ECE 222 class sectionsWaterloo Fall 2026: SE 201 class sectionsWaterloo Fall 2026: SE 212 class sectionsWaterloo Fall 2026: STAT 206 class sectionsWaterloo Fall 2026: PHYS 121 class sectionsWaterloo Spring 2026: CS 240 class sectionsWaterloo Spring 2026: CS 247 class sectionsWaterloo Spring 2026: CS 348 class sectionsWaterloo Spring 2026: MATH 239 class sectionsWaterloo Spring 2026: SE 202 class sectionsWaterloo Winter 2027: CS 341 class sectionsWaterloo Winter 2027: MATH 213 class sectionsWaterloo Winter 2027: SE 301 class sectionsWaterloo Winter 2027: SE 350 class sectionsWaterloo Winter 2027: SE 465 class sectionsWaterloo Winter 2027: SE 464 class sectionsWaterloo Fall 2026: CS 343 class sectionsWaterloo Fall 2026: ECE 358 class sectionsWaterloo Fall 2026: SE 302 class sectionsWaterloo Fall 2026: SE 380 class sectionsWaterloo Fall 2026: SE 463 class sectionsWaterloo Fall 2026: CS 349 class sectionsWaterloo Fall 2026: SE 401 class sectionsWaterloo Fall 2026: SE 490 class sectionsWaterloo Winter 2026: SE 402 class sectionsWaterloo Winter 2026: SE 491 class sections

Careers

Waterloo career examples

Employers in student profiles

  • VidyardGrowth engineer · Second co-op, 2021
  • AxonifyJava developer · Fifth co-op, 2021
Read Joseph Tafese’s Waterloo profile
More employers in the profiles

Accreditation

CEAB accredited since 2006

Meets the academic requirement for engineering licensure. Other requirements apply. Engineers Canada: the academic requirement for engineering licensure

Engineers Canada
Sources and notes

Costs

Program or faculty

First-year estimate

2026–27 · Two terms · CAD

Ontario example · Choose your fee category

Tuition and incidental fees$19,000
Books and supplies$1,500
Co-op fee

$836 × 2 study terms

$1,672
Residence
Residence
$8,254
Meal plan
Meal plan
$8,040
Estimated total$38,466

Exact student-account fees vary. Residence and meal choices change this estimate.

Last updated

Suggest to a student