At Middlebury College
- CSCI0701: Senior Seminar (Fall 2026)
- CSCI0201: Data Structures (Fall 2025, Fall 2026)
- CSCI0457: Natural Language Processing (Spring 2025, Spring 2024)
- CSCI0145: Introduction to Computing (Spring 2025, Fall 2023)
- CSCI0312: Software Development (Fall 2024)
At the University of Michigan
- EECS183: Elementary Programming Concepts (Spring 2022)
- EECS198: Discover CS (Fall 2019, Fall 2020)
Taught as a special topics course, the current number is EECS110
Other Teaching
- Natural Language Processing and Computational Social Science (Summer 2025)
North American Summer School for Logic, Language and Information (NASSLLI); One week summer school course, with Venkat Govindarajan. - Natural Language Processing (Summer 2022)
Carleton College Summer Liberal Arts Institute; Three week summer program for high school students. One week course repeated three times with different cohorts.