Created by Magical Gnomes!


...begin by assuming a perfect sphere...

The primary reason that I enrolled in the graduate program here at Purdue University is my love for teaching. I owe a great debt of gratitude to Dr. Mark Johnson for hiring me as an undergraduate TA for ECE 364 many years ago.

CS 30700 - Software Engineering I (3 credit hours)

An introduction to the methods and tools of software engineering; software life cycle; specification and design of software, software testing, cost and effort estimation; laboratory exercises with design, testing, and other tools.

Spring 2017: Instructor (166 students) - Syllabus

ECE 469 - Operating Systems Engineering (4 credit hours)

The design and construction of operating systems for both individual computers and distributed (networked) systems. Basic concepts and methods for managing processor, main memory, block-structured storage, and network resources are covered. Detailed examples are taken from a number of operating systems, emphasizing the techniques used in networked versions of UNIX. These techniques are applied to design improvements of portions of a simplified, networked, UNIX-based operating system; the improvements are implemented and their performance is evaluated in laboratory experiments.

Spring 2008: Instructor (35 students) - Syllabus

ECE 264 - Advanced C Programming (2 credit hours)

Continuation of a first programming course. Topics include files, structures, pointers, and the proper use of dynamic data structures. A basic knowledge of the UNIX operating system and an introductory C programming course is expected; C programming knowledge should include basic syntax, control structures, and file I/O, as well as experience in declaring and using functions.

Fall 2005: Instructor (92 students) * - Syllabus

ECE 364 - Software Engineering Tools Laboratory (1 credit hour)

To acquaint the students with a variety of current software engineering tools, scripting languages, and application programming languages. Students are expected to use their previous programming experience to design and test software programs using the techniques learned in this course.

Fall 2007: Instructor (38 students) - Syllabus
Spring 2007: Instructor (54 students)
Fall 2006: Instructor (30 students)
Spring 2006: Instructor (55 students) *

Spring 2005: Graduate Teaching Assistant (TA)
Fall 2004: Graduate Teaching Assistant (TA)

Spring 2004: Undergraduate Teaching Assistant (UTA)
Fall 2003: Undergraduate Teaching Assistant (UTA)
Spring 2003: Undergraduate Teaching Assistant (UTA)

Fall 2002: Undergraduate Laboratory Assistant (ULA)

* During the 2005-2006 academic year I was the recipient of the Charles C. Chappelle Fellowship