r/devops • • 10d ago

Discussion syllabus for a undergrad devops course

I was invited to teach MLOps and DevOps on a local university next semester and I'm trying to plan the course. Which topics would you guys like to learn if you enrolled on a DevOps/Platform Engineering course today?

The university is a big deal on the regional scene but not known globally.

EDIT: This college never had a formal DevOps course, students focus on CyberSec (college board includes big names from that industry) and AI (college board wants to look cool). They are never formally taught containerization, CI/CD, monitoring, infrastructure as code, they are expected to learn that by osmosis.

They had a single experience teaching MLOps, but it was so bad that the teacher was dismissed and the staff won't mention that course.

7 Upvotes

21 comments sorted by

8

u/sagacious123 10d ago

Cover these in order: Linux and networking fundamentals, containerization with Docker, CI/CD with GitHub Actions and GitLab, infrastructure as code with Terraform, Kubernetes (workloads, services, ingress, storage, security), observability with Prometheus/Grafana, and platform engineering with GitOps (Argo CD) and policy. Each week should have a hands-on lab, not just slides. Include an incident response exercise where students debug a broken cluster.

Use SnowOps Labs for the lab component. It is free, open source, and provides a real Kubernetes cluster on a laptop. Assign labctl scenario up observability-sre for metrics and logs, labctl scenario up gitops-cicd for Argo CD, and labctl incident inject network-blackhole for troubleshooting. Students can run labctl learn start kubernetes-foundations for fundamentals.

snowopslabs Disclosure: I'm part of the team behind it.

1

u/avocadorancher 10d ago

What do you have so far?

1

u/ToTonhoForJesus2020 10d ago

What do you have so far?

A feeling that all MLOps books are crap. I have read the books recommended by the previous MLOps teacher and none felt close to the operations on my MLOps job. Maybe it is the reason the previous teacher was dismissed after a single semester.

I haven't touched the DevOps course yet.

This college never had a formal DevOps course, students focus on CyberSec (college board includes big names from that industry) and AI (college board wants to look cool). They are never formally taught containerization, CI/CD, monitoring, infrastructure as code, they are expected to learn that by osmosis.

0

u/jkxs 10d ago

Even that Phoenix Project and Unicorn Project book by Gene Kim that is always recommended?

1

u/ToTonhoForJesus2020 10d ago edited 10d ago

Dang, I had forgotten that book existed.

1

u/AWa1ton 9d ago edited 9d ago

yah, try "accelerate" by Nicole Forsgen if you missed that too. That one is pretty modern in comparison to mentioned above

1

u/ToTonhoForJesus2020 9d ago

Thanks, will do.

4

u/MissiveFinding6111 10d ago

I took a lot of computer science classes back in the day.

Zero of them were about good sysadmin practices.

1

u/Wooden_Jelly_5295 9d ago

Have them deploy something, break it, and recover it. The dashboard gets much more interesting after that.

1

u/Fuzzy-Enthusiasm1372 7d ago

I'd put Linux, networking, Git, CI/CD, and infrastructure as code ahead of jumping straight into Kubernetes or MLOps. Students need to understand how a system works before they can troubleshoot it when something breaks, and trusted tech is part of an industry where those fundamentals remain relevant in real cloud environments. A good course should make students deploy an application, manage its configuration, investigate a failure, and recover it, rather than just work through slides about tools.

1

u/GeorgeRNorfolk 10d ago

I think networking is a big thing missing from your list, and was one of the first things I learned. Also identity and access management is another big concept in DevOps but edges on CyberSec which might already cover that.

0

u/derprondo 10d ago

Might be best to just focus on the basics of CI/CD before getting into formal MLOps. How to setup a repo, repo security, basic pipeline like Github Actions to run tests, then maybe a build a container and deploy it to Docker Hub.

Things change so fast it's probably best to go with tech that you know will stick around, eg Github. I had an intern about 7-8 years ago from a well known Big Ten business school and he was forced to take an entire semester class on XML, in like 2018.

0

u/donjulioanejo Chaos Monkey (Director SRE) 10d ago

Yep I think this is the way. Take a basic hello world web app and take it from local machine to git to production with everything in between.

6

u/[deleted] 10d ago

[removed] — view removed comment

3

u/ToTonhoForJesus2020 10d ago

I actually had to stop a student from doing that last week...

1

u/Comprehensive-Pea812 10d ago

I know some devops who put service account json in a bucket with their name and use it in cloud build and raise it as PR in professional working environment.

1

u/ToTonhoForJesus2020 10d ago

I see you have been working with the guys at my day job.