Learn from Curated Curriculums developed by Industry Experts
1. What is an Application?
2. Types of Applications
3. Web Application Fundamentals
4. Web Technologies: (List key technologies and their roles)
Frontend: HTML, CSS, JavaScript, React
Backend: Python, Java, Node.js
Databases: SQL (MySQL, PostgreSQL), NoSQL (MongoDB).
5. Software Development Life Cycle (SDLC)
Phases: Planning, Analysis, Design, Implementation (Coding), Testing, Deployment, Maintenance.
6. Application Development Methodologies
Agile: Core principles, Scrum, Kanban
Waterfall
1. What is Data
2. Types of Data
3. Data Storage
4. Data Analysis
5. Data Engineering
6. Data Science
1. The Importance of Computing Power
2. Key Computing Technologies:
CPU (Central Processing Unit)
GPU (Graphics Processing Unit)
3. Cloud Computing:
What is the Cloud?
Cloud Service Models:
IaaS (Infrastructure as a Service)
PaaS (Platform as a Service)
SaaS (Software as a Service)
1. What is Artificial Intelligence (AI)?
2. How AI Works?
3. Key Concepts:
Machine Learning (ML)
Deep Learning (DL)
4. Generative AI:
What is Generative AI?
Examples: Large Language Models (LLMs), image generation models.
5. AI in Everyday Learning
1. Customer Relationship Management (CRM)
2. Human Resource Management Systems (HRMS)
3. Retail & E-Commerce
4. Healthcare
Topics
1. Introduction to DevOps Practices & Tools
Defining DevOps: Core principles (Culture, Automation, Lean, Measurement, Sharing)
Benefits of DevOps adoption
Overview of key toolchains across the software development lifecycle
Setting the context for the course.
2. AWS Account & Server Setup
Guidance on creating an AWS free tier account
Navigating the AWS Management Console
Launching and connecting to a basic EC2 Linux instance for practical exercises.
3. AZURE Account & Server Setup
Guidance on setting up an Azure free account
Navigating the Azure Portal
Provisioning and connecting to a basic Linux Virtual Machine for practical exercises.
Topics
1. Introduction to Linux OS
Exploring the fundamentals of the Linux operating system.
2. Linux Distributions and Architecture
Understanding different distributions and the architecture of Linux.
Command Line Interface (CLI) & Filesystem
Mastering the CLI and navigating the Linux filesystem.
3. File Management and vi Editor
Managing files and editing them using the vi editor.
4. Archives and Package Management
Utilizing tar, zip utilities, and managing packages in Linux.
5. System Installation and Package Managers
Installing software on Ubuntu, using .deb files, and the APT package manager.
6. Users, Groups, and Permissions
Managing users and groups, and configuring permissions.
7. Networking Basics: IP Address, Protocols, & Ports
Networking Basics: IP Address, Protocols, & Ports
8. Firewalls and Security Measures
Configuring firewalls and understanding basic security measures.
9. Load Balancers
Basics of load balancing in a Linux environment for optimizing performance and reliability
Topics
1. Introduction to Version Control System
Basics of version control and its importance in software development.
2. Centralised vs Distributed Version Control System
Differences between centralized and distributed systems, with a focus on their advantages and use cases.
3. Git & GitHub Introduction
Overview of Git and GitHub, and how they revolutionize code management and collaboration.
4. Git Workflow
Understanding the standard workflow in Git, including stages of code changes and commit practices.
5. GitHub for Collaboration
Using GitHub features for project collaboration, including issues, forks, and pull requests.
6. Git Branching Model
Strategies for branching in Git, including feature branches and the master branch.
7. Git Merging and Pull Requests
Techniques for merging branches and the role of pull requests in collaborative projects.
8. Git Rebase
Understanding rebase, its advantages, and how it differs from merging.
9. Handling Detached Head and Undoing Changes
Managing a detached HEAD in Git and various ways to undo changes.
10. Advanced Git Features: Git Ignore, Tagging
Utilizing .gitignore for excluding files from tracking, and tagging for marking specific points in history.
Topics
1. Introduction to Containerisation
Essentials of container technology and its impact on software development.
2. Monolithic vs Microservices Architecture
Comparison between traditional monolithic and modern microservices approaches.
3. Introduction to Virtualisation and Containerisation
Basic concepts of virtualisation and how containerisation offers streamlined deployment.
4. Docker Architecture
Key components and structure of Docker's system architecture.
5. Setting up Docker
Guidelines for Docker installation and initial setup on various platforms.
6. Docker Registry, Images, and Containers
The roles and relationships between Docker Registry, images, and containers.
7. Running Docker Containers
Fundamentals of managing Docker containers' lifecycle.
8. Docker Volumes and Networks
Using Docker volumes for data persistence and networks for inter-container communication.
9. Docker Logs and Tags
Techniques for handling Docker logs and utilizing tags for image management.
10. Dockerize Applications and Docker Compose
Strategies for containerizing applications and orchestrating with Docker Compose.
Topics
1. CI/CD Introduction
Definition of Continuous Integration (CI) and Continuous Deployment/Delivery (CD).
Benefits: faster feedback loops, automated testing processes, and dependable releases.
Typical CI/CD workflow outline.
2. GitHub Actions Workflows
Introduction to GitHub Actions as an integrated CI/CD solution within GitHub.
Core concepts: workflows, events, jobs, steps, actions, runners explained.
Creation of fundamental workflow YAML files.
3. Triggers & Runners
Configuration of workflow triggers based on GitHub events (e.g., `push`, `pull_request`, `schedule`).
Distinction between GitHub-hosted and self-hosted runners for workflow job execution.
4. Jobs
Definition of jobs within a workflow for task organization.
Understanding job dependencies and execution environments. Structuring steps within a job.
5. CI/CD Pipeline
Practical construction of a complete CI/CD pipeline using GitHub Actions.
Example: Automated build, test, and potential deployment of a basic application upon code push to the repository.
Introduction to SonarQube
Purpose and benefits of using SonarQube in software development.
Core Features
Static Code Analysis: Identifies bugs, vulnerabilities, and code smells.
Quality Gates: Ensures code meets quality standards.
Continuous Integration: Integrates with CI/CD pipelines for automated checks.
Security Analysis: Highlights security vulnerabilities.
Setup and Use
Installation steps.
Running initial code analysis and interpreting results.
Introduction to Nexus Repository
Purpose and advantages of using Nexus Repository in development environments.
Key Features
Artifact Storage: Manages libraries, build artifacts, and binaries.
Repository Management: Supports multiple repository formats like Maven, NuGet, and Docker.
Access Control: Manages user permissions for better security.
Installation and Configuration
Step-by-step guide for setting up Nexus Repository.
Using Nexus Repository
Uploading and managing artifacts.
Integrating with build tools and CI/CD pipelines.
Best Practices
Efficient repository organization and version control.
Case studies highlighting successful Nexus Repository implementations.
Topics
1. Introduction to High Availability
Understanding the importance of high availability in systems design.
2. Introduction to Container Orchestration
Exploring the concept and need for container orchestration.
3. Container Orchestration Tools
Overview of tools available for container orchestration including Kubernetes.
4. Overview of Kubernetes
Introduction to Kubernetes and its role in container orchestration.
5. Kubernetes Architecture
Understanding the architectural components of Kubernetes.
Topics
1. Components of Kubernetes
Detailed look at core Kubernetes components, including master and node components.
2. Kubernetes Objects
Introduction to the fundamental objects in Kubernetes.
3. Pods
Understanding Pods, the smallest deployable units in Kubernetes.
4. Replica Sets
Role and functioning of Replica Sets in managing pods.
5. Deployments
How Deployments automate the updating and rollback of applications.
Topics
1. Services
Introduction to Services as a way to expose applications running on a set of Pods.
2. ClusterIP
Exploring ClusterIP for internal cluster communication.
3. NodePort
Understanding how NodePort exposes services outside of the cluster.
4. Load Balancer
Using Load Balancers to distribute traffic evenly across services.
5. Ingress
Configuring Ingress for external access to services within the cluster.
Topics
1. Config Maps
Managing application configuration using Config Maps.
2. Secrets
Securely storing sensitive information with Secrets.
3. Persistent Volume (PV) and Persistent Volume Claim (PVC)
Understanding the storage capabilities in Kubernetes with PV and PVC.
4. Storage Classes
Exploring dynamic volume provisioning through Storage Classes.
5. StatefulSets
Managing stateful applications with StatefulSets.
Topics
1. Overview of Production Clusters
Considerations for running Kubernetes in production environments.
2. Overview of AWS EKS
Introduction to Amazon Elastic Kubernetes Service (EKS).
3. Setup EKS
Steps for setting up a Kubernetes cluster on AWS EKS.
4. Deploy Applications On EKS
Practical guide to deploying applications on EKS.
5. Monitoring and Logging
Tools and strategies for monitoring and logging in a Kubernetes environment.
This module provides an overview of Azure DevOps, including its core services and how to start with pipelines.
Topics
1. What is Azure DevOps?
An overview of Azure DevOps services and its ecosystem.
2. Azure Boards
Introduction to project management using Azure Boards.
3. Azure Repos
Managing code repositories with Azure Repos.
4. Azure Pipelines
Automating builds, tests, and deployments with Azure Pipelines.
5. Creating Pipelines in Azure DevOps
Step-by-step guide to setting up your first pipeline.
Topics
1. Agile Project Management Best Practices
Implementing agile methodologies using Azure Boards.
2. Basic Concepts of Azure Boards
Understanding work items, sprints, and scrum features.
3. Connecting Boards to GitHub
Integrating Azure Boards with GitHub repositories.
4. Work Items and Sprints
Managing tasks and sprints in Azure Boards for agile development.
5. Azure Boards Integrations
Enhancing Azure Boards with integrations for extended functionalities.
Topics
1. Introduction to Azure Repos
Overview and key concepts of using Azure Repos for source control.
2. Branches and Cloning in Azure Repos
Managing branches and cloning repositories for development workflows.
3. Import Code from GitHub
Steps to import existing codebases from GitHub into Azure Repos.
4. Search Your Code in Repos
Utilising search functionalities within Azure Repos for code management.
5. Azure Repos Integrations
Extending Azure Repos capabilities with external integrations.
Topics
1. Deploying with Azure Pipelines
Strategies for deploying applications using Azure Pipelines.
2. CI Triggers and YAML Basics
Configuring continuous integration triggers and understanding YAML for pipeline configuration.
3. Setting Up CI Build
Creating a continuous integration build process with Azure Pipelines.
4. Adding Tests to the Pipeline
Incorporating testing into the CI/CD pipeline for quality assurance.
5. Agents and Tasks
Understanding agents and tasks within Azure Pipelines for build and deployment processes.
Topics
1. Working with Packages in Azure Artifacts
Managing dependencies and packages with Azure Artifacts.
2. Connection Feeds and Views in Artifacts
Configuring feeds for package sharing and views for package management.
3. Connecting Azure Artifacts to Azure Pipelines
Automating package deployment with Azure Pipelines integration.
4. What are Azure Test Plans?
Introduction to planning, executing, and tracking tests with Azure Test Plans.
5. Testing Web Apps
Strategies and best practices for testing web applications using Azure Test Plans.
Topics
1. Python as a Scripting Language
Overview of Python and its use as a powerful scripting language.
2. Python Collections and Sequences
Introduction to Python's data structures for organizing and storing data.
3. Working with Python Collections
Practical exercises on manipulating lists, dictionaries, sets, and tuples.
4. Python Functional Programming
Understanding functional programming paradigms in Python, including lambda functions and higher-order functions.
5. Python File Handling
Techniques for reading from and writing to files in Python scripts.
Topics
1. Python Modules and Packages
Utilizing modules and packages to organize and reuse code efficiently.
2. Classes in Python
Fundamentals of defining and using classes in Python.
3. Object-Oriented Programming (OOP) in Python
Exploring Python's OOP features for more complex script development.
4. Exception Handling
Techniques for handling and raising exceptions to manage errors gracefully.
5. Python Decorators and Generators
Leveraging decorators and generators to simplify and power up your Python code.
Topics
1. Automation through Scripting Languages
The role of scripting languages like Python in automation efforts.
2. Automating File System Operations
Using Python scripts to manage file and directory operations.
3. Web Scraping with Python
Techniques for extracting data from web pages using Python libraries.
4. Automating Network Tasks
Scripting network operations for automation with Python.
5. Automating API Interactions
Using Python to interact with and automate tasks using APIs.
Topics
1. Building Python Applications
Best practices and methodologies for developing robust Python applications.
2. Testing Python Applications
Introduction to unit testing and test automation in Python.
3. Python Application Deployment
Strategies for deploying Python applications, including web and standalone applications.
4. CI/CD for Python Applications
Implementing Continuous Integration and Continuous Deployment workflows for Python projects.
5. Virtual Environments and Package Management
Managing Python environments and dependencies for project isolation and reproducibility.
Topics
1. Python in CI/CD Pipelines
Integrating Python scripts and applications in CI/CD workflows.
2. Automating Builds and Tests with Python
Using Python for automated testing, including unit tests, integration tests, and end-to-end tests.
3. Python for Deployment Automation
Scripting deployment processes, including application packaging and distribution.
4. Monitoring and Logging with Python
Implementing monitoring and logging solutions in Python for applications and infrastructure.
5. Version Control Automation with Python
Automating version control workflows with Git using Python.
Topics
1. Introduction to SRE
Defining Site Reliability Engineering and its objectives in maintaining highly reliable and scalable systems.
2. Introduction to Monitoring
Exploring the purpose and techniques of monitoring in SRE practices.
3. Introduction to Observability
Understanding observability and its difference from and relationship with monitoring.
4. SRE Roles and Responsibilities
Overview of the typical roles, responsibilities, and expectations of an SRE.
5. SRE Best Practices and Principles
Essential practices and foundational principles for effective site reliability engineering.
Topics
1. Introduction to Prometheus
Basics of Prometheus and its role in the monitoring landscape.
2. Prometheus Architecture
Understanding the components and architecture of Prometheus.
3. Monitoring with Prometheus
Setting up Prometheus for monitoring infrastructure and application metrics.
4. Scraping Metrics with Prometheus
Techniques for scraping and collecting metrics from various targets.
5. Prometheus YAML Configs and Node Exporter
Configuring Prometheus and using Node Exporter to gather system metrics.
Focuses on Grafana for visualizing metrics and logs, providing insights into creating effective dashboards for observability.
Topics
1. Introduction to Visualization with Grafana
Understanding the importance of data visualization in observability.
2. Installing Grafana on a Linux Server
Step-by-step installation of Grafana for setting up monitoring dashboards.
3. Grafana User Interface Overview
Navigating through Grafana's UI and understanding its features.
4. Creating Grafana Dashboards
Techniques for creating insightful and interactive dashboards in Grafana.
5. Grafana with Docker
Deploying Grafana within Docker containers for flexible and scalable monitoring solutions.
Topics
1. Integrating Prometheus and Grafana
Techniques for integrating Prometheus with Grafana to visualize metrics.
2. Alerting with Prometheus
Setting up alert rules in Prometheus and integrating with notification platforms.
3. Log Management and Analysis
Introduction to log management solutions and integrating them with monitoring tools for full observability.
4. Tracing and Distributed Tracing
Understanding tracing and distributed tracing for in-depth insights into application performance.
5. Cloud Monitoring Solutions
Overview of cloud-native monitoring and observability solutions provided by cloud service providers.
Topics
1. Infrastructure as Code (IaC) for SRE
Leveraging IaC tools for reliable and reproducible infrastructure provisioning.
2. CI/CD Pipelines for Reliable Deployments
Implementing CI/CD pipelines for automated testing and deployment.
3. SRE and DevOps: Collaboration and Tools
Exploring the overlap between SRE and DevOps practices, focusing on tooling and collaboration for reliability.
4. Automation in Incident Management
Automating incident response and management to reduce downtime and improve MTTR (Mean Time To Recovery).
5. Capacity Planning and Performance Tuning
Techniques and tools for effective capacity planning and performance tuning to ensure scalability and reliability.
Introduction to Generative AI
1. What is Generative AI?
2. Key Applications:
Text (ChatGPT, Claude, LLaMA)
Images (DALL·E, MidJourney, Stable Diffusion)
Audio (Music Generation, Voice Cloning)
Code (GitHub Copilot, Cursor)
3. Evolution of GenAI:
Rule-Based → Deep Learning → Transformers
GANs vs. VAEs vs. LLMs
1. Effective Prompt Design
Instruction-Based, Few-Shot, Zero-Shot
2. Advanced Techniques:
Chain-of-Thought (CoT) Prompting
Self-Consistency & Iterative Refinement
Hands-on:
Optimizing prompts for GPT-4, Claude, LLaMATransformer Architecture
1. Why Transformers? (Limitations of RNNs/LSTMs)
2. Key Components:
Self-Attention & Multi-Head Attention
Encoder-Decoder (BERT vs. GPT)
3. Evolution: BERT → GPT → T5 → Mixture of Experts
4. Large Language Models (LLMs)
5. Pre-training vs. Fine-tuning
6. Popular Architectures:
GPT-4, Claude, Gemini, LLaMA 3
BERT (Encoder-based) vs. T5 (Text-to-Text
Introduction to AI Agents
1. What are AI Agents?
2. vs. Traditional AI:
3. Applications:
AI Agent Frameworks
1. CrewAI (Multi-Agent Collaboration):
2. n8n (Workflow Automation):
Designing AI Agents
CrewAI + n8n: Automating Business Workflows
Multi-Agent Systems: Collaboration & Specialization
Real-World Applications
Case Studies:
AI Customer Support Agents
25th Sept 2023
Monday
8 AM (IST)
1hr-1:30hr / Per Session
27th Sept 2023
Wednesday
10 AM (IST)
1hr-1:30hr / Per Session
29th Sept 2023
Friday
12 PM (IST)
1hr-1:30hr / Per Session