πŸš€ DevOps in 180 Days β€” A Day-by-Day Learning Plan

Aadarsh Damara
4 min readJan 4, 2025

--

Are you looking to break into the world of DevOps but don’t know where to start? I’ve crafted a comprehensive 180-day DevOps learning roadmap to guide you from beginner to advanced levels. This plan covers everything from Linux basics to cloud platforms and Kubernetes, ensuring you gain the skills necessary to thrive as a DevOps or Platform Engineer.

Whether you’re a student, an IT professional looking to switch careers, or someone wanting to sharpen their skills, this plan is structured to provide daily progress with hands-on exercises and project ideas.

🎯 Why DevOps?

DevOps is one of the most in-demand skills in tech, blending development and operations for seamless CI/CD and infrastructure management. If you love automation, troubleshooting, and scaling, DevOps is the path to go!

πŸ“… How the Plan Works:

  • Daily Breakdown: Each day focuses on a specific topic.
  • Hands-on Practice: You’ll implement real-world projects to solidify your knowledge.
  • Certifications: The plan aligns with certifications like Terraform Associate, CKA, and AWS DevOps Engineer.

πŸ’‘ What You’ll Learn:

  • Linux, Networking, and Automation
  • Docker & Kubernetes
  • Terraform & Ansible for IaC
  • CI/CD Pipelines with Jenkins, GitLab CI, and GitHub Actions
  • Monitoring & Logging with Prometheus and ELK Stack
  • AWS, Secrets Management, and Cloud Security

πŸ”₯ Day-by-Day Breakdown:

The detailed breakdown of each day’s activities can be found below.
This plan will cover everything from basic scripting to cloud deployments:

Days 1–45: Strengthen Core Skills (Linux, Networking, Scripting, Git, Python)

Day 1–10:

  • Linux Basics: Shell commands, file management, users, and permissions.
  • Practice: Set up a Linux VM (Ubuntu/CentOS).

Day 11–15:

  • Linux Networking: TCP/IP, DNS, IP Tables, and basic networking tools (ping, netstat, traceroute).
  • Practice: Configure a basic web server (Nginx/Apache).

Day 16–25:

  • Scripting with Bash: Loops, conditions, and functions.
  • Practice: Automate basic Linux tasks with Bash scripts.

Day 26–35:

  • Python Basics: Variables, loops, functions, and file handling.
  • Practice: Write Python scripts to automate simple tasks.

Day 36–40:

  • Python Libraries and advanced python i.e. classes, modules.
  • Practice: Build a simple Python automation project using libraries.

Day 41–45:

  • Git: Basic commands (clone, commit, push, pull, merge). Branching and merging strategies.
  • Practice: Contribute to a GitHub repository.

Days 46–75: Containerization with Docker

Day 46–50:

  • Docker Fundamentals: Images, containers, Dockerfile, volumes.
  • Practice: Build a Docker image for a Python/Node.js app.

Day 51–55:

  • Docker Networking: Bridge networks, host mode, container linking.
  • Practice: Set up multiple containers communicating over a network.

Day 56–60:

  • Docker Compose: Define multi-container applications.
  • Practice: Deploy a simple web app + database with Docker Compose.

Day 61–65:

  • Docker Volumes & Secrets: Manage data and sensitive information.
  • Practice: Use volumes to persist database data.

Day 66–70:

  • Docker Swarm (Optional): Cluster management and orchestration.
  • Practice: Deploy a basic Docker Swarm cluster.

Day 71–75:

  • Debugging and Best Practices: Docker logs, resource limits, and Docker security.
  • Practice: Optimize existing Docker containers.

Days 76–105: Kubernetes

Day 76–80:

  • Kubernetes Basics: Pods, Deployments, Services.
  • Practice: Deploy a simple Nginx pod.

Day 81–85:

  • Kubernetes Networking: ClusterIP, NodePort, Ingress.
  • Practice: Expose services externally.

Day 86–90:

  • Kubernetes Storage: Persistent Volumes and PVCs.
  • Practice: Deploy a pod with persistent storage.

Day 91–95:

  • Helm Charts: Package management for Kubernetes.
  • Practice: Deploy an app using Helm.

Day 96–100:

  • Kubernetes Troubleshooting: Logs, describe, and kubectl commands.
  • Practice: Debug failing pods and deployments.

Day 101–105:

  • Kubernetes Security: RBAC, secrets, and namespaces.
  • Practice: Implement role-based access control.

Days 106–135: Infrastructure as Code (Terraform & Ansible)

Day 106–110:

  • Terraform Basics: Providers, resources, and variables.
  • Practice: Deploy an AWS EC2 instance using Terraform.

Day 111–115:

  • Terraform Modules: Reusable configurations.
  • Practice: Create modules for S3, VPC, and EC2.

Day 116–120:

  • Ansible Basics: Playbooks, inventories, ad-hoc commands.
  • Practice: Automate Nginx deployment using Ansible.

Day 121–125:

  • Ansible Roles: Structuring playbooks for reusability.
  • Practice: Create roles for web server deployment.

Day 126–130:

  • Terraform & Ansible Integration.
  • Practice: Deploy infrastructure with Terraform and configure it with Ansible.

Day 131–135:

  • IaC Best Practices.
  • Practice: Implement a production-ready IaC workflow.

Days 136–165: CI/CD Pipelines

Day 136–140:

  • Jenkins Basics: Installation, pipelines, and jobs.
  • Practice: Create a basic CI pipeline.

Day 141–145:

  • GitLab CI/CD: Pipelines, stages, and jobs.
  • Practice: Automate deployments with GitLab.

Day 146–150:

  • GitHub Actions: Workflow automation.
  • Practice: Create a GitHub Action to deploy Docker containers.

Day 151–155:

  • Blue-Green Deployments: Deployment strategies.
  • Practice: Implement blue-green deployment with Jenkins.

Day 156–160:

  • Canary Deployments: Gradual rollouts.
  • Practice: Implement canary deployment using GitLab.

Day 161–165:

  • Load Balancers: Nginx, HAProxy.
  • Practice: Deploy Nginx as a load balancer.

Days 166–195: Monitoring, Logging, and Cloud Focus

Day 166–170:

  • Prometheus & Grafana: Metrics collection and visualization.
  • Practice: Monitor a Kubernetes cluster.

Day 171–175:

  • ELK Stack (Elasticsearch, Logstash, Kibana): Centralized logging.
  • Practice: Deploy ELK stack for log aggregation.

Day 176–180:

  • AWS Basics: EC2, S3, IAM, and VPC.
  • Practice: Launch EC2 instances and configure security groups.

Day 181–185:

  • AWS DevOps Tools: CodePipeline, CodeDeploy.
  • Practice: Implement CI/CD with AWS tools.

Day 186–190:

  • HashiCorp Vault: Secrets management.
  • Practice: Store sensitive data securely.

Day 191–195:

  • Security Auditing: CIS benchmarks, compliance.
  • Practice: Conduct security checks on AWS infrastructure.

✍️ Follow My Progress:

I’ll be tracking my progress on this journey and sharing insights, struggles, and lessons learned along the way. I invite you to follow along and join me on this DevOps adventure. Let’s learn and grow together!

πŸ‘‰ Follow me on Medium for updates and project showcases!

If you’re ready to embark on this transformative journey, bookmark this post and let’s dive in! πŸš€

--

--

Aadarsh Damara
Aadarsh Damara

Written by Aadarsh Damara

AWS, GCP, & Terraform Certified | DevOps | Linux, Bash, Python Enthusiast | Service Operations Proficient

No responses yet