Main navigation
- Programs
- Subjects
- Universities
- Destinations
- Advice
Computer Science explores software development, algorithmic thinking, coding, and computational boundaries. Through both theoretical foundations and practical implementation, you'll master techniques to precisely define problems for machine-based solutions. The curriculum covers large-scale software management while examining the capabilities, constraints, and architecture of computing systems. The Bachelor of Computer Science (BCS) provides comprehensive training in the field with diverse course options. Admission to the BCS means beginning this specialized program immediately.
At a globally recognized computer science institution, you'll build expertise across systems architecture, networking, algorithm design, and coding. Following your first year, you can specialize in Data Science. Our renowned co-op program - the most extensive in North America - offers two years of paid industry experience, or you may opt for accelerated degree completion. This qualification opens doors to prestigious careers, with alumni securing positions at major tech firms and academic institutions worldwide. Waterloo's faculty and graduates have launched over 800 startups, including industry giants like OpenText, Canada's premier software enterprise.
The Software Engineering Specialization is available for both BCS and Bachelor of Mathematics (Computer Science) programs. This joint offering from the David R. Cheriton School of Computer Science and Electrical and Computer Engineering Department doesn't confer professional engineering status upon completion.