This is an undergraduate course taught at EPFL by Prof. George Candea . It covers the basics of modern software development, focusing on techniques and practices used to build computer software that meets high standards of quality, reliability, security, and maintainability.

Current course materials are on Github. Prior versions (up to 2017) are in the Archive.