Spring 2022: |
Formal Methods in Software Engineering |
(CSE 814, Michigan State, Graduate level) |
Fall 2021: |
Computer and Network Security |
(CSE 825, Michigan State, Graduate level) |
Spring 2021: |
Discrete Structures in Computer Science |
(CSE 260, Michigan State, Graduate level) |
Fall 2020: |
Computer and Network Security |
(CSE 825, Michigan State, Graduate level) |
Fall 2019: |
Principles of Information-flow Security |
(COM S 580, Iowa State, Graduate level) |
Fall 2019: |
Operating Systems |
(COM S 352, Iowa State, Undergraduate level) |
Spring 2019: |
Principles of Information-flow Security |
(COM S 641, Iowa State, Graduate level) |
Spring 2019: |
Operating Systems |
(COM S 352, Iowa State, Undergraduate level) |
Winter 2017: |
Parallel and Distributed Computing |
(SFTWRENG 3SH3, McMaster, Undergraduate level) |
Winter 2017: |
Operating Systems |
(SFTWRENG 3SH3, McMaster, Undergraduate level) |
Fall 2016: |
Logic and Discrete Math in Software Engineering |
(CAS 701, McMaster, Graduate level) |
Winter 2016: |
Operating Systems |
(SFTWRENG 3SH3, McMaster, Undergraduate level) |
Fall 2015: |
Logic and Discrete Math in Software Engineering |
(CAS 701, McMaster, Graduate level) |
Fall 2015: |
Principles of Programming |
(SfwrEng/CompSci 2S03, McMaster, Undergraduate level) |
Winter 2015: |
Distributed Algorithms |
(CAS 769, McMaster, Graduate level) |
Fall 2013: |
Computer-aided Verification |
(CS745/ECE725, Waterloo, Graduate level) |
Fall 2013: |
Logic and Computations |
(CS245, Waterloo, Undergraduate level) |
Fall 2012: |
Computer-aided Verification |
(CS745/ECE725, Waterloo, Graduate level) |
Fall 2012: |
Logic and Computations |
(CS245, Waterloo, Undergraduate level) |
Fall 2011: |
Operating Systems |
(CS350, Waterloo, Undergraduate level) |
Winter 2011: |
Computer-aided Verification |
(ECE725/CS745, Waterloo, Graduate level) |
Summer 2008: |
Operating Systems |
(CSE410, Michigan State, Undergraduate level) |