Teaching software engineering through design, architecture, and real project work.
Course design and mentorship focused on software architecture, system design, and structured, feedback-driven development.
Respect-first classroom culture where all students are expected to engage thoughtfully and constructively.
Emphasis on curiosity, questioning, and developing independent thinking.
Clear expectations, honest feedback, and accountability in both individual and team work.
Courses Being Taught
Current teaching and work
Background and rationale to view Computer Science in a professional context. Examination of professional ethics, intellectual property, and privacy considerations important to Computer Scientists.
Advanced treatment of software development methods. Topics will be selected from requirements gathering, design methodologies, prototyping, software verification and validation.
Students will implement algorithms for numerical processing, statistical analysis and matrix operations.
Students learn advanced topics in software design, validation, verification, human interface design, computer security, and information management