The Week-by-Week Syllabus
This structured syllabus will take you through essential topics in a logical progression, ensuring a solid understanding of DevOps fundamentals.
Week 1: Introduction to DevOps Principles
What to learn: Key principles of DevOps (collaboration, automation, continuous feedback), cultural aspects, and workflow. Tools: Atlassian Jira for project management.
Why this comes before the next step: Understanding these principles sets the stage for effectively applying tools in later weeks.
Mini-project/Exercise: Create a DevOps culture improvement plan for a hypothetical team.
Week 2: Version Control with Git
What to learn: Advanced Git commands and workflows (rebasing, cherry-picking), branching strategies. Tools: GitHub for remote repositories.
Why this comes before the next step: Mastering Git is crucial for managing code effectively, which is foundational for CI/CD.
Mini-project/Exercise: Set up a collaborative Git workflow for a small team project.
Week 3: CI/CD Pipeline with Jenkins
What to learn: Building and configuring CI/CD pipelines, integrating testing frameworks. Tools: Jenkins, Maven or Gradle for project builds.
Why this comes before the next step: CI/CD is a core concept in DevOps; understanding it allows you to automate code deployment.
Mini-project/Exercise: Create a CI/CD pipeline for deploying a simple web application.
Week 4: Containerization with Docker
What to learn: Docker architecture, creating Dockerfiles, managing containers. Tools: Docker Desktop.
Why this comes before the next step: Knowledge of containers is essential for understanding orchestration in the cloud.
Mini-project/Exercise: Containerize the web application created in Week 3.
Week 5: Orchestration with Kubernetes
What to learn: Deploying and managing applications in Kubernetes, scaling, and load balancing. Tools: Minikube or Google Kubernetes Engine.
Why this comes before the next step: Kubernetes is the standard for managing containerized applications, and knowing it enhances your deployment strategies.
Mini-project/Exercise: Deploy the Dockerized application in a Kubernetes cluster.
Week 6: Infrastructure as Code with Terraform
What to learn: Defining infrastructure with Terraform, state management, and modules. Tools: Terraform CLI.
Why this comes before the next step: Automating infrastructure is critical for consistency and reliability in DevOps.
Mini-project/Exercise: Use Terraform to provision the infrastructure for your Kubernetes cluster.