Teaching

At the University of Montana, I teach a range of courses covering fundamental and advanced topics in computer science and software engineering. My teaching philosophy emphasizes hands-on learning, industry-relevant skills, and cultivating critical thinking in software development.

I integrate current research trends and real-world software engineering practices into my courses, preparing students for careers in technology while also encouraging those interested in research to explore deeper questions in software quality, testing, and requirements engineering.

Courses

CSCI 150

Introduction to Computer Science

undergraduate

Foundational course introducing core concepts of computer science, computational thinking, and programming fundamentals.

Semesters Offered:

Fall 2023 Spring 2024 Fall 2024 Spring 2025 Fall 2025 Spring 2026 Fall 2026

CSCI 491/591

Advanced Software Engineering

graduate

Advanced topics in software engineering including requirements engineering, software architecture, testing strategies, and agile methodologies.

Semesters Offered:

Spring 2024 Spring 2025 Spring 2026

CSCI 323

Software Science

undergraduate

Exploration of software engineering principles, software development lifecycle, version control, and collaborative development practices.

Semesters Offered:

Fall 2024 Fall 2025 Fall 2026

Teaching Philosophy

Industry-Relevant Skills: I emphasize practical skills that students will use in their careers, including version control with Git, continuous integration/continuous deployment (CI/CD), automated testing, and agile development methodologies.

Active Learning: Through project-based assignments and collaborative work, students engage directly with software engineering challenges, learning not just what to do but why and how to adapt techniques to different contexts.

Research Integration: I bring insights from current research into the classroom, exposing students to cutting-edge developments in AI-assisted software engineering, automated testing, and quality assurance.

Inclusive Excellence: I strive to create an inclusive learning environment where all students feel supported in their journey, providing resources and mentorship to help them succeed regardless of their background.