- Overview
- Prerequisites
- Audience
- Audience
- Curriculum
Short Description:
In this 10-week immersive DevOps Engineer Bootcamp, students will learn all DevOps Engineering Essentials related to building DevOps using SQL, Python, Github, DevOps CI and CD.
Description:
In this 10-week immersive DevOps Engineer Bootcamp, students will learn all DevOps Engineering Essentials related to building DevOps using SQL, Python, Github, DevOps CI and CD.
This workshop will start with Agile Scrum Methodology since the whole workshop would be executed like an Agile project. Students will then be exposed to SQL Fundamentals, and DevOps Engineering fundamentals.
Students will then learn the basics of Linux and Shell scripting, Python programming Fundamentals, best practices and practical usage for DevOps Engineering.
Students will have the opportunity to understand the value and promise of Cloud Computing (using GCP). The course will lead participants towards getting exposure to understanding Compute, Storage and Networking on GCP.
Students will gain hands-on experience by working with DevOps where they will learn about the container technology such as Docker and the orchestration of the containers using Kubernetes. Students will learn about Continuous Integration and Continuous Development (CI/CD).
Duration: 10 Weeks
Course Code: BDT279
Learning Objectives:
- Gain expertise in Agile Scrum methodology and its practical applications.
- Master SQL fundamentals, from writing queries to utilizing functions.
- Acquire Linux skills, including system administration and scripting.
- Develop proficiency in version control using Git for collaborative projects.
- Become proficient in Python programming, covering data structures and functions.
- Understand object-oriented programming and exceptions in Python.
- Explore cloud computing foundations with a focus on AWS or GCP.
- Learn DevOps principles, containers, and orchestration with Docker and Kubernetes.
- Delve into Continuous Integration/Continuous Deployment (CI/CD) concepts and tools.
- Gain insight into NoSQL databases, specifically MongoDB, and their integration with Apache Spark.
Prerequisites/Professional Experience:
- Understanding of how computers work
- One or more years technical experience
- Programming experience with Python & SQL would be a plus.
- Candidates with Computer Science degree or equivalent experience and pursuing their first IT role with the focus on DevOps Engineering.
- Candidates with Computer Science degree or equivalent experience and pursuing their first IT role with the focus on DevOps Engineering.
Course Outline:
Agile Scrum Methodology
- Scrum Introduction
- Scrum Team
- Scrum Artifacts
- Sprint Increment
- Spring planning
- Backlog
- Retrospective
- Project description and Case Study
- Practice exam and Knowledge check
- Certification (optional)
SQL
- SQL Fundamentals
- Writing SQL Queries
- Working Tables and Indexes
- Predefined SQL functions
- Connecting Python to SQL
- Certification (optional)
Linux Fundamentals
- Set Up and Overview
- Install virtual machine running Ubuntu Linux
- Linux Fundamentals
- System Administration Basics
- Shell Scripting Overview
- Networking Services
Using Git
- Introduction to Git
- What is a version control system (VCS)?
- What is Git?
- Choosing a default git editor
- Understanding repositories
- Cloning a remote repository
- Using Git
- git add and git commit
- Commit messages
- Understanding markdown
- git status
- git push and git pull
- git log
Module 3: Creating Branches
- Branches
- Feature branch development
- Feature branch workflow
- Comparing branches
- Merge requests
- Stashing
- Fixing merge conflicts
- Rebasing
- Code review and merges
Python Programming – Fundamentals
- Set Up
- Set up development environment – Jupyter notebooks
- Using python shell
- Executing python script
- Understanding python strings
- Print statements in python
- Data Structures in python
- Integers
- Lists
- Dictionaries
- Tuple
- Sets
- File
- Mutable and Immutable structures
- Selection and Looping Constructs
- If/else/elif statements
- Boolean type
- “in” membership
- For loop
- While Loop
- List and Dictionary Comprehension
- Functions
- Defining functions
- Variable scope – Local and Global
- Arguments
- Polymorphisms
- Modules
- Creating modules
- Importing Modules
- Different types of imports
- Dir and help
- Examining some built-in modules
- Classes & Exceptions
- Object Oriented Programming Introduction
- Classes and Objects
- Polymorphism – Function and Operator Overloading
- Inheritance
Cloud Computing Foundations (AWS or GCP)
- Cloud Computing Overview
- Security with Google’s Cloud Infrastructure
- Understanding resource hierarchy
- IAM – Identity and Access Management
- Different IAM Roles
- Connecting to Google Cloud Platform
- Understanding different compute options
- Working with different Relational and NoSQL databases on GCP
- GCP Data Warehouse: BigQuery
DevOps Overview
- DevOps Overview
- Containers with Docker
- Orchestrating containers with Kubernetes
- Understanding Continuous Integration
- Understanding Continuous Delivery and Deployment
DevOps Overview and Tools
- Principles of continuous software development, integration, and deployment
- DevOps Goals
- Automation
- Version Control
- Testing
- Deployment
- Cloud
- Introduction to Tools (e.g., Git, Docker, Jenkins)
- Repositories, artifacts
Continuous Integration/Continuous Deployment (CI/CD)
- Introduction to CI/CD concepts
- Continuous Integration Pipelines
- Creating Pipelines
- Automating Deployments
- Exercise: Creating CI/CD Pipelines with Jenkins
Docker
- Docker Overview
- Docker Desktop
- Docker Commands
- Understand Dockerfile
- Building Docker Containers
- How to use Docker, Compose and Kubernetes on your machine for better software building and testing.
- Hand’s-on with best practices for making Dockerfiles and Compose files
Kubernetes
- Introduction to Kubernetes
- Role: container/ service orchestration
- Architecture, clusters
- Automated deployment and operations of containerized applications
- Kubernetes networking
- CNI
- Networks policies, workflow
- Examples: Flannel, Calico
- Automation based on helm charts (optional)
- Container/service image (registry and distribution)
- Introduction to service meshes
- Fundamentals: definition, drivers and use cases
- Example: Envoy and Istio
NoSQL
- Relational v/s Non-Relational Databases
- What are NoSQL databases?
- Types of NoSQL databases
Document Datastore: MongoDB
- MongoDB Introduction
- Understanding Basics and CRUD operations
- Structuring Documents
- Create Operations
- Read Operations on Collections
- Updating Documents
- Deleting Documents
- Working with Indexes
- Working with different data types
- Using MongoDB Compass to explore data visually
- Integrating Apache Spark with MongoDB
Project & Use Case
- Project Overview
- Complete projects to get experience and practice
- Industry Use Case Studies
Certification
- Certification Overview
- Identify the right certification for you
- Tips to prepare for certification