Teaching

CSE 12: Basic Data Structures and Object-Oriented Design

Instructor, Dept. of Computer Science and Engineering, UC San Diego, 2024

This is the CS2 course for students working towards a degree in many computing-related programs at UCSD. In this course, ~50 students learned about basic data structures, sorting algorithms, and object-oriented design in Java. In this intensive five-week summer offering, every week as the instructor, I led two three-hour lectures, created exams, held office hours, and headed a team of one TA and two tutors. I sought student feedback periodically and adjust the course materials accordingly.

CSE 291: LLMs, Programming, and HCI

Teaching Assistant, Dept. of Computer Science and Engineering, UC San Diego, 2024

This is a NEW graduate-level research seminar on recent advances in LLMs, programming systems, and HCI. In this course, students discuss research papers and work on final projects on relevant topics. As the teaching assistant, I held weekly office hours for individual and group advising and mentoring and provided feedback on paper presentations, reading responses, and final projects. In addition, I co-led the development of course materials, infrastructure, and syllabus with the instructor.

CSE 193: Introduction to CS Research

Instructor, Dept. of Computer Science and Engineering, UC San Diego, 2023

This undergraduate-level elective course is mandatory for participants in the ERSP program, mainly second-year undergrauate students and first-year transfer students new to research. In this course, 53 students learned about various kinds of Computer Science research, literature review, experimental and analysis techniques, research ethics, and collaborations. As the instructor of record, I led 90-minute lectures twice a week, held weekly office hours for individual and group advising and mentoring, provided feedback on research proposals and presentations, and oversaw a teaching assistant who facilitated grading and weekly meeting with students.

CSE 8A: Intro to Programming in Python

Teaching Assistant, Dept. of Computer Science and Engineering, UC San Diego, 2022

This is the CS1 course for students new to programming. In this course, ~500 students learned about primitives, data types, arithmic, control flow, and data processing in Python. Every week as the teaching assistant, I led 60-minute discussion sections and 60-minute lab sessions, designed lab assignments, held office hours for conceptual questions and lab hours for programming assistance, graded assignments and exams, and attended staff meetings.

CSE 230: Graduate Programming Languages

Teaching Assistant, Dept. of Computer Science and Engineering, UC San Diego, 2021

This is a graduate-level course that exposes students to advanced programming language ideas. In this course, ~200 students learned about lambda calculus, types, parsing, language-programming, etc. in Haskell. Every week as the teaching assistant, I held office hours, graded assignments, and attended staff meetings. At the end of the quarter, I gave synchronous feedback on final project presentations.

CS 251: Principles of Programming Languages

Tutor, Dept. of Computer Science, Wellesley College, 2019

This was a core course for Wellesley College CS majors that exposed students to programming language concepts. In this course, ~40 students learned about lambda calculus, types, parsing, language-programming, etc. in Racket and Standard ML. Every week as the tutor, I held office hours, graded assignments, and attended staff meetings.

CSE 230: Data Structures in Java (Spring & Fall 2018)

Tutor, Dept. of Computer Science, Wellesley College, 2018

This is the CS2 course for students after the intro sequence. In this course, ~80 students learned about data structures and object-oriented programming in Java. Every week as the tutor, I assisted lab sessions, held office hours for group (sometimes individual) help, graded assignments, and attended staff meetings.