Software Design (CS 3)

Head of Online, TA, Caltech, 2022

Principles of software design using a low level language (C). Topics covered include: code reviews, testing and testability, code readability, API design, refactoring, and documentation. [Course Website]