- University of Aberdeen
- JC1001 Python Programming Foundation (Course Lead)
- JC1503 Object-Oriented Programming (Course Lead)
- JC2001 Introduction to Software Engineering (Group project supervision)
- JC3510 Intelligent Software Implementation (Group project supervision)
- JC4002 Knowledge Representation
- JC4003 Natural Language Processing (Course Lead)
- JC4000 Undergraduate Thesis Supervision
- 2024: Supervise 8 Undergraduate Students
- University of Sheffield (TA)
- COM6115 Text Processing
- COM4513 Natural Language Processing
- University of Aberdeen (TA)
- CS5062 Machine Learning
- CS4025 Natural Language Processing
- CS551G Data Mining and Visualisation