| Section | 1 |
|---|---|
| Instructor(s) | Almhana, Rafi (ralmhana) |
| Location | Crerar 298 |
| Meeting Times | Wednesday 2:30pm - 5:20pm |
| Fulfills | Elective Specialization - Software Engineering (SE-2) |
This course provides an in-depth introduction to DevOps principles, practices, and tools for modern software development and operations. Students will learn how to integrate development (Dev) and operations (Ops) to enhance software delivery, automation, and scalability. The course covers continuous integration (CI), continuous deployment (CD), infrastructure as code (IaC), monitoring, cloud-native applications, and security. By the end of this course, students will have hands-on experience with tools like Docker, Kubernetes, Terraform, Jenkins, GitHub Actions, Prometheus, and AWS/Azure/GCP.
Learning Objectives
By the end of this course, students will be able to:
Course Outline
Module 1: Introduction to DevOps & Culture
Module 2: Version Control & Git Workflows
Module 3: Continuous Integration & Continuous Deployment (CI/CD)
Module 4: Containerization & Orchestration
Module 5: Infrastructure as Code (IaC)
Module 6: Cloud Computing & DevOps
Module 7: Monitoring & Logging
Module 8: Security & Compliance in DevOps
Module 9: Site Reliability Engineering (SRE) & Incident Management
Grading & Assessment
|
Assignments |
40% |
|
Topic Presentation |
10% |
|
Final Project |
40% |
|
Participation & Engagement |
10% |
Tools & Technologies
Must have completed MPCS 51036, 51040, 51042, 51046, 51100, CAPP 30122, MACS 30122, or have a Core Waiver for Programming.
• Basic knowledge of Linux/Unix systems
• Familiarity with Git version control
• Knowledge of scripting languages (Python, Bash, etc.)
This course requires competency in Unix and Linux. If you attended the MPCS Unix Bootcamp you covered the required material. If you did not, please review the UChicago CS Student Resource Guide here: https://uchicago-cs.github.io/student-resource-guide/.
This class is scheduled at a time that conflicts with these other classes: