Training Details

12 Weeks

2pm to 5pm (WAT) Mon, Wed & Fri =================== 8pm to 11pm (WAT) (Tues and Thur) =================== Weekends (Sat 2pm-5pm)

On Zoom

DevOps Engineering Training

Our DevOps training is beginner-friendly, practical, and project-based. It is designed to help participants gain mastery of different technologies and tools that are used to build and manage software lifecycle and infrastructure automation. It is tailored to help you gain real-world experience that can get you a job and grow your career.

Who should attend

  • Those who are switching careers to the tech industry.
  • Those who have programming skills but want to acquire skills on how to setup servers, manage cloud infrastructure, and automate processes using different tools to  get a promotion at work or higher-paying jobs
  • Those planning to travel abroad and seeking hands-on skills that can make them relevant.
  • Those in managerial positions who seek to have knowledge of how software lifecycle automation is done.

Technologies covered


Learning outcomes

Real-World Project

Build any of the following project contanerization of a fullstack software, creation of end to end CI/CD pipeline, deployment on Kubernetes, creature of infrasture using automated process


Learn how to create configuration files for automation, master python, linux commands and server environment.


Learn how to collaborate with other software developers on source code management. Set up repositories and branches. Manage roles and automate code update

Career Positioning

CV review, interview preparation, LinkedIn profile update, job alert within our alumni community and mentorship

Training Details

12 Weeks

2pm to 5pm (WAT) Mon, Wed & Fridays === 8pm to 11pm (WAT) Tue and Thursdays==== Weekends (Sat 2pm-5pm)

On Zoom

Course Curriculum

Introduction to DevOps

      Understanding  DevOps

  • What is DevOps?
  • DevOps Lifecycle
  • DevOps adoption for businesses

Introduction to cloud computing (AWS)


  • What is Cloud Computing?
  • Different types of cloud computing
  • Overview of AWS

    IAM (Identity access management)
  • Setting up IAM
    Users, groups and policies
  • Multi-factor Authentication
  • Access keys and CLI connection
  • AWS CLI Setup
  • IAM Best practice

EC2 (Elastic compute cloud)

  • AWS budget setup
  • Creating an EC2 instance
  • EC2 Instance Types
  • Security groups
  • Connecting through SSH
  • Connecting through EC2 instance connect
  • Introduction to Elastic block store (EBS)
  • AMI Overview
  • High Availability, Scalability, Elasticity
  • Elastic Load Balancing (ELB)
  • Auto Scaling Groups (ASG)
  • Introduction to AWS S3
  • CloudWatch Metrics
  • Introduction to Virtual Private Cloud (VPC)
  • Billing & Costing

    Key takeaway: You will have a high-level overview of what AWS Cloud with a hands-on demonstration


Python programming

Introduction to python

  • What is Python?
  • Installing Python
  • Setting up VSCode for Python
  • Python fundamentals
  • Python Syntax
  • Variables
  • Input and output
  • comments

Data types

  • Strings
  • String properties
  • Indexing and slicing
  • String methods
  • Numbers
  • Boolean

Python lists

  • Introduction to Lists
  • Sorting a List
  • Slicing a List:
  • Unpacking a List
  • Iterating over a List
  • Finding Index of an Element: index()


  • Indexing tuple elements
  • Unpacking Tuples
  • Type Conversion

Python dictionary

  • Introduction to dictionary
  • Nested dictionary
  • Dictionary methods
  • Indexing dictionary items
  • Updating dictionary items
  • Dictionary Comprehension

Python Set

  • Set Comprehension
  • Union of Sets
  • Intersection of Sets
  • Difference between Sets
  • Symmetric Difference of Sets
  • Subset
  • Superset
  • Disjoint Sets


  • Arithmetic Operators
  • Assignment operators
  • Comparison Operators
  • Membership
  • Control flow
  • if…elif
  • type Conversion


  • for Loop
  • while Loop
  • For in loop

Python Functions

  • Inbuilt function
  • User-defined function
  • Default Parameters
  • Keyword Arguments
  • Lambda Expressions
  • Function Docstrings
  • The *args Parameters
  • The **kwargs Parameters
  • Partial Functions
  • Transform List Elements: map()
  • Filtering List Elements: filter()
  • Reducing List Elements: reduce()
  • List Comprehensions

Exception handling

  • try…except
  • try…except…finally
  • try…except…else

Working with Files

  • Reading a Text File
  • Writing to a Text File
  • Creating a Text File


  • Benefits of using modules
  • Using the OS module

Key takeaway: Understand python programming and be able to translate concepts into pseudo-code and functional app


Vagrant for deployment

Getting started

  • Introduction
  • What is Vagrant?
  • Provider/Provisioner and the Vagrant File
  • Installing Vagrant
  • Installing VirtualBox

Boxes in Vagrant

  • Adding Boxes to Vagrant
  • Installing a Vagrant Box
  • Starting a Vagrant Box
  • SSH Into a Vagrant Box and Installing Software
  • Destroying a Vagrant Box


Networking on a Vagrant Box

  • Configuring a Private/Public Network and Forwarding Ports in Vagrant

Using shell script in Vagrant

  • Provisioning in Vagrant
    How to launch multi-machine VM in vagrant

Key takeaway:
How to start, stop, and destroy Vagrant
How to provision a server in a Vagrant box
How to enable IP In a Vagrant box

Linux and bash scripting

Introduction to Linux

  • Windows Vs Unix
  • How the Linux commands function
  • History Unix/Linux
  • Directory structure
  • Setting up a Linux server
  • General Linux commands
  • Working with files in Linux
  • Using the Help feature
  • User and user group
  • Sudo command
  • Installation software in Linux environment
  • Bundling and compressing files

Key takeaway: Understand the Linux environment, setup Linux server and navigate around with ease using the terminal

Bash scripting

  • Introduction to Bash Scripting
  • Writing your first script
  • Variable declaration
  • Input/Output
  • Comments in bash
  • Conditional Statements
  • Loops
  • Sending output from one script to another
  • Strings Processing
  • Numbers and Arithmetic operations
  • Arrays
  • Functions
  • Files and Directories

Key takeaway: Use the bash command to automate processes

Terraform for Infrastructure as code (IaC)

Getting started with terraform

  • Introduction to Infrastructure as code (IaC)
  • Installation Process of Terraform

Deploying Infrastructure with Terraform

  • Creating the first EC2 instance with Terraform
  • Important Security Pointer
  • Understanding Resources & Providers
  • Destroying Infrastructure with Terraform
  • Understanding Terraform State files
  • Understanding Desired & Current States
  • Terraform Provider Versioning

Read, generate, and modify configurations

  • Understanding Attributes and Output Values in Terraform
  • Terraform Variables
  • Approaches for Variable Assignment
  • Data Types for Variables
  • Fetching Data from Maps and Lists in Variable
  • Conditional Expressions
  • Local Values
  • Terraform Functions
  • Data Sources
  • Debugging in Terraform
  • Terraform Format
  • Dynamic Blocks
  • Saving Terraform Plan to File
  • Terraform Output
  • Terraform Settings
  • Comments in Terraform
  • Data Type – SET
  • for_each in Terraform

Terraform providers

  • Understanding Provisioners in Terraform
  • Types of Provisioners
  • Implementing remote-exec provisioners
  • Implementing local-exec provisioners

Terraform modules and workspace

  • Understanding DRY principle
  • Implementing the EC2 module with Terraform
  • Variables and Terraform Modules
  • Using Locals with Modules
  • Referencing Module Outputs
  • Terraform Registry


  • Handling Access & Secret Keys the Right Way in Providers
  • Terraform Provider UseCase –
  • Resources in Multiple Regions
  • Sensitive Parameter
  • Overview of HashiCorp Vault

Key takeaway:
Implement Terraform for an organization
Writing code to provision resources in the cloud

Source code management

Getting started

  • Introduction
  • Downloading and Installing git
  • Creating GitHub account

Git operation

  • Configuring git
  • Initializing git for a project
  • Adding files to to be committed
  • Committing files to the staging area
  • Creating a repository
  • Connecting to the remote repository
  • Pushing files to git

Account and repository management

  • Onboarding developers
  • How to enforce the approval mechanism
  • Merging pull request
  • How to approve a pull request

Software deployment from different locations

  • Creating branches
  • Updating and removing files from repositories
  • Effective collaboration with git
  • Removing unwanted files from local repositories
  • Creating and deleting branches from terminal
  • Switching between branches
  • How to revert changes in GIT
  • Clone, pull and fork code in the repository

Key takeaway: Understand git operations and how to use it to effectively manage software lifecycle and collaborate with other developers

Docker and containerization


  • Getting started with docker
  • Installation Methods for Docker
  • Creating Infrastructure for Docker Setup
  • Installing Docker in Linux
  • Installing Docker Desktop
  • Docker Image vs Docker Containers
  • Container Identification
  • Port Binding
  • Attached and Detached Modes
  • Removing Docker Containers
  • Docker CLI Commands
  • Docker container exec
  • Importance of IT flags
  • Default Container Commands
  • Overriding Default Container Commands
  • Removing Docker Images

Image creation, management and registry

  • Working with Docker Images
  • Overview of Dockerfile
  • EXPOSE Instruction in dockerfile
  • Tagging Docker Images
  • Managing Images with CLI
  • Overview of Docker Registries
  • Pushing Images to Central Repository


  • Overview of Docker Networking
  • Understanding Bridge Networks
  • Understanding Host Network
  • Implementing None Network
Key takeaway:
Strong Fundamentals of Docker
Docker Networking, Storage & Image Management

Kubernetes for container orchestration

Core concepts

  • Introduction to Kubernetes
  • Installation Options for Kubernetes
  • Using Managed Kubernetes Service
  • Overview of kubectl

Configuring Kubernetes in Minikube

  • Minikube Installation Commands
  • Configuring Kubernetes in Minikube
  • Understanding PODS
  • Understanding Kubernetes Objects

Overview of Kubernetes Cluster Architecture

  • K8S Components – ETCD
  • K8S Components – kube-apiserver
  • Introduction to API
  • Creating First POD Configuration in YAML
  • Working with Multi-Container Pods
  • K8S Components – Kube-scheduler
  • Understanding Commands and Arguments in Kubernetes
  • Exposing Ports for PODS

Workloads and scheduling

  • Introduction to Labels and Selectors
  • Implementing Labels and Selectors
  • Overview of ReplicaSets
  • Creating your first ReplicaSet
  • Introduction to Deployments
  • Creating your first deployment

Services and networking

  • Overview of Service
  • Creating First Service and Endpoint
  • Service Type: ClusterIP
  • Using Selectors for Service Endpoints
  • Service Type: NodePort
  • Service Type: Load Balancer
  • Generating Service Manifests via CLI
  • Overview of Ingress
  • Overview of Helm


  • Overview of Docker Volumes
  • Creating Volumes in Kubernetes
  • Document – Dynamic Provisioning
  • Security Contexts
  • Storage Volume Expansion


  • Troubleshooting Application Failure
  • Troubleshooting Control Plane Failure
  • Version Skew Support Policy
  • Facilitating OS Upgrades
  • Draining Worker Nodes
  • Taint Based Evictions

Key takeaway:
Strong Fundamentals of Kubernetes
Security Aspects of Kubernetes
Networking Aspects of Kubernetes
Troubleshooting & Cluster Maintenance

  • Introduction
  • What is Kubernetes?
  • Kubernetes Architechture
  • Kubernetes Components
    – Node & Pod
    – Service & Ingress
    – ConfigMap & Secret
    – Volumes
    – Deployment & StatefulSet
  • Installing kubbectl and minikube
    – What is minikube?
    – What is kubectl?
    – Install minikube and kubectl
    – create and start a minikube cluster in the local environment
  • Kubernetes CLI Commands with Example (kubectl)
    – Create a pod/deployment
    – Get status of different components
    – Change the pod/deployment configuration
    – Debugging pods
    – Delete pod/deployment
  • Kubernetes YAML Configuration
    – Different attributes of a Kubernetes config file
    – Creating config files
  • Kubernetes Namespace
    – What is a Namespace?
    – 4 Default Namespaces
    – Create a Namespace and resources
    – Why use Namespaces?
  • Ingress Service
  • Statefulset in Kubernetes
    – What is StatefulSet?
    – Deployment vs StatefulSet 
  • Kubernetes Services
    – What is a Service?
    – ClusterIP Services
    – NodePort Services
    – LoadBalancer Services
  • Volumes in Kubernetes
  • Deploying of Spring App to Kubernetes Cluster

Key takeaway:
Strong Fundamentals of Kubernetes

Jenkins for CI/CD

Introduction to Jenkins

  • Overview of Jenkins
  • Jenkins Installation
  • Jenkins Configuration
  • Creating a Jenkins pipeline
  • Install plugins and Credentials on Jenkins Server
  • Connect Jenkins to GitHub Repository
  • Setting up Docker and Maven in Jenkins
  • Understanding Scripted and Declarative Pipelines in Jenkins – Stages

Jenkins Pipeline

  • Using Docker Images as Jenkins Pipeline Agents
  • Configuring Jenkins Pipeline Path with Docker and Maven Tools
  • Build and Push Docker Image in Jenkins Pipeline
  • Pipeline for SonarQube Scanner for Jenkins
  • Add stage in pipeline to create a docker Image using DockerFile
  • Add Plugins – CloudBees AWS, ECR, Docker etc.
  • Add stage in pipeline to Push the Docker Image to AWS ECR

Key takeaway:
Learn how to design and build your own Jobs with a bunch of tools
Learn Continuous Integration and Continuous Deployment

Ansible for automation

Introduction to Ansible

  • Overview of Ansible
  • Comparison of Ansible, Puppet, Chef
  • Ansible Installation
  • Ansible Architecture
  • Setting up Master Slave using Ansible
  • Inventory in ansible
  • Introduction to YAML
  • Ansible Playbook, Modules
  • Ansible Roles
  • Applying configuration using Ansible

YAML fundamentals

  • Introduction to YAML
  • YAML Syntax
  • Datatypes
  • YAML Styles
  • Mapping
  • Sequence
  • Scalars
  • Structure
  • Comments
  • Anchors
  • YAML Tags

Prometheus and Grafana for monitoring

Getting started

  • Overview of Prometheus
  • Installation of Prometheus
  • Configuration of Prometheus
  • Installation of grafana
  • Querying
  • Instrumenting
  • Metrics

Takeaway: Being able to set up Prometheus and use it to monitor the activities of your applications

Introduction to markdown

  • Basic syntax
  • Heading
  • Text formatting
  • Lists
  • code formatting
  • block quote
  • Links
  • Images
  • Tables
  • Task List
  • Toggle
  • Horizontal rule

Takeaway: Ability to document your activities and processes with markdown


56 reviews on
Emmanuel Ireke
Emmanuel Ireke
A beginner friendly place where everything is broken down bit by bit and I will highly recommend for anyone who is trying to enhance or about to start his/her tech journey.
Vincent Edokpayi
Vincent Edokpayi
Best training ever! With the highly experienced and patient teachers, they carefully nurtured me as I went from 0 to 100. The classes are interactive, flexible and exciting in a very cosy environment. I’ll recommend it to anyone out there who desires to learn a new skill, grow in their career or just become more knowledgeable; notwithstanding your present skill level or having none at all, Tech365 would guide you carefully step-by-step into that you dream of becoming. Well done Tech365!
Deborah Babarinsa
Deborah Babarinsa
Very knowledgeable and experienced tutor.
Akinyele Aje
Akinyele Aje
Tech 365 is a very excellent place to learn. The location is wonderful, the lecture rooms have cool ambience and the tutors are very experienced, knowledgeable and friendly. I came in as a pharmacist and I came out as a techie!
Dosa Comfort
Dosa Comfort
It’s a place where you’ll get value for your money, good teaching with project to improve your learning
ogbonna chidiogo
ogbonna chidiogo
Training in Tech 365 is one of the best decisions I've made so far. Did Data Analytics, I was a novice to Excel or anything Tech( I was unsure I would catch up with the lessons) but my first day in class was Wow!! And the rest like the say is history 😃 Kudos to the Mr Wale.
Bello Ololade
Bello Ololade
My training at tech365 is the best. The teaching, mentoring and everything is top notch!

Our students work at

Frequently Asked Questions

Yes we accept installment payment. You can discuss with our team members on available payment options.

No prior programming experience is required. However, you need to know how to operate the computer efficiently. Our training approach is beginner friendly, and we work on several real world projects to help our student have deeper understanding of each module. 

People prefer Tech365 because our training are:

  • Project-based training
  • Job recommendation
  • World-class support
  • Up-to-date curriculum
  • Career guidance and mentoring
  • Access to support community
  • Certificate of completion
  • Flexible payment plan
  • Flexible timing


Our training is

  • Globally relevant
  • Beginner friendly
  • Futuristic
  • Relevant across industries
  • In high demand
  • Financially rewarding

We do not guarantee job. However, we do refer our students for jobs as different organization do reach out to us to hire our students. Some of our students have gotten job through this process.

Yes, we offer weekend classes for those who can’t attend weekdays due to their job or other reasons

Our training schedule are around January, May and September. You can talk to one of our representative for more information.

Yes our training is physical at Ikeja, Lagos. However, those outside Nigeria or living far away can join us online via zoom. The experience is similar.

Yes. In fact, this is our strength. We are committed to supporting our students to ensure they succeed.

Yes, it is recommended to come with your own laptop as it will help you to practice whatever you are learning. However, we provide laptop that can be used only within our premises if need be.

Yes, we provide internet access to our students.

Depending on your budget, Core i7, 16 GB ram with SSD is best.

However, core i3 or i5 with 4gb or 8gb ram HDD will also work fine.

It can be HP, DELL, Mac or any other brand.

Wale Olajumoke is an experienced tech professional who works with organizations to leverage technology for growth. He is a graduate of Computer Science. He is proficient in DevOps, Software Engineering and Data Science. He has over 8 years of experience working full-time and training people across Nigeria, Canada, the UK, the USA, Italy and more. He has built solutions and facilitated training for Banks, oil and gas, Pension companies, Conglomerates, NYSC, non-profit organizations and other industries.

He is an alumnus of Venture In Enterprise Management from PAN Atlantic University. He was nominated as one of the most influential youths in Nigeria by Avance media in 2017. His contribution also got Tech365 an award as an innovative brand in 2021. Wale has been a guest lecturer at GTBank training school, Facebook NG Hub, and Women Green Fellowship (during their session at Lagos Business School). He has trained the staff of First BANK, Coronation Merchant bank, Stanbic IBTC pensions and over 10,000 people globally.

He is passionate about adding value to people through training and mentoring.

Our Pricing Plans

Best DevOps Training

You can choose available options below based on your need.

DevOps Enginnering
  • Completed DevOps Training
DevOps /Software Engineering
  • Completed DevOps Training
  • Computer Science Fundamentals
  • Software Engineering Module
  • Data Structure/ Algorithm
  • Frontend
  • Backend


Tech365 is a register ICT Training company in Lagos Nigeria. Over the years, we have training several students in Canada, UK, United States, Nigeria and more

Contact Us
error: Content is protected !!