Teaching

Spring 2023, Fall 2024
COM S 309 (Software Development Practices)
Iowa State University
  • Computer Science
  • Ames, Iowa, USA

TA for COM S 309, focusing on major software engineering topics and preparing students to lead medium-sized software projects. Emphasized teamwork, accountability, project management, and professional ethics through a semester-long group project.

Key topics/goals:

  • Software development lifecycle: requirements, design, implementation
  • Project management: process models, planning, scheduling, risk management
  • Software artifacts and documentation
  • Configuration management & source control
  • Testing, reviews, and quality assurance
  • Legal and ethical principles in computing
  • Information management, relational & object-oriented models
  • Networking basics: DNS, IP, HTTP, client/server APIs
August 2023
COM S 336 (Computer Graphics)
Iowa State University
  • Computer Science
  • Ames, Iowa, USA

TA for COM S 336, an introduction to computer graphics. Students learned the graphics pipeline, coordinate systems, transformation matrices, and how to create interactive 3D applications. The course emphasized practical skills in OpenGL/WebGL, shader programming, and modern rendering techniques.

Prepared quizzes on TopHat, conducted office hours, and provided student support via Piazza discussions. Conducted labs focused on teaching 3-D rendering, visualization techniques, and basic graphics programming.

Key topics/goals:

  • Graphics pipeline, vertex & fragment shaders
  • 3D transformations & matrices
  • Scene hierarchy & interactive graphics
  • Phong lighting model
  • Shader programming (lighting, textures, bump mapping)
  • Offscreen buffers & shadow mapping
  • Procedural noise & effects
  • Contemporary graphics techniques