Training Details
6 Months
Afternoon (2pm to 5pm) Mon, Wed & Fri =================== Morning (10am to 1pm ) (Tues and Thur) =================== Weekends (Sat 2pm-5pm)
1st Floor, Nikky Africana Plaza, 70c Allen Avenue, Obasa Close, Opp UBA, Ikeja, Lagos
N1,000,000
2348029704730
Software Engineering Training In Lagos Nigeria
Our beginner-friendly, practical and project-based software engineering training is designed to help participants gain mastery of software engineering principles and methodology. 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 career to tech industry.
- Those who have programming skills but want to take their skill to next level with hands-on projects in order to get promotion or higher paying jobs
- Those planning to travel abroad and seeking hands-on skill that can make them relevant.
- Those in managerial position seeking to have knowledge of how software is built
Technologies covered

Learning outcomes
Real-World Project
Build any of the following software - ecommerce, job portal, delivery platform, hospital management system, hotel management system
Engineering Module
Have an understanding of data structure and algorithm. Software development life cycle, engineering principles, DevOps and more
Collaboration
Learn how to collaborate with other software developers on source code management and version control. Deployment to an online server.
Career Positioning
CV review, interview preparation, LinkedIn profile update, job alert and mentorship
Course Curriculum
Introduction to Computer Science
Overview of Computer science
- Introduction
Data Structures
- Array
- LinkedList
- Matrix/Grid
- Stack
- Queue
- Sort
- Heap
- Tree
- Graph
Algorithms
- Searching Algorithm
- Sorting Algorithm
- Divide and Conquer Algorithm
- Greedy methodology
- Recursion
- Backtracking Algorithm
- Dynamic Programming
- Pattern Searching
- Mathematical Algorithms
- Geometric Algorithms
- Randomized Algorithms
- Branch and Bound Algorithm
Introduction to software engineering
Introduction
- Introduction to Software Engineering
- Classification of Software
Software Development Models & Architecture:
- Classical Waterfall Model
- Iterative Waterfall Model
- Spiral Model
- Incremental process model
- Rapid application development model(RAD)
- RAD Model vs Traditional SDLC
- Agile Development Models
- Agile Software Development
- Extreme Programming (XP)
- SDLC V-Model
- Comparison of different life cycle models
- User Interface Design
- Coupling and Cohesion
- Information System Life Cycle
- Database application system life cycle
Software Project Management (SPM)
- Project Management Process
- Project size estimation techniques
- System configuration management
- Capability maturity model (CMM)
- Integrating Risk Management in SDLC
- Role and Responsibilities of a Software Project Manager
- Software Project Management Complexities
- Basic fault-tolerant software techniques
- Software Maintenance
Software Requirements
- Requirements Engineering Process
- Classification of Software Requirements
- How to write a good SRS for your Project
- Quality Characteristics of a good SRS
- Requirements Elicitation
- Challenges in eliciting requirements
Software Testing and Debugging
- Seven Principles of software testing
- Testing Guidelines
- Black box testing
- White box Testing
- Debugging
- Selenium: An Automation tool
Integration Testing
System Design
System design
- What is System Design?
- Software Development Life Cycle (SDLC)
- Structured Analysis and Structured Design (SA/SD)
- System Design Strategy
- Database Sharding – System Design Interview Concept
- System Design – Horizontal and Vertical Scaling
- Load Balancer in System Design
- Routing requests through Load Balancer
- Caching – System Design Concept For Beginners
- Object-Oriented Analysis and Design
- Difference between Structured and Object-Oriented Analysis
Unified Modeling Language (UML)
- Introduction
- Class Diagrams
- Sequence Diagrams
- State Diagrams
- Activity Diagrams
- Object Diagrams
- Conceptual Model of the Unified Modeling Language (UML)
- Difference between UML and
- ER diagram
Introduction to software development
Introduction and onboarding
- Full stack software development road-map
- How the internet works
- Project planning process
- Installation and setup
HTML and the browser
Overview of HTML
- Advantages and limitations of HTML
- HTML Comments
- Basic HTML tags
- HTML Elements
- Heading
- Paragraphs
- Text Formatting
- Quotations
- Links
- Images
- Tables
- Lists
- Block and Inline Elements
- Iframes
- File Paths
- Viewport meta tag for Responsive Web Design
HTML Entities
- Charsets
- URL Encoding
- HTML Tags
- Doctypes
- HTML Attributes
- Audio/Video
Project: Designing job application page and Shopping cart page.
Key takeaway: Understanding of how to render different HTML elements in the browser.
CSS (Cascading Style Sheets)
Introduction to CSS
- Benefits of CSS
- How to add CSS to HTML
- Code commenting in CSS
- Applying Colors
- Background Styling
- CSS Borders
- Margins and Padding
- Height and Width
- Box model
- Outline in CSS
- Text Formatting
- Fonts styling
- Using Icons
- Linking pages, buttons and images
- Lists
- Tables
CSS Properties
- Overflow
- Float
- Align
- Combinators
- Pseudo-classes
- Pseudo Elements
- Opacity / Transparency
- DropDowns
- Styling Forms
- Website Layout
- CSS Units
- Specificity
- CSS Properties
- CSS Selectors
Project: Designing a landing page with HTML and CSS
Task: Design a personal portfolio page
Key takeaway: Creating different types of frontend application with HTML and CSS
Tailwind CSS
Tailwind CSS outline
- Introduction to Tailwind CSS
- Why Tailwind CSS?
- Advantages of Tailwind CSS
- Installation of tailwind css
Layout
- Container
- Box Sizing
- Display
- Float
- Clear
- Object Fit
- Object Position
- Overflow
- Overscroll Behavior
- Position
- Top/Right/Bottom/Left
- Visibility
- Z-index
Flexbox
- Flex Direction
- Flex Wrap
- Flex
- Flex Grow
- Flex Shrink
- Order
Tailwind CSS Grid
- Grid Template
- Columns
- Grid Column Start / End
- Grid Template
- Rows
- Grid Row Start / End
- Grid Auto Flow
- Grid Auto Columns
- Grid Auto Rows
- Gap
Alignment
- Justify Content
- Justify Items
- Justify Self
- Align Content
- Align Items
- Align Self
- Place Content
- Place Items
- Place Self
Spacing
- Padding
- Margin
- Space Between
Sizing
- Width
- Min-Width
- Max-Width
- Height
- Min-Height
- Max-Height
Typography
- Font Family
- Font Size
- Font Smoothing
- Font Style
- Font Weight
- Font Variant
- Numeric
- Letter Spacing
- Line Height
- List Style Type
- Placeholder Color
- Placeholder
- Opacity
- Text Alignment
- Text Color
- Text Opacity
- Text Decoration
- Text Transform
- Vertical Alignment
- White space
- Word Break
Backgrounds
- Background Image
- Background Clip
- Background Color
- Background
- Opacity
- Background
- Position
- Background
- Repeat
- Background Size
- Gradient Color
- Stops
Borders
- Border Radius
- Border Width
- Border Color
- Border Opacity
- Border Style
- Divide Width
- Divide Color
- Divide Opacity
- Divide Style
- Ring Width
- Ring Color
- Ring Opacity
- Ring Offset Width
- Ring Offset Color
Effects
- Box Shadow
- Opacity
Tailwind Filters
- Filter
- Blur
- Brightness
- Contrast
- Drop Shadow
- Grayscale
- Hue Rotate
- Invert
- Saturate
- Sepia
- Backdrop Filter
- Backdrop Blur
- Backdrop
- Brightness
- Backdrop Contrast
- Backdrop
- Grayscale
- Backdrop Hue
- Rotate
- Backdrop Invert
- Backdrop Opacity
- Backdrop Saturate
- Backdrop Sepia
Tables
- Border Collapse
- Table Layout
Transitions and Animation
- Transition Property
- Transition Duration
- Transition Timing Function
- Transition Delay
Transforms
- Transform
- Transform Origin
- Scale
- Rotate
- Translate
Interactivity
- Appearance
- Cursor
- Outline
- Pointer Events
- Resize
- User Select
SVG
- Fill
- Stroke
- Stroke Width
Project
Design a modern landing page with tailwind
Convert Figma design to the actual web app using tailwind
Personal project: Design a web app for a Fintech company or other industry using tailwind
Key takeaway:
Ability to build different types of layout
Design web apps that are responsive
Learn general techniques and best practice
JavaScript Programming
Introduction to JavaScript
- Overview of JavaScript
- Installing Code Editor
- Developer console
- Adding JavaScript into HTML
- JavaScript Statements
- Basic Syntax
- Input and output
- JavaScript Comments
- Interaction: alert, prompt, confirm
Variables in JavaScript
- The use of variables?
- JavaScript Let
- JavaScript Const
- JavaScript Reserved Words
Data Types
- Numbers
- Strings
- Boolean
- Array
- Objects
- Null
- Undefined
JavaScript Operators
- Arithmetic Operators
- Assignment operators
- Comparison Operators
- JavaScript Unary Operators
- Ternary Operator
- Instanceof Operator
Conditionals
- If-else
- Switch Case in JavaScript
- Break and Continue
- Type Conversion
Loops in JavaScript
- For Loop
- While Loop
- For-in Loop
- Differences between for(..in) and for(..of)
Javascript functions
- Inbuilt Functions
- User-defined functions
- Anonymous Functions
- Functions as First-Class Citizens
- Callback Functions
- Higher order function (map, filter, reduce, find)
- Understanding variable scopes in JavaScript
- JavaScript Hoisting
- JavaScript Strict Mode
- this in JavaScript
Arrays in JavaScript
- Basic Array Methods
- sort() Method
- Array Iteration Methods
JavaScript Strings
- JavaScript String Methods
- How to create multi-line strings in JavaScript?
- How to sort strings in JavaScript?
Document Object Model (DOM)
- Introduction to
- Document Object Model
- Select Element By Id
- Select Elements By Name
- Select Elements By Tag Name
- Select Elements By Class Names
- Select Element By CSS Selectors
- Traversing elements
- Get the Parent Element
- Get Siblings of an Element
- Get Children of an Element
- Manipulating elements
- Create Elements
Append Child Nodes
InnerHTML
Javascript Form
- How to Create a Form with the JavaScript?
- Form validation
Event handling
- Introduction to Events
- Page Load Events
- The onLoad Event
- The DOMContent
- Mouse Events
- Keyboard Events
- Scroll Events
Storing data in the browser
- Cookies
- LocalStorage
- sessionStorage
ES6
- Template Literals
- Object Literal Syntax
- Default Parameters
- Rest Parameters
- Spread Operator
- Destructuring
Module
- What is the arrow function
- Importing and
- Exporting Modules
Asynchronous JavaScript
- Promises
- Async/await
Error Handling
- try…catch try…catch…finally
- Throw an Exception
JavaScript Runtime
- Execution Context
- Call Stack
- Event Loop
Project. Build a quiz application
Build an income and expense app
Personal project: Create a loan calculator for a loan company
Key takeaway: Learn modern best practices and code patterns.
Get the skills and confidence to really understand JavaScript.
Follow a structured learning path to grow your skills more quickly.
Work on real projects and build your portfolio.
React (JS Library)
Introduction to React
- What is React JS?
- Why use React instead of JavaScript
- Project Overview
- Roadmap
React Setup
- Environment Setup
- Creating New Project
- Analyzing Project Structure
React basics and components
- Components & Why React is Component-Based?
- JSX
- React Elements
- Building Component
- Styling Components
- Dynamic Data in components
- Passing data using Props
State and event handling
- Handling Events in React
- Why are States required?
- useState() Hook
- Form Handling
- Handling form Submission
Contents conditional rendering
- Rendering of List
- Importance of key attribute
- Conditional Statements & Output
Handling side effects
- What are side effects & useEffect()
- UseEffect() hook
- Cleanup function
HTTP Calls using Axios/fetch
- Making first network Call with fetch
- Network call using Axios
- Handling data and states
- Async and Await
- Updating the data
Multipage Single page application with react-router
- Introduction to routIng
- What is Routing, how it works & installation
- Basic Routing
- Link and NavLink
- Dynamic Routes
- Nested Routes
- Redirection and Not Found Page
Global state management with context
- What is React Context?
- React context vs Redux
- When to use React Context?
- Application of react context
Deployment
- Steps to create a production build
- Hosting your application online
Project: Design an app that consumes APIs from the backend with search functionality and pagination
Convert Figma design to a real web app using React.
Personal project: Design a web app for a Real Estate company or other industry using React.
Key takeaway:
Get hands-on practice in building various projects using React JS.
You will also be creating an industry-ready single-page web application.
Learn how to deploy and maintain an application.
Build powerful, fast, user-friendly and reactive web apps
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()
Tuple
- 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
Operators
- Arithmetic Operators
- Assignment operators
- Comparison Operators
- Membership
- Control flow
- if…elif
- type Conversion
Loops
- 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
Object-oriented programming (OOP)
- Introduction to Classes
- What are objects
- Inheritance
- Encapsulation
- Polymorphism
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
Modules
- Benefits of using modules
- Python packages
- Using the OS module
Project: Build a mini ATM terminal-based project where users can create accounts, check balances, deposit and withdraw using object-oriented programming.
Personal tasks: Build automation tools with python
Key takeaway: Understand python programming and be able to translate concepts into pseudo-code and functional app
SQL for database manipulation
Introduction to SQL
- What is SQL?
- Create Table Statement
- ALTER TABLE Statements
- Rename Columns of a Table
- Modify Column DataType
- Drop Columns from Table
- Rename Tables
- Drop Tables
- What is Null Value?
DML Statements
- Insert Statement
- Update Statement
- Delete Statement
- Truncate Statement
- Merge Statement
SQL Functions
- AVG()
- COUNT()
- MAX()
- MIN()
- SUM()
Select Queries
- Select Query
- WHERE Clause
- GROUP BY Clause
- HAVING Clause
- ORDER BY Clause
SQL Joins
- Inner Join
- Left Join
- Right Join
- SQL Operators
- BETWEEN
- IN
- LIKE
- INTERSECT
- MINUS
- UNION
- DISTINCT
- ANY, SOME
- ALL
SQL Operators
- BETWEEN
- IN
- LIKE
- INTERSECT
- MINUS
- UNION
- DISTINCT
Project: Design a database for a social network
Personal task: Design a database for a school management system
Key takeaway: Ability to design and create a database
Implement the database design
Perform CRUD operation
Django Framework
Django Introduction
- What is Django?
- Features of Django
- Advantages of Django
- Organizations using Django
- Understanding MVT design pattern
Django Fundamentals
- Setting up a virtual environment
- Installing Django
- Understanding Django folder structure
- Creating Projects
- Django Apps
- App settings
- Running Django server
Site Administration
- Accessing the Django admin
- Setting up Django superuser
- Customizing the Django admin
URL/Routing in Django
- Url patterns
- static page routing
- Dynamic page routing
Django Views
- Class-based views
- Function-based views
- Creating Django views
Templating in Django
- Steps to creating templates
- Jinja Template tags
- Displaying data in Django templates
- Extending Django templates
Django Models
- Understanding Django ORM (Object-relational mapper)
- Connecting to database
- Model class in Django
- Field types in the Django model
- Migration in Django
- Displaying models in Admin
- Understanding model relationships
- Create, read, update and delete data
Django Forms
- Creating a form with HTML
- Using Django model forms
- Form Validation
User Authentication
- User Registration
- User login and Logout
- Login redirect
- Flash Messages
- Sending emails
Django Security
- Managing brute-force attack
- Adding ReCaptcha
- Session timeout
Static files in Django
- static files configuration
- Styling in Django
- Adding JavaSCript
- Managing media files
Project: Build a student record management system
Build an e-commerce website
Personal project: Build a management system for a hospital, hotel, job portal or delivery app.
Key takeaway: Understand how to plan a project, implement the plan and deploy the software after development
REST Framework (for APIs)
Django REST framework (API development)
- Basic Django Setup
- Installation
- Models and Migrations
- Creating JSON Response
- DRF Introduction
- Serializers – GET Request
- Serializers – POST, PUT, DELETE Request
- Status Codes
- Model Serializer
- Django Relationships
- URL Structure
- Viewsets and Routers
- Introduction to Permissions
- Introduction to Authentications
- Manual Testing
- Implementing search and pagination
Project: Development of a recipe API.
Personal project: Build API for movies
Key takeaway: Understand how to expose the backend through APIs so it can be consumed by mobile apps, frontend frameworks and other platforms
DevOps
Understanding DevOps
- What is DevOps?
- DevOps Lifecycle
- DevOps adoption for businesses
Introduction to cloud computing (AWS)
Overview
- 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
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
Security
- 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
Introduction
- 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
Networking
- Overview of Docker Networking
- Understanding Bridge Networks
- Understanding Host Network
- Implementing None Network
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
Storage
- Overview of Docker Volumes
- Creating Volumes in Kubernetes
- Document – Dynamic Provisioning
ConfigMaps - Security Contexts
- Storage Volume Expansion
Troubleshooting
- 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
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
Testimonials
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.
Best Software Development Training
You can choose available options below based on your need.
Software Engineering
- Computer Science Fundamentals
- Software Engineering Module
- Frontend
- Backend
- DevOps