I am a Makerere University Lecturer in Networks and Software Engineering with a Ph.D. in Computer Science, an M.Sc. in Computer Science, a B.Sc. (Mathematics), and a Post Graduate Diploma in Computer. I’ve instructed students in math, computer science, statistics, software engineering, and data communications. Some of the activities in which I have engaged during my time at the institution include conducting research projects, supervising graduate students, and collaborating with colleagues on academic publications.

I have also supervised graduate students in their research on topics such as machine learning, cloud computing, networks, IoT and software development. In terms of academic publications, Additionally, I have organized workshops and seminars on topics such as cybersecurity, building campus networks, data visualization techniques, and software development methodologies.

In addition to my academic pursuits, I have also collaborated with industry and government organizations to develop digital technologies for teaching, learning, and research. I have worked closely with companies in the telecommunications sector to design and implement network infrastructure solutions, as well as with government agencies to develop ICT policies. These collaborations have allowed me to bridge the gap between academia and industry, and to contribute to real-world solutions for the challenges faced in the field.

Course ID & Name Topics discussed or Tools used
Advanced Programming Advanced programming concepts using C++, JAVA and Python
Statistical Inference This course presents the fundamentals of inference in a practical approach for getting things done. The course focuses on statistical modelling, data-oriented strategies and explicit use of designs and randomization in analyses.
Modelling and Simulation This course introduces modelling methods and simulation tools. It provides a basic guideline towards different methodologies that can be applied to solve any kind of problem.
Internet Programming Focus is on building Webapps. Tools discussed and used during this course include HTML, CSS, JavaScript, PHP, Ajax, XML, ASP.Net, etc
Software Metrics This course is a step by step description of the software metrics. It includes introduction to foundations of measurement theory, models of software engineering measurement, software products metrics, software process metrics and measuring management.  
Network Programming The course focuses on how to create programs that communicate over the internet.
Data Communication & Computer Networks   Topics discussed include layered network architecture, Link Layer protocols, high-speed packet switching, queueing theory, Local Area Networks, and Wide Area Networking issues, Wireless and GSM Networking, including routing and flow control.
Advanced Network Security   We discuss and simulate various aspects of network security:  Bot and Botnets, DoS attacks, DNS security, Email spam, IP prefix hijacking, Network Intrusion Detection and prevention, On-line Authentication, Phishing attacks, Security inside Cloud, Spyware/Malware, TCP misbehaviors, Web security, and VoIP security
Network Forensics covers the basic concepts of evidence handling, networking, and evidence acquisition, traffic analysis, network Devices and Servers, Network Tunneling, Malware Forensics
Network Performance Evaluation   We discuss how to select appropriate evaluation techniques, performance metrics and workloads for a system. How to conduct performance measurements correctly. Hot to use proper statistical techniques to compare several alternatives. Design measurement and simulation experiments to provide the most information with the least effort. Use of simple queuing models to analyze the performance of systems.
CCNP A practical course on Advanced Networking Concepts