Teaching Philosophy
My teaching philosophy is grounded in the belief that computer science/engineering and cybersecurity education must be hands-on,
immersive, and deeply connected to real systems. I design learning experiences where theory directly informs practice through live
demonstrations, collaborative labs, scenario-driven exercises, and open-ended projects. Whether students are configuring secure IoT
architectures, analyzing network and SCADA traffic, or developing software for cyber-physical systems, I encourage them to think
critically, experiment confidently, and understand not just what a system does, but why it behaves that way.
I integrate my research in wireless communications, cyber-physical systems, security engineering, and emerging
technologies directly into the classroom. Many of my courses incorporate custom labs, practical toolchains, and
realistic adversarial models that give students exposure to real devices, industrial protocols, and complex operational environments.
My goal is to prepare learners who are not only technically strong, but also capable of designing secure, resilient, and ethically
responsible systems in a rapidly evolving digital landscape.
Selected Recent Courses
Cybersecurity and Network Defense
Computer and Information Security
Introduction to core security principles, access control, secure system configuration, and defense strategies.
Advanced Network Security
In-depth exploration of network threats, intrusion detection, secure protocols, and hands-on offensive/defensive techniques.
Research Topics in Cybersecurity
Seminar-style course covering contemporary problems in cybersecurity, including emerging threats, technologies, and research methods.
Networks, IoT, and Cyber-Physical Systems
Computer Networks
Principles of network architecture, protocols, routing, and performance, supported by applied exercises in real networking environments.
IoT Security
Security challenges and defenses for IoT platforms and embedded systems, including device hardening and end-to-end protection.
Programming for IoT and Network-Centric Applications
Software development for connected devices, sensor data acquisition, and network-driven applications.
Secure Systems, Architecture, and Operating Environments
Secure Modern Operating Systems
Processes, scheduling, memory management, file systems, and system-level security concepts.
Computer Organization & Architecture
Digital logic, processor organization, memory hierarchy, instruction sets, and low-level system behavior.