Semester Course Description Role
Fall 2023 CS580U Introduction to C Programming Lecturer
Spring 2023 CS458 / CS558 Introduction to Computer Security Teaching Assistant
Fall 2022 CS580U Introduction to C Programming Lecturer
Spring 2022 CS458 / CS558 Introduction to Computer Security Lecturer
Fall 2017 CS220 Computer Systems, Architecture and C Programming Teaching Assistant
Spring 2017 CS480C / CS580C Software Security Teaching Assistant

Course Descriptions

  • CS 220: The architecture and programming of computer systems. Data representation and computer arithmetic. Processor and memory organization. Assembly and machine language programming. Instruction set architectures, encoding and addressing modes. I/O techniques. Interrupts. Advanced C programming language constructs and their implementation in assembly language. Introduction to system software (assemblers, linkers, loaders, compilers). Supervised laboratory work involves programming and debugging using machine language, assembly language and C.
  • CS 458 / CS 558: The course provides an introduction to the principles and practices of network, computer, and information security. Topics include authentication and cryptographic techniques, intrusion detection, access control, security policies, and program/policy analysis techniques.
  • CS 480C / CS 580C: offensive and defensive technologies in the area of software security. Particularly, students will learn about various vulnerabilities that lead to software compromise, attacks that exploit such vulnerabilities, and defenses that defend against such attacks. Topics covered include simple control-flow corruption attacks, slightly harder buffer overflow and return-to-libc attacks, and advanced ROP attacks. Students are expected to not only learn the concepts behind each attack, but also execute them in a controlled environment.
  • CS 580U: Review of programming concepts, programming environments, debugging tools, large program management and design, program complexity analysis and optimization, and data structures.