Course Presentation

5 min

Table of contents


1 — Welcome to the course

This course, Development and Deployment of Data Solutions (AOA-DEVOPS-101), takes you from an empty workstation to an automatically deployed, monitored, and reproducible application.

The objective is not just to learn isolated tools (Git, Docker, Jenkins, Kubernetes…), but to understand how they chain together to deliver software reliably and repeatably.

You don't need to be an expert. You need curiosity, a bit of rigor, and the willingness to try, break things, and try again. That's exactly the DevOps mindset.

↑ Back to top


2 — Learning objectives

By the end of the session, you will be able to:

#Target competency
1Version a project with Git and collaborate via GitHub
2Build a Java project with Maven
3Automate builds and tests with Jenkins and GitHub Actions
4Containerize an application with Docker
5Orchestrate containers with Kubernetes and Helm
6Provision infrastructure with Ansible and Terraform
7Monitor a solution in production (monitoring & observability)
8Integrate all these tools in a complete end-to-end pipeline

Each module adds a brick. At the end, you will have assembled a complete DevOps chain — that's the subject of the session project (module 15).

🔧 Mini-exercise — Among the 8 competencies in the table, identify the one concerning monitoring an application in production and name the corresponding module.

✅ See a solution

Competency #7: Monitor a solution in production (monitoring & observability). It is covered in module 13 (Monitoring & observability).

↑ Back to top


3 — The thread — from code to deployment

Throughout the course, we will follow the lifecycle of an application, from code writing to production operation.

Each module covers one or more steps of this cycle.

↑ Back to top


4 — Course rules and working environment
  • Duration: 15 weeks (1 session per week, 3-4 hours).
  • Hands-on labs: Each module includes mini-projects and practical work (TP).
  • Prerequisites: Basic command line (terminal), basic programming notions (loops, functions). No specific DevOps experience needed.
  • Development environment: Windows / macOS / Linux (all three work identically via Docker).
  • Tools to install: Only Docker Desktop (https://www.docker.com/products/docker-desktop/) and a text editor (VS Code recommended).

↑ Back to top


5 — Evaluation methods
  • Mid-session exam (module 16): Practical labs (Git, Jenkins, Kubernetes).
  • Final project (module 15-17): Design a complete CI/CD pipeline for an application of your choice (Wikipedia platform, SuperKuberneteX, or your own project).
  • End-of-module quizzes (optional, self-graded).

Passing: 70% on exams + project.

↑ Back to top


6 — Session plan — the 15 modules
ModuleTitleAccessTopics
00ResourcesFreeMini-projects, references
01Introduction to DevOps and Git BasicsFreeDevOps culture, Git local/remote
02Advanced Git and GitHubFreeBranching, merge/rebase, pull requests
03Java Projects and MavenFreeMaven, pom.xml, lifecycle
04Jenkins: Installation and ConfigurationSubscriptionJenkins setup, plugins, first job
05Jenkins: CI/CD PipelineSubscriptionJenkinsfile, declarative pipelines
06Docker, Nginx, and SwarmSubscriptionImages, Dockerfile, containers, Swarm
07Kubernetes: Basic ConceptsSubscriptionPods, Deployments, Services
08Kubernetes: Advanced ConceptsSubscriptionIngress, ConfigMaps, Secrets
09HelmSubscriptionCharts, values.yaml, templates
10CI/CD with GitHub ActionsSubscriptionWorkflows, build & push, deploy
11AnsibleSubscriptionInventories, playbooks, roles
12TerraformSubscriptionProviders, variables, state, modules
13Monitoring and ObservabilitySubscriptionPrometheus, Grafana, alerts
14Integration WorkshopSubscriptionAssemble a complete pipeline
15Choice of Project TopicSubscriptionSession project (architectures)

↑ Back to top


7 — Quiz — Understand the course framework

Q1: Which module covers Terraform?
A) Module 11
B) Module 12 ✅
C) Module 13
D) Module 14

Q2: What is the minimal tooling required to follow this course?
A) Java + Maven + Git
B) Docker Desktop + text editor ✅
C) Kubernetes installed locally
D) AWS account + Jenkins server

Q3: Can I use Windows?
A) No, this course requires Linux
B) Yes, via Docker Desktop ✅
C) Only macOS works
D) It's optional

↑ Back to top


8 — Practice — Prepare your workstation

Your checklist:

Expected output:

bash
$ docker --version
Docker version 24.0.5, build abc1234

$ docker compose version
Docker Compose version 2.15.0

If this works, you're ready for the next module!

↑ Back to top


9 — Summary
  • DevOps is a culture: collaboration, automation, feedback.
  • This course teaches the complete pipeline: Git → CI/CD → Containers → Orchestration → Monitoring.
  • All tools run via Docker, no installation mess.
  • 15 modules, hands-on labs, a final project.
  • Next: Install Docker, and let's go!

Course created by Dr. Haythem REHOUMA — Development and Deployment of Data Solutions