- 2023, Fall term. Fundamentals of Computer Science and Programming (2 hours + 2 hrs lab) × 16 weeks. Westlake University. Undergraduate course. [2023 Lecture Notes: Lecture 1, Lecture 2, Lecture 3, Lecture 4, Lecture 5, Lecture 6, Lecture 8, Lecture 9, Lecture 10, Lecture 11, Lecture 12, Lecture 13, Lecture 14]
- 2021, 2022, 2023, 2024, 2025 Spring term. Natural Language Processing (2 hours × 8 weeks). Westlake University. Graduate course. [2025 Lecture Notes: Week 1, Week 2, Week 3, Week 4, Week 5, Week 6, Week 7, Week 8, Week 9, Week 10, Week 11, Week 12, Week 13, Week 14, Week 15 ]
- 2020, 2021. Spring term. Machine Learning (3 hours × 4 weeks). Westlake University. Graduate course.
- 2019, 2020, 2021. Autumn term. Academic English Writing (co-teaching, 2 hours × 3-4 weeks). Westlake University. Graduate course.
- 2019. Autumn term. Data Structure and Algorithm (co-teaching, 3 hours × 4 weeks). Westlake University. Graduate course.
- 2016, 15, 14. Jul. Invited summer lecture series: Statistical Natural Language Processing (Harbin Institute of Technology, China).
- 2016, 15. Spring and summer terms. Teaching the Capstone Projects course for final year undergraduate students (SUTD).
- 2016. Jul. Invited summer lecture series: Statistical Natural Language Processing (Zhengzhou University, China).
- 2015, 14, 13. Spring term. Teaching the sophomore course the Digital World (SUTD).[Lecture Notes]
- 2017, 16, 15, 14, 13. Fall term. Teaching (lead) the pillar course Computation Structures (ISTD/SUTD). 2015, 14. Jul. Invited summer lecture series: Statistical Natural Language Processing (Harbin Institute of Technology, China).
- 2013. Aug. Invited summer lecture series: Python and Computer Programming (Heilongjiang In- stitute of Technology, China).
- 2013, 12. Teaching the undergraduate summer lecture series on advanced Java programming (SUTD).
- 2011. Undergraduate supervisor for C/C++ (University of Cambridge).
- 2011. Practical demonstrator for Statistical Machine Translation (University of Cambridge).
- 2011, 10. Undergraduate thesis supervisor (University of Cambridge).
- 2010. Undergraduate supervisor for Natural Language Processing (University of Cambridge).
- 2008. Class tutor for Advanced Topics in Natural Language Processing (University of Oxford).
- 2007, 06. Teaching assistant for Introduction to Specification (University of Oxford).