Teaching
I teach and develop courses in Python programming and data science, data structures and algorithms, and bioinformatics. Many of these courses are designed for students outside traditional computer science majors, with an emphasis on computational thinking, problem solving, and the practical application of computing across disciplines.
Since 2018, I have had the privilege of teaching 6,375 students in these computer science courses for non-majors.
Courses
- ECS32A Intro to Programming
- ECS32B Data Structures
- ECS124 Algorithms in Bioinformatics
- ECS197T Tutoring in Computer Science
ECS32A Learning Assistant Program
In ECS 32A, Introduction to Programming, a team of undergraduate Learning Assistants (LAs, also known as tutors) help make this large course more supportive, collaborative, and welcoming to students outside computer science. Successful former ECS 32A students are invited to apply to the Learning Assistant Program and return as near-peer educators receiving course credit as ECS197T. In this role, they help new students build confidence and problem-solving skills while gaining valuable experience in teaching, leadership, and mentorship. Learning Assistants support Stay Late and Code (SLAC) sessions.

ECS124 Algorithms in Bioinformatics
