CS 584: 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.
CS 171: Intermediate Programming in Java.
This course is a continuation of CS170. Emphasis is on the use and implementation of data structures, fundamental algorithms with introductory algorithm analysis, and object oriented design and programming with Java.
Course Website (Piazza)