Teaching

CS 3114/5040: Data and Algorithm Analysis

Instructor of Record, Virginia Tech Computer Science, 2025

Advanced data structures and analysis of data structure and algorithm performance. Sorting, searching, hashing and advanced tree structures and algorithms. File system organization and access methods. Course projects require advanced problem-solving, design, and implementation skills.

CS 3114: Data and Algorithm Analysis

Head Graduate Teaching Assistant, Virginia Tech Computer Science, 2025

Advanced data structures and analysis of data structure and algorithm performance. Sorting, searching, hashing and advanced tree structures and algorithms. File system organization and access methods. Course projects require advanced problem-solving, design, and implementation skills.

CS 5040: Intermediate Data and Algorithm Analysis

Instructor of Record, Virginia Tech Computer Science, 2024

Advanced data structures and analysis of data structure and algorithm performance. Sorting, searching, hashing and advanced tree structures and algorithms. File system organization and access methods. Course projects require advanced problem-solving, design, and implementation skills.

CS 3114/5040: Data and Algorithm Analysis

Instructor of Record, Virginia Tech Computer Science, 2024

Advanced data structures and analysis of data structure and algorithm performance. Sorting, searching, hashing and advanced tree structures and algorithms. File system organization and access methods. Course projects require advanced problem-solving, design, and implementation skills.

CS 4104: Data and Algorithm Analysis

Instructor of Record, Virginia Tech Computer Science, 2024

Data structures and algorithms from an analytical perspective. Theoretical analysis of algorithm efficiency. Comparing algorithms with respect to space and run-time requirements. Analytical methods for describing theoretical and practical bounds on performance. Constraints affecting problem solvability.

CS 3704: Intermediate Software Engineering

Instructor of Record, Virginia Tech Computer Science, 2023

Explores the principles of software design in detail, with an emphasis on software engineering aspects. Includes exposure of software lifecycle activities including design, coding, testing, debugging, and maintenance, highlighting how design affects these activities. Peer reviews, designing for software reuse, CASE tools, and writing software to specifications are also covered.

CS 4104: Data and Algorithm Analysis

Graduate Teaching Assistant, Virginia Tech Computer Science, 2022

Data structures and algorithms from an analytical perspective. Theoretical analysis of algorithm efficiency. Comparing algorithms with respect to space and run-time requirements. Analytical methods for describing theoretical and practical bounds on performance. Constraints affecting problem solvability.