Spring 2021
CS 326: Advanced Algorithms
This is an advanced course in computer science, studying different ways of processing data using various structures and algorithms. This course covers algorithm analysis and formal proof techniques as well as advanced topics such as dynamic programming, network flow, and probabilistic algorithms..
Course Website (Canvas)
CS 562: Advanced Computer Systems
This course covers advanced topics as well as seminal recent research papers across topics in distributed computer systems, with a focus on managing big data. Topics may include communication paradigms, process management, naming, synchronization, consistency and replication, fault tolerance, storage architectures, high-performance file systems, data provenance, and next-generation storage devices and architectures, including those at Google, Yahoo, and Amazon. Throughout the course, we will discuss the tradeoffs made between performance, reliability, scalability, robustness, and security.
Course Website