Computer Science

Group collaboration on a computer

The David R. Cheriton School of Computer Science in the Faculty of Mathematics is home to computer science at UWaterloo. Computer science is a branch of mathematics and offers a broad understanding of areas including systems and networks, algorithms, and programming. 

In all of our computer science programs, you'll learn about software, algorithms, programming, computer organization and managing large-scale problems. There are 16 areas of research in computer science. You can choose courses from these research areas starting in your third or fourth year to focus your studies.

Research areas

  • Algorithms and complexity
  • Artificial intelligence
  • Bioinformatics
  • Computer algebra and symbolic computation
  • Computer graphics
  • Cryptography, security, and privacy
  • Data systems
  • Formal methods
  • Health informatics
  • Human computer interaction
  • Machine learning
  • Programming languages
  • Quantum computing
  • Scientific computation
  • Software engineering
  • Systems and networking

Our computer science programs are designed for to study all areas and aspects of computer science so that you can be prepared to work in any technology role or industry. Our graduates go on to work in leading technology companies and at top universities around the world. 


Apply directly to each of these programs for consideration*We offer direct entry at the time of admissions. 

Programs marked with a (^) are structured programs that allow you to pursue a professional designation after graduation. They have many required courses and offer few choices of electives. 

Explore our programs to learn more about their courses, co-op and career opportunities and student experiences. 

Looking for more mathematics programs?

Explore studies in our Honours Mathematics and Math and Business programs.  

Mathematics/Bridge to Academic Success in English (BASE)

If you meet all of our admission requirements, except the English language requirement, you may receive an alternative offer to the Bridge to Academic Success in English program, known as Math/BASE. You won't be able to apply to this program. You'll be automatically considered, if you're eligible.