Get a degree that computes

A computer science student uses a laptop to learn about human-computer action.

The David R. Cheriton School of Computer Science is largest academic computer science research centre in Canada and one of the best globally, ranking 39th in the world (Times Higher Education World University Rankings 2024).

At one of the world’s best schools for computer science, you'll develop a broad understanding in areas such as systems and networks, algorithms, and programming. 

After first year, you can apply to a major in Data Science. You can also gain two years of paid work experience through our co-op program, the largest of its kind in North America, or fast track your degree by choosing the regular system of study.

Your degree is your ticket to career success. Our graduates go on to work in leading technology companies and at top universities around the world. Meanwhile, Waterloo professors and graduates have created more than 800 spin-off companies, including leaders like OpenText, Canada’s largest software company.

Program highlights

Social and academic support. Through Waterloo’s Computer Science Club, get access to high-powered software or get social with your fellow students.

Study your interests. With 70+ computer science courses, plus no end of options and electives, you can create a degree tailored to your specific interests.


  • Available as a regular or co-op program
  • Graduate with a Bachelor of Computer Science or a Bachelor of Mathematics in Computer Science
  • Offered by the Faculty of Mathematics

What will you learn?

First-year courses

You'll primarily take Mathematics and Computer Science courses to give you the foundations for your upper-year classes, along with a few electives. After first year, the majority of your required courses will be Computer Science.

Learn about courses you'll take for your Computer Science degree.

Customize your degree

You can add additional areas of expertise by including specializations such as artificial intelligence, human-computer interaction, or bioinformatics.

Once you're a student, advisors can help you explore which minors or specializations may fit into your plans.


Get tips from Waterloo students

Sign up for insider advice that can help you now and in the future.

Monthly topics include how to choose a program, what it's like to be a Waterloo student, the differences between high school and university, and more.

Questions? Ask a student!

Contact a Faculty of Mathematics student ambassador to learn about their experience in the program.

Ask them questions such as why they chose their program, what the classes are like, and how you can get involved on campus.


Co-op = relevant paid work experience

Waterloo's co-op program, the largest in North America, is an amazing way to explore potential careers, learn to interview for jobs, graduate with up to two years of valuable experience – and make money!

Sample co-op job titles

  • Full stack developer
  • Game programmer
  • Web developer
  • Technical systems analyst
  • Research assistant
  • Software developer

Co-op work-study sequence

Starting in second year, you'll normally alternate between school and work every four months, integrating your classroom learning with real-world experience. You can return to the same employer for a couple of work terms to gain greater knowledge and responsibility or work for different employers to get a broad range of experience.

Your first work term will be after first year (May to August 2025).

Year September to December (Fall) January to April (Winter) May to August (Spring)
First Study Study Co-op
Second Study Co-op Study
Third Co-op Study Co-op
Fourth Study Co-op Study
Fifth Co-op Study -

or halfway through second year (which can be January to April 2026).

Year September to December (Fall) January to April (Winter) May to August (Spring)
First Study Study Off
Second Study Co-op Study
Third Co-op Study Co-op
Fourth Study Co-op Study
Fifth Co-op Co-op Study

There are options where you can have your first work term in the spring term after first year and your second work term after second year, or in the fall term halfway through your second year. 

Learn more about co-op →


megaphone icon"I value being able to learn and grow alongside others who share your passion and understand your experience. It's hard work, but also so rewarding. I've grown so much both as a student and as a person in my time here at Waterloo."Stefanie, third-year Computer Science student
megaphone icon"Co-op was the reason I chose Waterloo. No other school was able to offer me six four-month internships. I've explored many different software roles, including systems engineering and test automation as well as full-stack software engineering."Stephanie, Computer Science student
megaphone icon"Being in co-op not only allows you to practise balancing time between job interviews, school, and a social life, but also helps you find your career goals and shapes you into a better leader in the workplace by taking the best from each co-op." Renee, fourth-year Computer Science student

Computer Science admission requirements

Ontario students: six Grade 12 U and/or M courses including

  • Advanced Functions
  • Calculus and Vectors
  • Any Grade 12 U English
  • One other 4U course

Recommended: Grade 11 U Introduction to Computer Science

Admission average: Individual selection from the low to mid-90s

Not an Ontario high school student? Search our admission requirements.

How to apply?

Apply directly to this program on your application. Once you've applied, you'll need to complete the Admission Information Form as part of the application process.

We strongly encourage you to participate in the Canadian Computing Competition, Canadian Senior Mathematics Contest (CSMC), and/or the Euclid Mathematics Contest to enhance your admissions status.

To be considered for entrance scholarships in the Faculty of Mathematics, you must write the CSMC or the Euclid. If you complete both contests, we'll use the results of the contest in which you performed best.

Connect with us

Questions about courses, programs, requirements, or careers?

Please contact our Faculty of Mathematics recruitment coordinator who can answer any questions you have.


Related programs