Teaching Experience

Courses Taught

Undergraduate Level

Mobile Platforms - Android, iOS, Windows Mobile and HTML5

Operating Systems

Information Systems

Programming Languages


Discrete Mathematics

Senior Project Design

Integrated Products and Process Design

Research Methods

Graduate Level

Operating Systems

Distributed Database Systems

Formal Methods for Research

Mobile and Pervasive Computing

Wireless Sensor Networks

Internet of Things

Educational Software and Hardware Tools


Designed and implemented VDS, a virtual distributed system and its lab setup and assignments for use in teaching Distributed Operating System classes. It emphasizes several aspects of synchrony, coordination, and control in distributed systems. VDS has been used several times at UF in teaching COP 5615 (graduate OS) and COP 4600 (undergraduate OS).


Designed and implemented RAINBOW, a distributed database system and its lab setup and assignments for use in teaching Distributed Database Systems and Distributed Systems classes. RAINBOW was used at the University of Florida in teaching COP 6755: Distributed Database Systems and was published and demonstrated in the Very Large Data Bases Conference (VLDB 2000).

Atlas Based Toolkit

Jointly with my students, designed, developed and commercialized an educational toolkit for sensor-based computing education. The toolkit, which is based on the Atlas architecture, has been used in the lab to develop sensor-based systems and pervasive spaces by many universities worldwide. It has been used repeatedly in teaching CNT 5517 (Mobile and Pervasive Computing). The toolkit with Atlas node emulators is available for download as open source.


Jointly with my students, designed and implemented an ad hoc service discovery and delivery infrastructure called KONARK. KONARK has been used several times in CNT 5517 (Mobile Computing) and is available for download as open source.