Fall 2026 TA positions

Fall 2026 CS course offerings

The purpose of this table is so that CS graduate students can quickly identify which courses may be the most suitable for them to TA for based on their previous TA experiences and research areas. For more detailed information about course content you can find each course on the undergraduate calendar or review previous course outlines on the university's outline repository

If a CS course is not listed here, it either does not require TA support in the upcoming term or is being managed by a different department (e.g. AMATH). 
Course code Course title Related courses Relevant research area Additional Notes
CS100 Introduction to Computing Through Applications   Artificial Intelligence and Machine Learning, Human-Computer Interaction
  • TAs assigned to CS100 will work on developing labs for upcoming offerings of AI 101 (Core Concepts in Artificial Intelligence).
CS105 Introduction to Computer Programming 1 CS106 Human-Computer Interaction
  • Ideal for new/incoming grad students.
  • Experienced grad students may be asked to hold Instructional Apprentice positions.
CS114 Principles of Computer Science CS116  
  • Ideal for new/incoming grad students.
  • Experienced grad students may be asked to hold Instructional Apprentice positions.
CS115 Introduction to Computer Science 1 CS135, CS145  
  • Ideal for new/incoming grad students.
  • Experienced grad students may be asked to hold Instructional Apprentice positions.
CS116 Introduction to Computer Science 2 CS114, CS115  
  • Ideal for new/incoming grad students.
  • Experienced grad students may be asked to hold Instructional Apprentice positions.
CS135 Designing Functional Programs CS115, CS145  
  • Ideal for new/incoming grad students.
  • Experienced grad students may be asked to hold Instructional Apprentice positions.
CS136 Elementary Algorithm Design and Data Abstraction CS136L, CS137, CS138, CS146, CS246  
  • Ideal for new/incoming grad students.
  • Experienced grad students may be asked to hold Instructional Apprentice positions.
CS136L Tools and Techniques for Software Development CS136    
CS137 Programming Principles CS136, CS138 Software Engineering  
CS145 Designing Functional Programs (Advanced Level) CS135, CS146    
CS234 Data Types and Structures CS240, CS240E  
  • Experienced grad students may be asked to hold Instructional Apprentice positions.
CS240 Data Structures and Data Management CS234, CS240E Algorithms & Complexity
  • Experienced grad students may be asked to hold Instructional Apprentice positions.
CS241 Foundations of Sequential Programs CS241E, CS444 Programming Languages
  • Experienced grad students may be asked to hold Instructional Apprentice positions.
CS241E Foundations of Sequential Programs (Enriched) CS241, CS444 Programming Languages  
CS245 Logic and Computation CS245E, SE212 Formal Methods
  • Experienced grad students may be asked to hold Instructional Apprentice positions.
CS245E Logic and Computation (Enriched) CS245, SE212 Formal Methods
  • Experienced grad students may be asked to hold Instructional Apprentice positions.
CS246 Object-Oriented Software Development CS246E, CS247, CS346, CS 445, SE 463 Software Engineering
  • Experienced grad students may be asked to hold Instructional Apprentice positions.
CS246E Object-Oriented Software Development (Enriched) CS246, CS247, CS346, CS445, SE463 Software Engineering
  • Experienced grad students may be asked to hold Instructional Apprentice positions.
CS251 Computer Organization and Design CS230, CS450 Systems and Networking, Electrical Engineering  
CS330 Management Information Systems CS490 Software Engineering  
CS335 Computational Methods in Business and Finance CS 370, CS371, CS475, AMATH242 Numerical Computation  
CS338 Computer Applications in Business: Databases CS348 Data Systems  
CS341 Algorithms CS231, CS466 Algorithms & Complexity
  • Experienced grad students may be asked to hold Instructional Apprentice positions.
CS343 Concurrent and Parallel Programming CS350 Systems and Networking
  • Experienced grad students may be asked to hold Instructional Apprentice positions.
CS346 Application Development CS246, CS246E, CS445, SE463, CS493, CS493 Software Engineering  
CS348 Introduction to Database Management CS338 Data Systems
  • Experienced grad students may be asked to hold Instructional Apprentice positions.
CS349 User Interfaces CS449 Human-Computer Interaction
  • Experienced grad students may be asked to hold Instructional Apprentice positions.
CS350 Operating Systems CS450 Systems and Networking
  • Experienced grad students may be asked to hold Instructional Apprentice positions.
CS360 Introduction to the Theory of Computing CS365 Algorithms & Complexity  
CS370 Numerical Computation CS335, CS371, AMATH242, CS476, CS487 Numerical Computation  
CS398 Intro to Graphics Programming CS488 Computer Graphics, Human-Computer Interaction  
CS430 Applications Software Engineering CS431, CS446 Software Engineering  
CS431 Data-Intensive Distributed Analytics CS430, CS451 Software Engineering  
CS445 Software Requirements Specification and Analysis CS346, CS493, CS494, SE 463 Software Engineering  
CS449 Human-Computer Interaction CS349 Human-Computer Interaction  
CS451 Data-Intensive Distributed Computing CS431 Data Systems  
CS453 Software and Systems Security CS459 Cryptography, Security, and Privacy  
CS454 Distributed Systems   Systems and Networking  
CS456 Computer Networks   Systems and Networking  
CS459 Privacy, Cryptography, Network and Data Security CS453 Cryptography, Security, and Privacy  
CS466 Algorithm Design and Analysis CS231, CS341 Algorithms & Complexity  
CS480 Introduction to Machine Learning CS485, CS486, CS489 (Intro to NLP) Artificial Intelligence and Machine Learning  
CS484 Computational Vision   Numerical Computation  
CS485 Statistical and Computational Foundations of Machine Learning   Artificial Intelligence and Machine Learning  
CS486 Introduction to Artificial Intelligence CS480, CS485, CS489 (Intro to NLP) Artificial Intelligence and Machine Learning  
CS489 Intro to Natural Language Processing CS480, CS485, CS486 Artificial Intelligence and Machine Learning  
CS493 Team Project 1 CS445, CS494, SE463 Software Engineering  
CS497 AI Transformation in Organizations CS492 Artificial Intelligence and Machine Learning  
CS768 Quantum Information Processing   Algorithms & Complexity  
SE212 Logic & Computation CS245, CS245E Software Engineering, Formal Methods  
SE463 Software Project Management, Requirements & Analysis CS346, CS445, CS493, CS494 Software Engineering