Skip to main content

Curriculum

This curriculum is a copy of the CS degree requirement from my alma mater, University of Waterloo. I have been following this curriculum and learning the corresponding courses on Coursera and Youtube.

  • CS 240 Data Structures and Data Management
  • CS 241 Foundations of Sequential Programs
  • CS 246 Object-Oriented Software Development
  • CS 251 Computer Organization and Design
  • CS 341 Algorithms
  • CS 350 Operating Systems

One additional CS course chosen from CS 340-CS 398, CS 440-CS 489.

  • CS 343 Concurrent and Parallel Programming
  • CS 348 Introduction to Database Management

Two additional CS courses chosen from CS 440-CS 489.

  • CS 446 Software Design and Architectures
  • CS 447 Software Testing, Quality Assurance and Maintenance
  • CS 467 Introduction to Quantum Information Processing
  • CS 480 Introduction to Machine Learning