Teaching Statement:
My pedagogical approach integrates problem-based, active, and constructivist learning frameworks. I structure my curriculum by introducing foundational problems that require intuitive solutions, progressively scaling complexity as students build confidence. By blending informative content with interactive elements, I cultivate an engaging classroom environment that prioritises student participation. I frame my lectures as an interesting story to maintain student interest and improve retention. I utilise a multi-modal toolkit including digital presentations, whiteboarding, and interactive Python notebooks.
Furthermore, I am a proponent of open-source education, maintaining tutorials on GitHub and YouTube, as well as a dedicated wiki for self-directed study.
Recently, I collaborated across departments to develop an interdisciplinary AI introductory course that focuses on the technical capabilities, practical applications, and ethical implications of artificial intelligence.
During the 2010-2012 period, I maintained a full-time equivalent workload across three universities. By synchronising curricula for core CS courses (Programming, AI, Algorithms), I delivered 27+ contact hours per week while ensuring consistent assessment standards across all campuses.
List of taught courses:
- BSc: Computer, Introduction
- BSc: Programming I, II, III
- BSc: Algorithms & Data Structure
- BSc: AI, Introduction
- BSc: Computer Vision
- BSc: Machine Learning
- BSc: Data Mining
- MSc: Seminar: Security in Software Engineering
- MSc: Research Lab: AI & Computer Vision
- MSc: Research Lab: Data Privacy
- PhD: AI applications in Medical Informatics