Teaching
I love teaching! I have been a part of the teaching staff for various classes in various capacities over the years. This list does not include experiences like MIT Splash or tutoring.
Recommendation letter
Are you an undergrad or recent alum hoping to request a recommendation letter from me? Fill out this Google form. If you’re a graduate student, please email me instead.
If our interaction is limited to a class (e.g. DATA 110, PIC 16A/B), please note that due to the nature of these classes, my letter will be a formulaic one:
- I know this student from this class in this semester, and this is the grade they got.
- These are the topics covered in this class.
- This is the final project the student did.
- This is a technical challenge the student faced during the project, and here’s how they overcame it.
- Concluding remarks. If you did something exceptional like show dramatic improvement over the semester, I’ll mention it here.
If you’re okay with this, please fill out the Google form and I’m happy to write a letter (given sufficient time). If you’re looking for a stronger, more personal letter, I recommend doing an independent study with a mentor, helping with the mentor’s research project, or taking smaller, higher level classes.
Instructor of record
UNC DATA 110 Introduction to Data Science
- Developed and taught in Fall 2024, Spring 2025 and Fall 2025. Website
UNC DATA 890 Selected Topics in Machine Learning
- Taught in Spring 2024. We discussed many topics in modern ML including generative models, active learning, manifold learning, domain adaptation and graph-based learning.
UCLA PIC 16B Python with Applications II
UCLA PIC 16A Python with Applications I
- Taught in Winter 2022 and Fall 2022. (syllabus and schedule)
- A student wrote nice things about me on the UCLA subreddit page!
Teaching assistant
CMU ECE: 18202 Mathematical Foundations of Electrical Engineering
- Taught in Spring 2020 and Spring 2019. (syllabus)
- Graduate TA. Prepared materials and led recitations twice a week.
- 2020 ECE Outstanding Teaching Assistant Award.
- One of my crowning achievements was when I joked about CMU turning into an online school and my student posted it on a CMU meme group.
MIT EECS: 6.00 Introduction to Computer Science and Engineering
- Taught in Fall 2016.
- Graduate TA. Prepared materials and led lecture review recitations once a week.
- 6.3/7.0 overall rating and some very kind student comments.
- This is a combination of two half-semester classes, 6.0001 Introduction to Computer Science Programming in Python (syllabus at OCW), and 6.0002 Introduction to Computational Thinking and Data Science (syllabus at OCW).
MIT EECS: 6.042 Mathematics for Computer Science
- Taught in Fall 2015. (syllabus)
- Undergraduate TA. Prepared materials and guided students as needed in class.
- This was a “flipped classroom”, i.e. students watched short videos and read notes at home, and in class worked on problems in small groups.
Others
MIT EECS: 6.03 Introduction to EECS via Medical Technology
- Taught in Spring 2015.
- Lab Assistant. Gave checkoffs and helped students during lab.
MIT EECS: 6.149 Introduction to Programming Using Python
- Taught in IAP (Januaray) 2015. (syllabus)
- Lab Assistant. Gave checkoffs and held office hours.
MIT EECS: 6.006 Introduction to Algorithms
- Taught in Spring 2014. (syllabus)
- Grader. Graded homework.
MIT China Educational Technology Initiative
- Taught in Summer 2013. (program website)
- Teaching intern. Taught math, biology, Python and English at universities in China and Taiwan in teams of three.
- I also served as CETI exec the following years.
