Fall 2002:
- Software Runtime optimization Techniques (ECE1724) (M. Voss)
- Software Architecture and Design (CSC2103) (N. Gower)
- Introduction to Cryptography (ECE1528) (I. Blake)
Spring 2003:
- Optimizing Compilers (ECE540) (M. Voss)
- Emerging Computer Architectures (ECE1718) (G. Steffan)
- (auditing)Compilation Techniques for Parallel Processors (ECE1754) (T. Abdelrahman)
Spring 2005:
- Computer Graphics (CSC2504) (A. Hertzmann)
- Compilation Techniques for Parallel Processors (ECE1754) (T. Abdelrahman)
Fall 2005:
- Operating Systems (CSC2204) (S. Graham)
- Parallel Programming (ECE1747) (C. Amza)
- Computer Security (ECE1776) (D. Lie)
Courses I've been a Teaching Assistant (TA) for:
- (?)Fall 2002:ECE242
- (?)Spring 2003:
- (?)Fall 2003:ECE242
- Spring 2004: ECE106 Programming Fundamentals (course instructor: T. Abdelrahman)
- Fall 2004: nothing
- Spring 2005: ECE106 Programming Fundamentals (course instructor: T. Abdelrahman)
- Fall 2005: APS105 Computer Fundamentals (course instructor: B. Li)
- Spring 2006: ECE106 Programming Fundamentals (course instructor: T. Abdelrahman) (double TA)
- Fall 2006: APS 105 Computer Fundamentals (course instructor: W. J. Maclean)
- Spring 2007: ECE106 Programming Fundamentals (course coordinator: T. Abdelrahman)
- Spring 2007: ECE454 Computer Systems Programming (course instructor: C. Amza)
- Summer 2007: APS106 Fundamentals of Computer Programming (course instructor: B. Bradel)
- Fall 2007: APS 105 Computer Fundamentals (course instructor: W. J. Maclean)
- Fall 2007: ECE 344 Operating Systems (course instructor: Ashvin Goel)
- Fall 2007: ECE454 Computer Systems Programming (course instructor: C. Amza)
- Spring 2008: APS 101 Programming Fundamentals (course coordinator: Hojjat Ghaderi)
- Fall 2009: ECE 344 Operating Systems (course instructor: Baochun Li)