(a) In India: Indian Institute of Technology, Indore (w.e.f. Aug 2009):
- Automata Theory and Logic (CS202) (Second year course for CSE students: January 2013-April 2013, January 2012-April 2012, Jan. 2011-Apr. 2011).
- Selected Topics in Advanced Algorithms (CS701) (Ph.D. course for CSE students: July 2011-Nov. 2011, Jan. 2012-Apr. 2012, July 2012-Nov 2012, Jan. 2013-Apr. 2013).
- Discrete Mathematical Structures (CS201) (Second year course for CSE students: May 2011-July 2011, July 2011-Nov 2011, July 2012-Nov 2012).
- Abstractions and Paradigms for Programming (CS102): in-depth course exposing various programming paradigms and abstractions for first year second semester Computer Science and Engineering (CSE) students (Jan. 2010-Apr. 2010).
- Computer Programming and Utilization (CS101): introductory Computer Science Course (using C++) for all undergraduate students during their first semester (May 2010-July 2010, Aug. 2009-Nov. 2009).
(b) in Singapore: Nanyang Technological Univeersity, for the duration of 2002-2009 ( in School of Computer Engineering (SCE) ) :
Senior Level (Third/Fourth Year Bachelor of Engineering level) courses:
- Principles of Programming Languages (Lectures, Tutorials, Labs; Course Coordinatorship: Course indexes: CSC301/SC433/CPE425)
- Compiler Techniques (Lectures, Tutorials, Labs; Course Coordinatorship: Course indexes: CSC404/CPE408/SC405)
- Formal Languages, Automata, and Computability (Lectures, Tutorials, Labs; Course Coordinatorship: Course indexes: CSC412/CPE417/SC446)
- Database Systems (Lectures, Tutorials, Labs; Course Coordinatorship: Course indexes: SC304/CSC206/CPE303)
Junior Level (First/Second Year Bachelor of Engineering level) courses:
- Discrete Mathematics and Algorithms (Tutorials Course indexes: SC202/CPE203)
- Discrete Mathematics (Lectures + Tutorials; Course Coordinatorship: Course indexes: SC109/CSC106)
(b) in India: Devi Ahilya University, Indore, during in 1988-2001:
M.Sc. (Computer Science: Ministry of Defense sponsored graduate program) Level (1988-2001):
- Discrete Structures,
- Theory of Computation,
- Compiler Design,
- Design of Algorithms, and,
- Artificial Intelligence.
Master of Technology (M.Tech.) (Computer Science) Level (1993-2001): Two specialized courses in the area of algorithms, namely,
- Parallel algorithms, and,
- Optimization algorithms.