<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Workshops on Praveen Salitra</title><link>https://praveen.salitra.io/workshops/</link><description>Recent content in Workshops on Praveen Salitra</description><generator>Hugo</generator><language>en</language><lastBuildDate>Thu, 25 Mar 2021 00:00:00 +0000</lastBuildDate><atom:link href="https://praveen.salitra.io/workshops/index.xml" rel="self" type="application/rss+xml"/><item><title>Terraform with Azure</title><link>https://praveen.salitra.io/workshops/2021-03-terraform-azure/</link><pubDate>Thu, 25 Mar 2021 00:00:00 +0000</pubDate><guid>https://praveen.salitra.io/workshops/2021-03-terraform-azure/</guid><description>&lt;p&gt;This half-day online workshop focused the concepts of Infrastructure as Code using Terraform. I chose Azure Cloud as the target Cloud Service Provider and covered:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Infrastructure as Code (IaC) Landscape&lt;/li&gt;&#10;&lt;li&gt;Terraform OSS, Cloud, Enterprise&lt;/li&gt;&#10;&lt;li&gt;Terraform Concepts&#10;&lt;ul&gt;&#10;&lt;li&gt;CLI&lt;/li&gt;&#10;&lt;li&gt;State&lt;/li&gt;&#10;&lt;li&gt;Providers&lt;/li&gt;&#10;&lt;li&gt;Workspaces&lt;/li&gt;&#10;&lt;li&gt;Basic Commands&lt;/li&gt;&#10;&lt;li&gt;Plan vs Apply&lt;/li&gt;&#10;&lt;li&gt;Modules&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;Hands-On&#10;&lt;ul&gt;&#10;&lt;li&gt;Setup an AKS cluster and Azure PostgreSQL service&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;Review a Production Setup&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;During the workshop, the 40+ attendees followed the hands-on exercises on deploying a microservice in a containerized fashion on Azure Kubernetes Service and accessing those endpoints using Ingress Controllers. Entire cluster deployment as well as Kubernetes workload was deployed using Terraform.&lt;/p&gt;</description></item><item><title>Cloud Networking 101</title><link>https://praveen.salitra.io/workshops/2021-03-cloud-networking-101/</link><pubDate>Thu, 04 Mar 2021 00:00:00 +0000</pubDate><guid>https://praveen.salitra.io/workshops/2021-03-cloud-networking-101/</guid><description>&lt;p&gt;I went through the concepts of:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Network Models (OSI and TCP/IP)&lt;/li&gt;&#10;&lt;li&gt;IP Addresses&#10;&lt;ul&gt;&#10;&lt;li&gt;IPv4 vs IPv6&lt;/li&gt;&#10;&lt;li&gt;CIDR and Subnet Masking&lt;/li&gt;&#10;&lt;li&gt;Private Networks&lt;/li&gt;&#10;&lt;li&gt;VPC/VNET, Subnets&lt;/li&gt;&#10;&lt;li&gt;NAT Gateways&lt;/li&gt;&#10;&lt;li&gt;Sizing Recommendations&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;DNS&lt;/li&gt;&#10;&lt;li&gt;Load Balancers&#10;&lt;ul&gt;&#10;&lt;li&gt;Layer 4 vs Layer 7&lt;/li&gt;&#10;&lt;li&gt;LB vs Proxy&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;Network Security&#10;&lt;ul&gt;&#10;&lt;li&gt;AWS Security Groups&lt;/li&gt;&#10;&lt;li&gt;AWS NACLs&lt;/li&gt;&#10;&lt;li&gt;Azure Firewalls&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;/ul&gt;</description></item><item><title>Container Orchestration with Azure Kubernetes Service</title><link>https://praveen.salitra.io/workshops/2020-03-containers-kubernetes-orchestration-aks/</link><pubDate>Fri, 06 Mar 2020 00:00:00 +0000</pubDate><guid>https://praveen.salitra.io/workshops/2020-03-containers-kubernetes-orchestration-aks/</guid><description>&lt;p&gt;This one-day in-person workshop focused on bringing concepts of Containers and Container Orchestration to the front-end and back-end engineers. During the day, I covered:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Container vs Virtual Machine&lt;/li&gt;&#10;&lt;li&gt;Container Fundamentals&lt;/li&gt;&#10;&lt;li&gt;Docker and Docker Compose&lt;/li&gt;&#10;&lt;li&gt;Docker Volumes&lt;/li&gt;&#10;&lt;li&gt;Overview of the Kubernetes Architecture&lt;/li&gt;&#10;&lt;li&gt;Azure Kubernetes Service (AKS) Setup using Terraform&lt;/li&gt;&#10;&lt;li&gt;Azure Active Directory integration with AKS&lt;/li&gt;&#10;&lt;li&gt;&lt;code&gt;kubectl&lt;/code&gt; Fundamentals&lt;/li&gt;&#10;&lt;li&gt;Ingress Controller Fundamentals and Installation&lt;/li&gt;&#10;&lt;li&gt;&lt;code&gt;externaldns&lt;/code&gt; installation&lt;/li&gt;&#10;&lt;li&gt;SSL certification automation using &lt;code&gt;cert-manager&lt;/code&gt;&lt;/li&gt;&#10;&lt;li&gt;Kubernetes Persistent Volumes&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;During the workshop, the 50+ attendees followed the hands-on exercises on deploying a microservice (Spring Boot, Python, and Node) in a containerized fashion on Azure Kubernetes Service and accessing those endpoints using Ingress Controllers. The services were backed by PostgreSQL databases running along with Kubernetes Persistent Volume attached to the Pod.&lt;/p&gt;</description></item><item><title>RESTful APIs with Node and NestJS</title><link>https://praveen.salitra.io/workshops/2019-04-restful-apis-node-nestjs/</link><pubDate>Mon, 01 Apr 2019 00:00:00 +0000</pubDate><guid>https://praveen.salitra.io/workshops/2019-04-restful-apis-node-nestjs/</guid><description>&lt;p&gt;A brand new workshop focusing on developing RESTful API microservices using modern server side JavaScript frameworks like NestJS and TypeORM. Over the 5 day period (2 hours each) of this online workshop, I covered:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;JavaScript Fundamentals&lt;/li&gt;&#10;&lt;li&gt;TypeScript Fundamentals&lt;/li&gt;&#10;&lt;li&gt;NestJS Fundamentals&lt;/li&gt;&#10;&lt;li&gt;Developing RESTful APIs with NestJS&lt;/li&gt;&#10;&lt;li&gt;TypeORM Fundamentals and connectivity with PostgreSQL&lt;/li&gt;&#10;&lt;li&gt;Swagger Integration for API documentation&lt;/li&gt;&#10;&lt;li&gt;Testing (unit and integration) NestJS based RESTful API&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;This workshop paved the way for using JavaScript on the fullstack: front-end and back-end RESTful APIs on lot of our future projects. We were able to use the same concepts of JavaScript/TypeScript both for React/Angular based web apps and for the NestJS based APIs.&lt;/p&gt;</description></item><item><title>Kubernetes Masterclass - Fall 2018</title><link>https://praveen.salitra.io/workshops/2018-09-kubernetes-masterclass-fall-2018/</link><pubDate>Thu, 27 Sep 2018 00:00:00 +0000</pubDate><guid>https://praveen.salitra.io/workshops/2018-09-kubernetes-masterclass-fall-2018/</guid><description>&lt;h2 id="1-deep-dive-into-kubernetes-architecture-and-components"&gt;1. Deep Dive into Kubernetes Architecture and Components&lt;/h2&gt;&#10;&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;&#10;&#9;&#9;&#9;&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/zrwM4PE6Kcs?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;&#10;&#9;&#9;&lt;/div&gt;&#10;&#10;&lt;p&gt;In this session, I went through an overview of containers and understood how Kubernetes has become Gold Standard in container orchestration frameworks.&lt;/p&gt;&#10;&lt;p&gt;I answered questions like:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;What is a container?&lt;/li&gt;&#10;&lt;li&gt;Why you should use containers?&lt;/li&gt;&#10;&lt;li&gt;What infrastructure do you need to run containers?&lt;/li&gt;&#10;&lt;li&gt;How Kubernetes (aka k8s) fits into the world of containers?&lt;/li&gt;&#10;&lt;li&gt;What are the components that make a Kubernetes cluster?&lt;/li&gt;&#10;&lt;li&gt;How Kubernetes orchestrates containers?&lt;/li&gt;&#10;&lt;li&gt;Who are the competitors of Kubernetes?&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="2-setup-a-high-available-kubernetes-cluster-on-aws-using-kops"&gt;2. Setup a High-Available Kubernetes Cluster on AWS using kops&lt;/h2&gt;&#10;&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;&#10;&#9;&#9;&#9;&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/UmzlX5INInQ?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;&#10;&#9;&#9;&lt;/div&gt;&#10;&#10;&lt;p&gt;In this session, I talked about how to setup Kubernetes on the local machine. And then went through the complex production-ready setup of Kubernetes on AWS infrastructure.&lt;/p&gt;</description></item><item><title>Modern Microservices with Spring Boot and Docker</title><link>https://praveen.salitra.io/workshops/2018-06-modern-microservices-springboot-docker/</link><pubDate>Fri, 01 Jun 2018 00:00:00 +0000</pubDate><guid>https://praveen.salitra.io/workshops/2018-06-modern-microservices-springboot-docker/</guid><description>&lt;p&gt;A brand new workshop focusing on Spring Boot based microservice development and containerization using Docker and Docker Swarm. Over the 18 day period (2 hours each) of this online workshop, I covered:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Git&lt;/li&gt;&#10;&lt;li&gt;Java8 Fundamentals&lt;/li&gt;&#10;&lt;li&gt;Spring Fundamentals&lt;/li&gt;&#10;&lt;li&gt;Spring Boot for implementing RESTful API&lt;/li&gt;&#10;&lt;li&gt;Spring Data JPA for Database Operations&lt;/li&gt;&#10;&lt;li&gt;Swagger for API documentation&lt;/li&gt;&#10;&lt;li&gt;Docker and Docker Compose&lt;/li&gt;&#10;&lt;li&gt;Secrets Management with Docker and Spring Cloud&lt;/li&gt;&#10;&lt;li&gt;Jenkins deployment and configuration on AWS EC2 cluster&lt;/li&gt;&#10;&lt;li&gt;AWS RDS&lt;/li&gt;&#10;&lt;li&gt;AWS Route 53, Load Balancer&lt;/li&gt;&#10;&lt;li&gt;Testing RESTful APIs&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;The attendees worked on a workshop project focused on using above technologies and submitting it for the final review.&lt;/p&gt;</description></item><item><title>Getting Started with Containers on AWS</title><link>https://praveen.salitra.io/workshops/2017-11-getting-started-with-containers-aws/</link><pubDate>Thu, 02 Nov 2017 00:00:00 +0000</pubDate><guid>https://praveen.salitra.io/workshops/2017-11-getting-started-with-containers-aws/</guid><description>&lt;p&gt;This two day workshop focused on bringing Cloud concepts to the front-end and back-end engineers. During the two day in-person sessions, I covered:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;AWS Cloud - Regions, AZs&lt;/li&gt;&#10;&lt;li&gt;AWS Console, AWS IAM, AWS SDK, CLI&lt;/li&gt;&#10;&lt;li&gt;Domain Name System (DNS), Route 53&lt;/li&gt;&#10;&lt;li&gt;AWS SES, SNS&lt;/li&gt;&#10;&lt;li&gt;AWS S3, CloudFront&lt;/li&gt;&#10;&lt;li&gt;Nginx, Load Balancing&lt;/li&gt;&#10;&lt;li&gt;AWS EC2, AMI, EBS&lt;/li&gt;&#10;&lt;li&gt;AWS VPC, Subnets, Security Groups, NACL&lt;/li&gt;&#10;&lt;li&gt;Docker, Docker Registry&lt;/li&gt;&#10;&lt;li&gt;Docker Compose&lt;/li&gt;&#10;&lt;li&gt;Docker Swarm&lt;/li&gt;&#10;&lt;li&gt;AWS RDS&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;During the workshop, the 80+ attendees followed the hands-on exercises on deploying a microservice (Spring Boot and Node) in a containerized fashion on Docker Swarm running on AWS EC2 cluster.&lt;/p&gt;</description></item><item><title>Fullstack Web Development Using Angular and Spring Boot</title><link>https://praveen.salitra.io/workshops/2017-08-fullstack-web-development-angular-springboot/</link><pubDate>Tue, 01 Aug 2017 00:00:00 +0000</pubDate><guid>https://praveen.salitra.io/workshops/2017-08-fullstack-web-development-angular-springboot/</guid><description>&lt;p&gt;A brand new workshop focusing on newer Angular (&amp;gt;2) and Spring Boot based microservice development. Over the 25 day period (2 hours each) of this online workshop, I covered:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Git&lt;/li&gt;&#10;&lt;li&gt;JavaScript Fundamentals and Advance Topics&lt;/li&gt;&#10;&lt;li&gt;TypeScript Fundamentals&lt;/li&gt;&#10;&lt;li&gt;Angular Fundamentals&lt;/li&gt;&#10;&lt;li&gt;Testing Angular Components&lt;/li&gt;&#10;&lt;li&gt;Java8 Fundamentals&lt;/li&gt;&#10;&lt;li&gt;Spring Fundamentals&lt;/li&gt;&#10;&lt;li&gt;Spring Boot for implementing RESTful API&lt;/li&gt;&#10;&lt;li&gt;Spring Data JPA for Database Operations&lt;/li&gt;&#10;&lt;li&gt;Swagger for API documentation&lt;/li&gt;&#10;&lt;li&gt;Testing RESTful APIs&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;The attendees worked on a workshop project focused on using above technologies and submitting it for the final review.&lt;/p&gt;</description></item><item><title>RESTful APIs with Java8 and Spring Boot</title><link>https://praveen.salitra.io/workshops/2016-04-restful-apis-java8-springboot/</link><pubDate>Fri, 01 Apr 2016 00:00:00 +0000</pubDate><guid>https://praveen.salitra.io/workshops/2016-04-restful-apis-java8-springboot/</guid><description>&lt;p&gt;A huge upgrade to my previous Java workshops, this series focused on developing RESTful APIs with the popular microservice architecture in the mind. Over the 16 day period (2 hours each) of this online workshop, I covered:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Git&lt;/li&gt;&#10;&lt;li&gt;Maven&lt;/li&gt;&#10;&lt;li&gt;Java8 Fundamentals&lt;/li&gt;&#10;&lt;li&gt;Spring Fundamentals&lt;/li&gt;&#10;&lt;li&gt;JPA with Hibernate and Spring ORM&lt;/li&gt;&#10;&lt;li&gt;Spring Boot for implementing RESTful API&lt;/li&gt;&#10;&lt;li&gt;Spring Data JPA for Database Operations&lt;/li&gt;&#10;&lt;li&gt;Swagger for API documentation&lt;/li&gt;&#10;&lt;li&gt;Testing RESTful APIs&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;The attendees worked on a workshop project focused on using above technologies and submitting it for the final review.&lt;/p&gt;</description></item><item><title>Fullstack Web Development Using AngularJS and Spring</title><link>https://praveen.salitra.io/workshops/2015-03-fullstack-web-development-angularjs-spring/</link><pubDate>Mon, 02 Mar 2015 00:00:00 +0000</pubDate><guid>https://praveen.salitra.io/workshops/2015-03-fullstack-web-development-angularjs-spring/</guid><description>&lt;p&gt;This workshop series focused on fullstack web development with front-end and RESTful APIs with the most popular framework at the time. Over the 28 day period (2 hours each) of this online workshop, I covered:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Git&lt;/li&gt;&#10;&lt;li&gt;Grunt and NPM&lt;/li&gt;&#10;&lt;li&gt;HTML5 Fundamentals&lt;/li&gt;&#10;&lt;li&gt;CSS3 Fundamentals&lt;/li&gt;&#10;&lt;li&gt;JavaScript Fundamentals and Advance Topics&lt;/li&gt;&#10;&lt;li&gt;AngularJS Fundamentals&lt;/li&gt;&#10;&lt;li&gt;Testing AngularJS Components&lt;/li&gt;&#10;&lt;li&gt;Maven&lt;/li&gt;&#10;&lt;li&gt;Spring Fundamentals&lt;/li&gt;&#10;&lt;li&gt;JPA with Hibernate and Spring ORM&lt;/li&gt;&#10;&lt;li&gt;Spring for implementing RESTful API&lt;/li&gt;&#10;&lt;li&gt;Testing RESTful APIs&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;The attendees worked on a workshop project focused on using above technologies and submitting it for the final review.&lt;/p&gt;</description></item><item><title>RESTful APIs with Java and Jersey</title><link>https://praveen.salitra.io/workshops/2014-08-restful-apis-java-jersey/</link><pubDate>Fri, 01 Aug 2014 00:00:00 +0000</pubDate><guid>https://praveen.salitra.io/workshops/2014-08-restful-apis-java-jersey/</guid><description>&lt;p&gt;This workshop series focused on developing RESTful APIs at the time when old school MVC patterns were a norm. Over the 5 day period (2 hours each) of this online workshop, I covered:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Git&lt;/li&gt;&#10;&lt;li&gt;Maven&lt;/li&gt;&#10;&lt;li&gt;Java Fundamentals&lt;/li&gt;&#10;&lt;li&gt;JPA with EclipseLink&lt;/li&gt;&#10;&lt;li&gt;MySQL&lt;/li&gt;&#10;&lt;li&gt;Jersey for implementing RESTful API&lt;/li&gt;&#10;&lt;li&gt;Testing RESTful APIs&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;The attendees worked on a workshop project focused on using above technologies and submitting it for the final review.&lt;/p&gt;&#10;&lt;p&gt;The same series was repeated for the next 8 months and helped around 500+ engineering graduates to get a head start in the backend engineering and RESTful APIs.&lt;/p&gt;</description></item><item><title>Modern Web Development with AngularJS</title><link>https://praveen.salitra.io/workshops/2014-04-modern-web-development-angularjs/</link><pubDate>Wed, 02 Apr 2014 00:00:00 +0000</pubDate><guid>https://praveen.salitra.io/workshops/2014-04-modern-web-development-angularjs/</guid><description>&lt;p&gt;This is the first workshop that I have ever done on the modern technologies and frameworks. Over the 21 day period (2 hours each) of this online workshop, I covered:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Git&lt;/li&gt;&#10;&lt;li&gt;Grunt and NPM&lt;/li&gt;&#10;&lt;li&gt;HTML5 Fundamentals&lt;/li&gt;&#10;&lt;li&gt;CSS3 Fundamentals&lt;/li&gt;&#10;&lt;li&gt;JavaScript Fundamentals and Advance Topics&lt;/li&gt;&#10;&lt;li&gt;AngularJS Fundamentals&lt;/li&gt;&#10;&lt;li&gt;Testing AngularJS Components&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;The attendees worked on a workshop project focused on using above technologies and submitting it for the final review.&lt;/p&gt;&#10;&lt;p&gt;The same series was repeated for the next 12 months and helped around 1050+ engineering graduates to get a head start in the web development.&lt;/p&gt;</description></item></channel></rss>