How to Build a 90-Day DevOps Learning Plan That Actually Works
Most DevOps learning plans fail because they're too theoretical. Here's a practical 90-day plan focused on building real projects and getting hands-on practice from day one.
You want to learn DevOps in 90 days. You search for a roadmap, find a list of 50 tools, get overwhelmed, and quit after week 2.
Here's a plan that actually works — focused on building things, not just watching courses.
The Core Principle
Build something every week. Not just watch videos. Not just read docs. Build.
Every week ends with something you can show — a running cluster, a working pipeline, a deployed app. This keeps you motivated and builds portfolio projects simultaneously.
What You'll Have After 90 Days
- ✅ Docker: containers for 3 different app types
- ✅ Kubernetes: cluster with 5 deployed apps, autoscaling, monitoring
- ✅ CI/CD: GitHub Actions pipeline deploying to K8s
- ✅ IaC: EKS cluster provisioned with Terraform
- ✅ Monitoring: Prometheus + Grafana + AlertManager stack
- ✅ 2 cloud certifications (AWS Cloud Practitioner + CKA)
Month 1: Foundation (Linux + Docker + Git)
Week 1: Linux CLI Fundamentals
Learn:
- File system navigation, permissions, processes
- Text manipulation: grep, awk, sed, cut
- Shell scripting basics
Build: Write a bash script that monitors disk usage and sends an alert when > 80%
#!/bin/bash
THRESHOLD=80
USAGE=$(df -h / | awk 'NR==2{print $5}' | tr -d '%')
if [ $USAGE -gt $THRESHOLD ]; then
echo "Disk usage critical: ${USAGE}% on $(hostname)" | mail -s "Disk Alert" you@example.com
fiResource: Linux for DevOps on KodeKloud — free tier has bash scripting labs
Week 2: Docker Fundamentals
Learn: Dockerfile, images, containers, volumes, networking, Docker Compose
Build: Dockerize 3 apps:
- Node.js Express API
- Python Flask app with PostgreSQL (docker-compose)
- Static website served by Nginx
# Week 2 project: Node.js app
FROM node:20-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY . .
USER node
EXPOSE 3000
CMD ["node", "server.js"]Week 3: Git + GitHub
Learn: Branching strategies, PRs, merge vs rebase, GitFlow vs trunk-based
Build: Set up a GitHub repo for all your DevOps projects. Practice:
- Create feature branches
- Write meaningful commit messages
- Set up branch protection rules
Week 4: Cloud Basics (AWS)
Learn: EC2, S3, VPC basics, IAM
Build: Deploy your Dockerized app on an EC2 instance. Set up S3 bucket for static files.
Milestone: Get AWS Cloud Practitioner certified — 40 hours of study, $100, foundational.
Month 2: Core DevOps (Kubernetes + CI/CD + IaC)
Week 5: Kubernetes Fundamentals
Learn: Pods, Deployments, Services, ConfigMaps, Secrets, Namespaces
Build: Deploy your Docker app to Kubernetes locally (minikube or kind)
# Week 5: Your first Kubernetes app
kubectl create deployment my-app --image=your-dockerhub/my-app:v1
kubectl expose deployment my-app --port=80 --type=LoadBalancer
kubectl scale deployment my-app --replicas=3Week 6: Kubernetes Intermediate
Learn: Ingress, PersistentVolumes, RBAC, HPA, resource limits
Build: Full Kubernetes deployment with:
- Nginx Ingress Controller
- TLS via cert-manager
- HPA configured
- Resource limits on all pods
Week 7: GitHub Actions CI/CD
Learn: Workflow syntax, triggers, jobs, secrets, matrix builds
Build: Pipeline that:
- Builds Docker image on every PR
- Runs tests
- Pushes to Docker Hub on merge to main
- Deploys to Kubernetes automatically
name: Deploy
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build and push
run: |
docker build -t ${{ secrets.DOCKERHUB_USERNAME }}/myapp:${{ github.sha }} .
docker push ${{ secrets.DOCKERHUB_USERNAME }}/myapp:${{ github.sha }}
- name: Deploy to K8s
run: kubectl set image deployment/myapp app=myapp:${{ github.sha }}Week 8: Terraform
Learn: Providers, resources, variables, outputs, state, modules
Build: Terraform code that creates:
- VPC with public/private subnets
- EKS cluster
- S3 bucket + DynamoDB for state backend
Month 3: Advanced (Monitoring + Security + Real Projects)
Week 9: Monitoring Stack
Build: Prometheus + Grafana + AlertManager on Kubernetes
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm install kube-prometheus-stack prometheus-community/kube-prometheus-stack -n monitoring --create-namespaceCreate dashboards for your apps. Set up at least 3 alerts.
Week 10: ArgoCD + GitOps
Build: GitOps pipeline where:
- Git repo is source of truth
- ArgoCD syncs changes automatically
- Rollback = git revert
Week 11: Security Basics
Learn: K8s RBAC, Network Policies, Secrets management, Trivy scanning
Build: Add security scanning to your CI pipeline:
- name: Scan image
run: |
trivy image --exit-code 1 --severity CRITICAL myapp:latestWeek 12: Capstone Project
Build a complete DevOps platform:
- Terraform provisions EKS + RDS + S3
- GitHub Actions builds and tests
- ArgoCD deploys
- Prometheus monitors
- Alerts fire to Slack
This is your portfolio piece.
Daily Schedule (1.5 hours/day)
45 min: Hands-on lab (KodeKloud, Katacoda, or your own cluster)
30 min: Documentation reading or course video
15 min: Write notes / update GitHub README
Weekends: 3-hour project sessions to build weekly deliverable.
Tools You'll Need
| Tool | Cost | Used For |
|---|---|---|
| KodeKloud | Free-₹499/mo | Hands-on labs |
| Docker Desktop | Free | Local containers |
| minikube/kind | Free | Local Kubernetes |
| GitHub | Free | Code + Actions |
| AWS free tier | Free (limits) | Cloud practice |
| Lens IDE | Free | K8s UI |
The 90-day plan works because it's output-focused. By the end, you have a portfolio of real projects, hands-on skills, and two certifications. That's what gets you hired — not just "I completed 10 courses."
Start your hands-on DevOps journey at KodeKloud — the playground model means you practice on real infrastructure, not simulations.
Today I Fixed
Short real fixes from production — posted daily
Stay ahead of the curve
Get the latest DevOps, Kubernetes, AWS, and AI/ML guides delivered straight to your inbox. No spam — just practical engineering content.
Related Articles
DevOps Engineer Career Progression: Junior to Senior (2026 Roadmap)
Exact skills, timelines, and mindset shifts for moving from junior DevOps to senior — what you need to learn, what to build, and how long it realistically takes.
7 DevOps Resume Mistakes That Get You Rejected (And How to Fix Them)
These resume mistakes are why DevOps engineers with real skills don't get callbacks. Fix them and watch your interview rate improve.
How to Contribute to Open Source as a DevOps Engineer (2026 Guide)
Open source contributions are the fastest way to build credibility, get noticed by top companies, and level up your DevOps skills. Here's exactly how to start — from finding projects to getting your first PR merged.