30-Day Schedule¶
Each session is 1–1.5 hours of focused work: ~20 min theory + ~50 min hands-on lab + take-home assignment.
Week 1 — Linux System Administration¶
| Day | Topic | Key Skills |
|---|---|---|
| Day 1 | DevOps Intro & Machine Setup | What is DevOps, install tools, set up environment |
| Day 2 | Filesystem, Files & Text | History, FHS, navigation, file manipulation, grep/sed/awk, pipes |
| Day 3 | Process & Disk Management | ps/top/kill, signals, df/du/lsblk, load average |
| Day 4 | Users, Groups & Permissions | Users/groups, chmod/chown, rwx, basic networking checks |
| Day 5 | The Shell | Shell types, ~/.bashrc config, env vars, exit codes, aliases, functions |
| Day 6 | Shell Scripting I — Fundamentals | Scripts, variables, quoting, input, arithmetic, command substitution, exit codes |
| Day 7 | Shell Scripting II — Logic, Loops & Reuse | set -euo pipefail, if/case, loops, while read, arguments, functions, debugging, cron |
See also: Beyond the Basics — a reference map of Linux topics, config files, and commands we don't cover in class.
Week 2 — Networking & Containers¶
Spine: Operation Go Live — everything builds toward a containerized app served behind Nginx, over HTTPS, on your own domain.
| Day | Topic | Key Skills |
|---|---|---|
| Day 1 | Networking I — Addressing & the Tools to See It | IPv4, classes, CIDR/subnets, private nets & NAT, ports, TCP/UDP; ip/ss/netstat/ping/traceroute/nc/tcpdump |
| Day 2 | Networking II — DNS & Mail | DNS hierarchy & resolution flow, dig, record types, /etc/hosts & resolv.conf, TTL; MX/SPF/DKIM/DMARC, real mail-server demo (GreenMail) |
| Day 3 | Networking III — SSH & Firewalls | SSH keys, ~/.ssh/config, scp/rsync, server hardening, ufw, VPNs & bastion hosts |
| Day 4 | Networking IV — Nginx, Reverse Proxy & TLS | Static assets, virtual hosts, self-signed HTTPS, log formatting, reverse proxy, load balancing |
| Day 5 | Containers I — Docker Basics | Images vs containers, Docker architecture, registries, lifecycle, volumes, container networking |
| Day 6 | Containers II — Building Images & Registries | Dockerfile, layers & build cache, CMD/ENTRYPOINT, multi-stage builds, tagging, push/pull |
| Day 7 | Containers III — Docker Compose, Volumes & Networks | Compose files, service DNS, named volumes, network isolation, healthchecks, scaling |
Week 3 — IaC & Cloud¶
| Day | Topic | Key Skills |
|---|---|---|
| Day 1 | Ansible I — Fundamentals & First Playbook | Why config management, agentless/push architecture, idempotency, inventory & groups, ad-hoc commands, plays/tasks/modules, become; Vagrant control + managed nodes |
| Day 2 | Ansible II — Variables, Facts, Templates & Roles | Variables & precedence, facts, Jinja2 templates, handlers, loops/when, roles, Ansible Galaxy |
| Day 3 | AWS I — Cloud Foundations & the Console | IaaS/PaaS/SaaS, major providers, AWS history & market share, regions/AZs, Management Console navigation, billing alarms |
| Day 4 | AWS II — Launch an EC2 Machine + IAM | IAM users/groups/roles/policies, EC2 (AMI, instance type, key pair, security group, VPC), CLI, instance pricing; Ansible → EC2 |
| Day 5 | AWS III — VPC, Route 53, ALB & TLS | Custom VPC/subnets/IGW/route tables, Route 53 hosted zone + domain, ALB + target groups, ACM/HTTPS; other AWS services |
| Day 6 | Terraform I — IaC, HCL & Core Workflow | What IaC is & tools, Terraform/OpenTofu, Terraform vs Ansible, HCL, architecture, variables/locals/resources/data/outputs, init/plan/apply/destroy |
| Day 7 | Terraform II — State, Backends & Modules | State file & drift, best practices for managing state, remote S3 backend with native locking (use_lockfile, no DynamoDB), Terraform modules, build a reusable VPC module |
Week 4 — CI/CD & Monitoring¶
Spine: Ship It & Watch It — take the three-tier app (web · API · database) all the way to a self-deploying, monitored production stack.
| Day | Topic | Key Skills |
|---|---|---|
| Day 1 | CI/CD Fundamentals & First Pipeline | CI vs delivery vs deployment, pipeline stages & gates, GitHub Actions anatomy (workflow/job/step/runner/action), triggers (push/pull_request/workflow_dispatch/schedule); first lint→test→build workflow |
| Day 2 | GitHub Actions II — Build, Push & Deploy | Env vars & config variables vs secrets, expressions & functions, step/job outputs, conditions (if:), connecting to AWS via OIDC & the AWS CLI; build an image, push to a registry, deploy |
| Day 3 | Terraform in CI/CD | Why IaC belongs in a pipeline, OIDC keyless AWS auth, fmt/validate/plan/apply as stages, plan-on-PR + apply-on-merge; small standalone example |
| Day 4 | Ansible in CI/CD | ansible-lint/--syntax-check/--check gates, SSH key + Vault password from secrets, apply on merge, idempotency as a safety net; small standalone example |
| Day 5 | Deploy a Full-Stack AWS Project | The capstone — a three-tier app (frontend + backend + Postgres) on production-shaped AWS (VPC, ALB/HTTPS, ECR, EC2), provisioned with Terraform, deployed with Ansible, driven by GitHub Actions; clone the demo-app and ship it end to end |
| Day 6 | Monitoring & Alerting | Observability vs monitoring, the three signals; Prometheus (architecture, metric types, PromQL), Loki (architecture, LogQL) + Alloy, Grafana dashboards + alert → Discord; two-host AWS lab (Terraform) — an app host emitting metrics/logs watched by an observability host |
| Day 7 | Security Best Practices | DevSecOps / shift-left; secrets, least-privilege IAM, tight security groups, image + IaC scanning (Trivy), pin actions to SHA, Dependabot; course wrap-up & what's next |
Pace yourself
Each day builds on the previous. If you fall behind, catch up the same day — don't carry debt into the next session.