Curriculum
What you will learn — lecture by lecture
13 practical modules covering the full classroom syllabus.
Lecture 01Version Control — Git, GitHub, GitLab
- Git installation and setup — global config, SSH keys
- Repository initialization (git init) and cloning (git clone)
- Staging, committing and pushing code
- Branching strategies — feature, release, hotfix branches
- Merge and conflict resolution
- Tagging and version control practices
- Remote repositories with GitHub and GitLab
- Pull requests and code reviews
- Best practices for source code management
Lecture 02Build Tools — Maven, Gradle, npm
- Maven installation and configuration — settings.xml
- Project structure and POM.xml — dependencies, plugins
- Dependency management in Maven
- Build lifecycle phases — validate, compile, test, package, install, deploy
- Gradle installation — Groovy/Kotlin DSL build scripts
- Packaging applications — JAR/WAR artifacts
- Plugin configuration and usage
- Build optimization techniques
- Integration with CI/CD pipelines
- Maven — Java, pom.xml — Enterprise Java, Spring Boot
- Gradle — Java/Kotlin, build.gradle — Android, multi-module projects
- npm — Node.js/JS, package.json — Frontend and Node.js apps
Lecture 03Web & Application Servers
- Nginx — installation, configuration, reverse proxy, load balancing
- Apache Tomcat — setup, WAR deployment, connector configuration
- SSL/TLS configuration — Let's Encrypt, certificate management
- Nginx and Tomcat integration — Nginx as reverse proxy to Tomcat
- Log management and monitoring — access logs, error logs
- Performance tuning — worker processes, connection limits
- Automation of deployments
Lecture 04CI/CD Tools — Jenkins, GitHub Actions, GitLab CI
- Jenkins installation and setup — standalone and Docker
- Jenkins architecture — master, agents, executors
- Freestyle and pipeline jobs
- Declarative pipeline syntax (Jenkinsfile)
- Integration with GitHub — webhooks and triggers
- CI/CD workflows using GitHub Actions — .github/workflows
- Pipeline stages — build, test, quality scan, deploy
- Multi-branch pipeline configuration
- Pipeline security and credentials management
- Stage 1 Source — GitHub/GitLab webhooks
- Stage 2 Build — Maven/Gradle compile and package
- Stage 3 Code Analysis — SonarQube quality/security scan
- Stage 4 Artifact Storage — JFrog/Nexus versioned artifacts
- Stage 5 Containerise — Docker build and push images
- Stage 6 Infra Setup — Terraform provision cloud
- Stage 7 Configuration — Ansible configure and deploy
- Stage 8 Orchestration — Kubernetes deploy containers
- Stage 9 Security Scan — Trivy / SAST / DAST
Lecture 05Artifact Repository — JFrog Artifactory, Nexus
- Artifact repository concepts — why store build artifacts
- Repository setup and configuration
- Artifact versioning strategies — SNAPSHOT vs RELEASE
- Uploading and downloading artifacts
- Integration with Maven, Gradle, Docker
- Repository types — hosted, proxy, group
- Cleanup and retention policies
- Secure artifact management
Lecture 06Project Management — Jira & Agile
- Agile fundamentals and principles — Agile Manifesto
- Scrum framework — Sprints, Daily Standups, Retrospectives
- Sprint planning and execution
- Task tracking using Jira — epics, stories, tasks, bugs
- Backlog grooming and prioritization
- User stories and acceptance criteria
- Burndown charts and velocity reporting
- Release planning and Agile best practices
Lecture 07Code Quality — SonarQube
- Static code analysis concepts
- SonarQube setup — Docker and standalone installation
- Quality gates and thresholds — fail pipeline if quality drops
- Detecting bugs, vulnerabilities and code smells
- Code coverage integration with JaCoCo
- CI/CD integration — fail Jenkins build on quality gate failure
- Report generation and dashboards
- Security scanning basics — OWASP, CVE detection
Lecture 08Configuration Management — Ansible (Covers RHCE)
- Introduction to configuration management
- Ansible installation and setup — agentless architecture
- Ansible architecture — control node and managed nodes
- Inventory file configuration — static and dynamic
- Ad-hoc commands — ansible all -m ping
- Playbooks creation and structure — YAML syntax
- Modules and tasks execution
- Variables and facts
- Handlers and conditionals
- Loops and error handling
- Roles and reusable components
- Templates using Jinja2
- Ansible Vault for secrets encryption
- Integration with CI/CD pipelines
Lecture 09Infrastructure as Code — Terraform
- Introduction to Infrastructure as Code (IaC)
- Terraform installation and setup
- Providers and resource blocks — AWS, Azure, GCP
- Terraform configuration syntax — HCL
- Variables and outputs
- Terraform state file management — local and remote backend (S3)
- terraform init — plan — apply — destroy
- Data sources and resource dependencies
- Modules and reusable code
- Provisioners and remote execution
- Workspaces and environment management
- Managing infrastructure on AWS end-to-end
- Terraform best practices
- Integration with CI/CD pipelines
- Key commands — init, plan, apply, destroy, validate, fmt, state list, output
Lecture 10Containerisation — Docker
- Introduction to containerisation vs virtualisation
- Docker installation — Linux, Mac, Windows
- Docker architecture — client, daemon, registry
- Docker images and containers — lifecycle
- Writing Dockerfile — FROM, RUN, COPY, CMD, EXPOSE, ENV
- Building and managing images — docker build, docker tag
- Container lifecycle — start, stop, rm, exec
- Docker networking — bridge, host, overlay
- Volumes and persistent storage
- Docker Compose — multi-container applications
- Image optimisation — multi-stage builds
- Docker Hub and private registries — ECR, JFrog
- Container security best practices
- Integration with CI/CD
- Key commands — build, run, ps, exec, logs, images, push, compose up/down
Lecture 11Container Orchestration — Kubernetes
- Introduction to container orchestration
- Kubernetes architecture — control plane, worker nodes, etcd
- Cluster setup — Minikube, kubeadm, EKS/AKS/GKE
- Pods and ReplicaSets
- Deployments and rollout strategies — RollingUpdate, Recreate
- Services and networking — ClusterIP, NodePort, LoadBalancer
- ConfigMaps and Secrets — externalise configuration
- Persistent Volumes and Storage — PV, PVC, StorageClass
- Ingress controllers — route external traffic to services
- Auto-scaling — HPA (Horizontal Pod Autoscaler)
- Namespaces and resource quotas
- Monitoring and logging in Kubernetes
- Helm package manager — install apps with one command
- Security and RBAC — Role-Based Access Control
- CI/CD integration with Kubernetes
- Key commands — kubectl get/apply/describe/logs/exec/scale/rollout, helm install
Lecture 12Monitoring & Logging — Prometheus, Grafana, Loki, ELK
- Monitoring concepts — metrics, logs, traces
- Metrics collection using Prometheus — pull-based model
- Dashboard creation using Grafana
- Alerting and notifications — AlertManager
- Application performance monitoring
- Infrastructure monitoring — node exporter, kube-state-metrics
- Introduction to Loki and centralised logging
- Loki architecture — Promtail → Loki → Grafana
- Installation and setup using Docker / Kubernetes
- Log collection using Promtail agents
- Label-based log indexing and LogQL queries
- Integration with Grafana dashboards
- ELK architecture — Elasticsearch, Logstash, Kibana
- Logstash configuration and pipelines
- Kibana visualisations and dashboards
- Beats — Filebeat (logs), Metricbeat (metrics)
- Log ingestion from multiple sources
- Tool map — Prometheus 9090, Grafana 3000, AlertManager 9093, Loki 3100, Promtail 9080, ES 9200, Logstash 5044, Kibana 5601
Lecture 13Interview Preparation
- Resume building — action verbs, quantifying achievements
- Naukri profile grooming and keyword optimisation
- LinkedIn optimisation — profile, connections, job alerts
- Technical rounds — real-time scenario and troubleshooting questions
- Mock interviews with feedback
- Hands-on problems — pipeline failures, pod crashes, live debugging
- Project explanation — how to present CI/CD and cloud projects
- HR round prep — communication, confidence, salary negotiation
- DevOps best practices — common interview Q&A