- HBA · 4 years
- Work experience details
- ~High 80s to low 90s



AI-generated ink illustration
Conceptual study artwork, not a photograph of teaching facilities.
Unidex · generated with ImageGen
Checked 2026-11-05
Symbolic subject artwork; no university facility depicted
Duration (years)
4 years regular or about 5 years co-op
Waterloo Computer Science regular and co-op schedulesWork experience
Four entry sequences usually schedule six four-month work terms, or up to 24 months. Computer Science requires five credited work terms and five professional development courses for the co-op designation.
Waterloo 2026–27 calendar, Bachelor of Computer Science degree requirementsEntering average
Published approximate guidance: Low to mid-90s. Guidance checked November 2026. Individual selection for Ontario high-school applicants.
Waterloo Computer Science: admission requirements and study options| Mon | Tue | Wed | Thu | Fri | Sat | Sun |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 20 | 21 | 22 | |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
2027 entry
School deadline, not a student task. Universities receive these grades by November 26. Verbatim: "Deadline for the OUAC to receive all midterm or final grades available for 4U/M courses from Ontario high schools. Schools may report in-progress grades for full-year courses as soon as they are available." Universities receive these by the target date of November 26, 2026. This is a deadline on the high school, not on the student, but it governs which grades a university sees in the first round.
Verbatim: "There is no specific Undergraduate application deadline if you are a Group B applicant. Deadlines vary at each university and sometimes depend on the program. Visit the university websites or contact the universities directly for their deadlines. If you are interested in a program but the deadline has passed, you may contact the university's admission office for help. Be aware of university-specific deadlines for submitting transcripts and portfolios, if required, and for arranging interviews and auditions. You must ensure the OUAC has enough time to process your choices before the universities' program deadlines." OUAC defines Group B as anyone who does not meet the Group A criteria, e.g. not currently taking an Ontario high school course, a Canadian outside Ontario, an international applicant, a postsecondary transfer student, or a mature applicant.
Entry terms · Fall
September 2027 first-year undergraduate entry.
Waterloo September 2027 application and document deadlinesWaterloo requires the Admission Information Form for all applicants.
Waterloo Computer Science: admission requirements and study optionsOntario high-school applicants; average text uses the university's own published guideline
All applicants to this programme
Applicants to this programme; September 2027 entry
Applicants to this Faculty of Mathematics programme
Ontario high-school students taking IB courses, including students completing an OSSD
British Columbia high school
Alberta high school
Quebec Grade 12
U.S. curriculum
Full International Baccalaureate
British A Levels
Indian Standard XII
BCS
BMath
Individual selection for Ontario high-school applicants.
Waterloo Computer Science: admission requirements and study optionsWaterloo Computer Science: admission requirements and study optionsFour entry sequences usually schedule six four-month work terms, or up to 24 months. Computer Science requires five credited work terms and five professional development courses for the co-op designation.
Waterloo 2026–27 calendar, Bachelor of Computer Science degree requirementsComputer Science offers the BCS and BMath honours degrees. Both are offered in regular and co-op formats.
BCS
Explore machine learning, pattern recognition and data analysis.
The first two study terms are Waterloo’s published examples. Course times depend on course selection and assigned sections. Upper-year requirements differ for the BCS and BMath routes.
Published sample term; course availability may change.
Build functional programs using recursive data, lists, trees and abstraction.
Published first-year sample term
Waterloo 2026–27 course calendar, CS 135Develop proof techniques through integers, number systems and polynomials.
Published first-year sample term
Waterloo 2026–27 course calendar, MATH 135Study limits, continuity, derivatives and approximation with error bounds.
Published first-year sample term
Waterloo 2026–27 course calendar, MATH 137Published sample term; course availability may change.
Study algorithms, data structures, memory management and program efficiency.
Published first-year sample term
Waterloo 2026–27 course calendar, CS 136Use command-line tools, version control, scripts, testing and debugging.
Published first-year sample term
Waterloo 2026–27 course calendar, CS 136LStudy linear systems, matrices, vector spaces, transformations and eigenvalues.
Published first-year sample term
Waterloo 2026–27 course calendar, MATH 136Study integration, differential equations, series and Taylor approximations.
Published first-year sample term
Waterloo 2026–27 course calendar, MATH 138Examples from the programme page; not a complete required-course list.
Design efficient algorithms using graph search, greedy methods and dynamic programming.
Waterloo 2026–27 course calendar, CS 341Design and evaluate computing technologies around human needs.
Waterloo 2026–27 course calendar, CS 449Protect data using cryptography, network security and privacy-preserving computation.
Waterloo 2026–27 course calendar, CS 459Explore AI problem-solving, reasoning, planning, machine learning and language processing.
Waterloo 2026–27 course calendar, CS 486Examine the effects of computing on individuals, organizations and society.
Waterloo 2026–27 course calendar, CS 492Choose the regular or enriched version within each paired course. CS 341 and CS 350 are required in both routes.
Compare data structures and their performance in sorting, priority queues, dictionaries and text processing.
Waterloo 2026–27 course calendar, CS 240Study data organization and algorithm performance in the enriched version of CS 240.
Waterloo 2026–27 course calendar, CS 240ESee how programs become executable through machine architecture, assembly, translation and linking.
Waterloo 2026–27 course calendar, CS 241Study the link between high-level programs and machine execution in the enriched version of CS 241.
Waterloo 2026–27 course calendar, CS 241EUse formal logic to analyse reasoning and investigate what computers can calculate.
Waterloo 2026–27 course calendar, CS 245Study formal reasoning and the limits of computation in the enriched version of CS 245.
Waterloo 2026–27 course calendar, CS 245EDesign, test and document medium-sized software using object-oriented techniques.
Waterloo 2026–27 course calendar, CS 246Develop and test object-oriented software in the enriched version of CS 246.
Waterloo 2026–27 course calendar, CS 246EStudy digital logic, processor design, pipelining, memory and multiprocessor systems.
Waterloo 2026–27 course calendar, CS 251Study processor and memory organization in the enriched version of CS 251.
Waterloo 2026–27 course calendar, CS 251EDesign and analyse algorithms using divide and conquer, greedy choices, dynamic programming and graph search.
Waterloo 2026–27 course calendar, CS 341Study how operating systems handle processes, threads, memory, storage, devices and security.
Waterloo 2026–27 course calendar, CS 350The first communication course normally comes from List 1. Both lists use half-unit courses.
Practise one-to-one communication through listening, verbal expression and nonverbal cues in personal and professional settings.
Waterloo 2026–27 course calendar, COMMST 100Plan and deliver speeches while developing voice, organization, listening and feedback skills.
Waterloo 2026–27 course calendar, COMMST 223Practise presentations, group discussion and English pronunciation for academic and professional settings.
Waterloo 2026–27 course calendar, EMLS 101Develop clearer English writing through grammar, editing and timed writing exercises.
Waterloo 2026–27 course calendar, EMLS 102Practise English academic essay writing, grammar and paragraph structure.
Waterloo 2026–27 course calendar, EMLS 129Practise academic argument, style and clear presentation through frequent writing exercises.
Waterloo 2026–27 course calendar, ENGL 109Practise English academic essays with attention to grammar, organization and development of ideas.
Waterloo 2026–27 course calendar, ENGL 129Where a second communication course can be chosen, List 2 includes the courses below or another List 1 course. Check the degree rules for plan-specific exceptions.
Design and conduct interviews, then use recorded practice to improve delivery and listening.
Waterloo 2026–27 course calendar, COMMST 225Apply leadership theory in workshops and practise communicating as a leader.
Waterloo 2026–27 course calendar, COMMST 227Examine how political and commercial communicators shape public messages.
Waterloo 2026–27 course calendar, COMMST 228Practise English speech sounds and pronunciation patterns.
Waterloo 2026–27 course calendar, EMLS 103Develop English academic reading, listening and note-taking strategies.
Waterloo 2026–27 course calendar, EMLS 104Study North American academic conventions for interpreting, organizing and acknowledging information.
Waterloo 2026–27 course calendar, EMLS 110Analyse and create persuasive messages, from advertisements to political or scientific communication.
Waterloo 2026–27 course calendar, ENGL 101BRead and discuss English-language literature from several regions, including South Asia, the Caribbean and southern Africa.
Waterloo 2026–27 course calendar, ENGL 108BExamine how digital communication shapes identities, relationships and communities online.
Waterloo 2026–27 course calendar, ENGL 108DDevelop written and spoken communication for academic and workplace tasks in mathematics and computing.
Waterloo 2026–27 course calendar, ENGL 119Read science fiction across subgenres and trace how the genre has developed.
Waterloo 2026–27 course calendar, ENGL 208BAdapt academic research and argument to different disciplines, audiences and purposes.
Waterloo 2026–27 course calendar, ENGL 209Write and design technical communication such as documentation, specifications or white papers.
Waterloo 2026–27 course calendar, ENGL 210EPractise workplace writing through reports, correspondence and other organizational communication.
Waterloo 2026–27 course calendar, ENGL 210FExplain statistics and actuarial science to an audience, and practise giving and using feedback.
Waterloo 2026–27 course calendar, ENGL 378BCS
Choose one course in each of the combinatorics, probability and statistics pairs. Applied Cryptography, Honours Thesis and Computational Inference are three options for the final upper-level requirement.
Study graph colourings, matchings and planarity alongside generating series and recurrences.
Waterloo 2026–27 course calendar, MATH 239Study graph theory and combinatorial analysis in the advanced version of MATH 239.
Waterloo 2026–27 course calendar, MATH 249Model random events with conditional probability, Bayes’ theorem and common probability distributions.
Waterloo 2026–27 course calendar, STAT 230Study probability models and distributions in the enriched version of STAT 230.
Waterloo 2026–27 course calendar, STAT 240Evaluate how data were collected and what conclusions a statistical study can support.
Waterloo 2026–27 course calendar, STAT 231Study the design and interpretation of empirical investigations in the enriched version of STAT 231.
Waterloo 2026–27 course calendar, STAT 241Learn how encryption, authentication, signatures and key exchange secure messaging and internet applications.
Waterloo 2026–27 course calendar, CO 487Investigate a focused topic through original analysis or experimentation and present the results in a thesis.
Waterloo 2026–27 course calendar, CS 499TUse simulation and optimization for statistical inference, including bootstrap and Monte Carlo methods.
Waterloo 2026–27 course calendar, STAT 440BMath
Choose one option per subject group. BMath additionally follows the shared BMath List A and Mathematics course requirements.
Approximate continuous models with discrete methods. Topics include interpolation, numerical integration, Fourier transforms and linear systems.
Waterloo 2026–27 course calendar, AMATH 242Use numerical methods to approximate equations and differential models, and assess computational error and stability.
Waterloo 2026–27 course calendar, CS 370Study how numerical methods solve continuous problems through interpolation, integration, Fourier transforms and linear systems.
Waterloo 2026–27 course calendar, CS 371Use automata, formal languages and Turing machines to study what computers can and cannot solve.
Waterloo 2026–27 course calendar, CS 360Study automata and computability at an accelerated pace, with additional work on time and space complexity.
Waterloo 2026–27 course calendar, CS 365Extend calculus to several variables, including derivatives, optimization and multiple integrals.
Waterloo 2026–27 course calendar, MATH 237Develop multivariable calculus from the topology of real spaces, including differentiation and integration.
Waterloo 2026–27 course calendar, MATH 247Study graph colourings, matchings and planarity alongside generating series and recurrences.
Waterloo 2026–27 course calendar, MATH 239Study graph theory and combinatorial analysis in the advanced version of MATH 239.
Waterloo 2026–27 course calendar, MATH 249BCS
BMath
Computer Science offers the BCS and BMath honours degrees. Both are offered in regular and co-op formats.
Waterloo publishes these as Computer Science career or co-op examples. Co-op roles represent past or sample jobs. Job availability depends on the employer and term.
| Program or faculty | Ontario | Other Canadian | International | Books and supplies |
|---|---|---|---|---|
| Accounting and Financial Management, Sustainability and Financial Management | $9,000 | $10,000 | $58,000 | $1,500 |
| Architecture | $14,000 | $15,000 | $75,000 | $8,100 |
| Business Administration (Laurier) and Computer Science (Waterloo) Double Degree | $17,000 | $20,000 | $75,000 | $1,500 |
| Business Administration (Laurier) and Mathematics (Waterloo) Double Degree | $15,000 | $15,000 | $64,000 | $1,500 |
| Computer Science | $16,000 | $18,000 | $73,000 | $1,500 |
| Computing and Financial Management | $11,000 | $12,000 | $64,000 | $1,500 |
| Faculty of Arts | $9,000 | $10,000 | $58,000 | $1,500 |
| Faculty of Engineering, Software Engineering | $19,000 | $21,000 | $75,000 | $1,500 |
| Faculty of Environment | $9,000 | $10,000 | $51,000 | $1,500 |
| Faculty of Health | $9,000 | $10,000 | $54,000 | $1,500 |
| Faculty of Science | $9,000 | $10,000 | $54,000 | $1,500 |
| Geography and Aviation | $9,000 | $10,000 | $51,000 | $1,500 |
| Science and Aviation | $9,000 | $10,000 | $54,000 | $1,500 |
| Global Business and Digital Arts | $14,000 | $16,000 | $56,000 | $1,500 |
| Mathematics (includes 16 majors), Mathematics/ Business Administration, Mathematics/Chartered Professional Accountancy | $9,000 | $10,000 | $62,000 | $1,500 |
| Mathematics/Financial Analysis and Risk Management | $12,000 | $14,000 | $63,000 | $1,500 |
2026–27 · Two terms · CAD
Ontario example · Choose your fee category
For the co-op stream, add $1,672 for two first-year study terms.
Last updated