Prerequisites: CS 100
Description: Provides an introduction to distributed systems, with a focus on web development techniques and the considerations to application scalability, security, reliability, and redundancy. Provides an in-depth study of technologies used for both back-end and front-end development, and how to design robust applications in the webs constantly evolving landscape.