Teaching

I currently serve as a Student Instructor and Teaching Assistant for the UNC Department of Computer Science. This page outlines my teaching experiences and acts as a repository for all of the teaching materials I have developed, including for courses at UNC, content on my YouTube channel, and elsewhere.

Instructor

I am fortunate to have had the opportunity to teach undergraduate students at UNC! The following are courses I have served or will serve as an instructor for. This section includes information about these courses including the syllabus, what they taught, programming languages and tools they utilized, and materials developed for students.

TermCourseNotes

Fall 2024

COMP 290: Essential Tools for Computer Science

Student Instructor

Bash
This brand-new class introduced students to essential computer science tools and technologies, such as the command line interface, git, Vim, Docker, and more. Students also learned how to methodologies to help them plan, develop, and present their own software projects.
I co-taught this course with Noah Smith, a fellow student instructor at UNC!

Teaching Assistant

Since the Spring semester of 2023, I have served as a Teaching Assistant for the UNC Computer Science department! This section includes information about courses I have served as a TA for, including programming languages / tools emphasized in the course. This section also includes some of my specific contributions to each course.

TermCourseContributions

Summer II 2024

COMP 520: Compilers

Undergraduate Teaching Assistant

Java

Upcoming!

Summer I 2024

COMP 210: Data Structures and Analysis

Undergraduate Teaching Assistant

Java
Upcoming!

Spring 2024

COMP 423: Foundations of Software Engineering

Lead Teaching Assistant

TypeScriptAngularPythonSQL

Designed curriculum content, created assignments and three quizzes, prepared supplementary materials.

Guest Lectures: Quiz 1 Review, Observables and HTTP, Tech Stack Walkthrough, Writing Design Docs, Quiz 3 and Backend Design Practice

Supplemental Materials: Introduction to Angular YouTube Series, Database System Design Practice Video, TypeScript for the Java Developer, Introduction to Higher Order Functions

Fall 2023

COMP 423: Foundations of Software Engineering

Lead Teaching Assistant

TypeScriptAngularPythonSQL

Designed curriculum content, created assignments, wrote assigned readings, prepared supplementary materials.

Guest Lectures: Fullstack Debugging Strategies, Angular Modules

Supplemental Materials: Crash Course on Angular Widgets, Angular Resolvers Reading, Middleware Error Handling, SQLAlchemy Tutorial, Tech Stack Diagram

Spring 2023

COMP 301: Foundations of Programming

Undergraduate Teaching Assistant

Java

Lead of answering online questions on Piazza, created practice materials, led midterm debrief sessions.

Supplemental Materials: Interfaces vs Abstract Classes, Practice Exams

Notes

For some of my courses at UNC, particulary math courses, I wrote detailed notes covering the content taught in these courses. Many of these notes have been written in LaTeX. Since I am no longer a student in these classes, I am posting these notes in this section so that they might benefit others!

SubjectDescription

Linear Algebra (MATH 347)

Vector and matrix algebra, solving linear equations, Gaussian elimination, vector spaces, orthogonality, determinants, eigenvectors and eigenvalues, decomposition.