Teaching

EECS 479: Introduction to Quantum Computing

Undergraduate Course, University of Michigan, 2025

I work as a graduate student instructor (GSI) in my advisor’s introduction to quantum computing course. This course covers topics such as single- and multi-qubit quantum system and circuit representations, phase kickback, quantum algorithms, error correction, and fault-tolerant quantum computation. As a GSI, I am responsible for:

  1. Leading lab lectures for a class of 40 students.
  2. Hosting weekly office hours to provide guidance on homeworks and projects, exam preparation, and general course topics.
  3. Preparing weekly course material along with another GSI and the faculty instructor.

CESE 4085: Modern Computer Architectures

Graduate Course, Delft University of Technology, 2024

Course lectures focused on developments in the field of computer architecture, spanning topics like instruction set architectures, pipelining, superscalar and VLIW architectures, branch prediction, speculation, mutliprocessing, and memory hierarchies. The lab component emphasized practice with design and tradeoff analysis, benchmarking, and performing a literature survey in the field of computer architecture. As a graduate teaching assistant, I was responsible for:

  1. Presenting course project materials.
  2. Assisting students with their assignments and projects during lab sessions.
  3. Evaluating and providing feedback on students project reports and end-of-quarter literature surveys.

CESE 4025: Real-Time Systems

Graduate Course, Delft University of Technology, 2023

I contributed to redesigning the lab component of the course, including developing new course project material and their associated evaluation rubrics. Within a team of graduate students, I helped implement the projects from scratch in C++, protoype initial printed circuit board (PCB) designs (including many hours of soldering 😀), and prepare final PCB design files to be sent to a manufacturer. In the projects, students were tasked with:

  1. Developing scheduling algorithms (RM, EDF, FP) within the Zephyr real-time operating system and implementing them on an STM microcontroller.
  2. Improving a buggy, high-latency implementation of a synthesizer consisting of a programmable STM microcontroller interfaced with several peripherals (switches, rotary encoders, etc.) on a custom PCB.

Mathematics Tutor

Tutoring, Cal Poly, SLO, 2019

During my undergraduate studies, I worked as mathematics tutor in the university’s tutoring program. In this role, I worked one-on-one with Cal Poly students as well as younger students in the wider San Luis Obispo community. Subjects I tutored in ranged from elementary and middle school arithmetic to trigonometry, multivariable calculus, and linear algebra. To best handle the wide variety of subject matter, I spent additional time outside of tutoring sessions preparing how best to deliver material for each student’s next session.