Spring 2023 Course Descriptions
CS 150-01 Debugging Cloud Computing
Cloud computing, which is the practice of renting software and hardware services from providers who run large-scale data centers, has become critical to modern society. We rely on software running within cloud data centers when shopping (e.g., at Amazon), when conducting financial transactions (e.g., at an online broker), when collaborating at work (e.g., using Google Docs), and even when playing games (e.g., Fortnite). Failures or performance problems within these data centers or the software running on them can have widespread effects and be devastating.
In this course, we will examine failures in cloud environments and discuss important research on tools that use systems knowledge, machine learning, and statistics to help engineers diagnose them. To provide students with necessary background, we will start with a brief introduction to cloud computing and the software systems that make cloud computing possible. The course will involve reading research papers, homework assignments, and coding-based projects. It is recommended for graduate students and advanced upper-level undergraduates.
Prerequisite: CS 15 and CS 40 or graduate standing required; CS 111 recommended.