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
 
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

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

EXCELLENT
56 reviews on
Olutosin Oyeleke
Olutosin Oyeleke
Tech365 is the right place to be for acquiring any Tech skill. The teachings are deep, explanatory, and detailed. The teachers take their time to explain each concept and tool from the basics. There is no assumption in their teachings as they take students from beginner level to expert level. Tasks are also given to increase one's knowledge of the scope taught per day. I took Data Analytics and Data Science classes at Tech365, and I can boldly say that I got value for my money. The training centre also provides support and mentorship for their students even after training.
Drastute global Concept
Drastute global Concept
Tech365 is the best for practical experience in teaching for any I.T courses with qualified tutors that are readily available to proved solution to any issues.. I have one certificate from tech365 and I have 2 more to go .I recommend tech365 for anyone with no prior I.T skills to enroll with them.
Francis Ezekude
Francis Ezekude
Tech 365 is an amazing place to upgrade or acquire a tech skill, I definitely recommend it 100%
Chioma Iroka
Chioma Iroka
I didn't allow distance rob me off this amazing experience. One of the best decisions I took this year was, registering at Tech365 for my Data Analysis training. If you need a physical class for your Tech journey, I will advise you go to Tech365. Amazing learning environment, great teachers and hands on projects.
Obateru seun
Obateru seun
It's an amazing experience with Tech365, a great citadel of learning in tech. Learning environment and instructors are top-notch.
FOLA BIYI
FOLA BIYI
Tech365 is the best place to learning. I was taught in a way that even JSS 1 STUDENTS will catch up without losing interest. I will recommend Tech365 to anyone even if you don't have knowledge about IT. TAKE IT FROM ME, it is 100% class and hand-on.
Adebowale Jeff Johnson
Adebowale Jeff Johnson
Class was always fun and very engaging. If you're not comfortable with time management, get yourself together before coming to learn with Tech365.
Oginni Samson
Oginni Samson
I recently attended Tech365 and had an amazing experience! The instructor was knowledgeable, patient, and approachable. He takes him to explain complex concepts in a way that was easy to understand and provided hands-on learning experiences that helped me apply what I learned in real world situations. The curriculum was well-structured and comprehensive, covering a wide range of topics relevant to the tech industry. I appreciated that Tech2365 stayed up-to-date with the latest technology trends, ensuring that students were learning relevant and practical skills that would help them succeed in the workforce. The facilities were top-notch, with modern equipment and plenty of resources available for students. The environment is well organized, and provided a comfortable learning environment. Overall, I highly recommend this tech school to anyone looking to enhance their technical skills or pursue a career in the tech industry. The quality of education and support provided by Tech365 is truly exceptional, and I'm grateful for the opportunity to have learned from such talented and dedicated instructor
mayowa oyeyinka
mayowa oyeyinka
I've been studying Data Science at Tech365 for the past few months and I have to say, it's been an incredibly positive experience. The tutors are knowledgeable and patient, always making sure to answer any questions I have. The classroom environment is also very conducive to learning. What I really appreciate about Tech365 is the resources they provide. They start the classes from scratch, enabling even people without prior experience to catch on. They also organize regular challenges that incorporate hands-on projects into the coursework, which are a great way to put what we've been taught to the test. I would highly recommend Tech365 for anyone looking to move into tech. The knowledgeable instructors and comprehensive resources at Tech365 make it an exceptional place to learn.

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.

Our Pricing Plans

Best Software Development Training

You can choose available options below based on your need.

Software Engineering
N1,000,000
  • Computer Science Fundamentals
  • Software Engineering Module
  • Frontend
  • Backend
  • DevOps

tech365-logo

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 !!