Teaching Cloud Infrastructure and Scalable Application Deployment in an Undergraduate Computer Science Program
Aditya Saligrama, Cody Ho, Benjamin Tripp, Michael Abbott, Christos, Kozyrakis

TL;DR
This paper presents the design and initial implementation of an undergraduate course on cloud infrastructure and scalable application deployment, emphasizing hands-on learning with modern tools like infrastructure-as-code.
Contribution
It introduces a novel undergraduate course focused on cloud engineering fundamentals and practical deployment skills, filling a gap in computer science education.
Findings
Students gained practical experience with cloud deployment tools.
The course effectively taught cloud engineering principles to undergraduates.
Reflections suggest areas for course improvement.
Abstract
Making successful use of cloud computing requires nuanced approaches to both system design and deployment methodology, involving reasoning about the elasticity, cost, and security models of cloud services. Building cloud-native applications without a firm understanding of the fundamentals of cloud engineering can leave students susceptible to cost and security pitfalls. Yet, cloud computing is not commonly taught at the undergraduate level. To address this gap, we designed an undergraduate-level course that frames cloud infrastructure deployment as a software engineering practice. Our course featured a number of hands-on assignments that gave students experience with modern, best-practice concepts and tools including infrastructure-as-code (IaC). We describe the design of the course, our experience teaching its initial offering, and provide our reflections on what worked well and…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsCloud Computing and Resource Management
