Custom workshops

I provide training tailored to customer's needs.

Areas of expertise:

✔️ .NET/MS Web Stack;

✔️ JavaScript/React.js;

✔️ Cloud/DevOps/Kubernetes/Azure/GCP;

✔️ Managing teams and all the related teamwork stuff.

You can refer to some sample outlines I provide below to give you a better idea of what I can cover and also help you find this page. The outlines are for example only, and I will need to prepare the materials to provide the training, so it's going to be more expensive as compared to the prepackaged workshops I provide, but still cost-effective. The exact budget will depend on your needs, event format, time frame and the audience.If you see something covering 30% of what you are looking for, there is a fair chance I will be able to provide the custom training. E.g. I you see something "Advanced", I can cover "Basics" and vice versa. Please, don't hesitate to fill the form or write me an email to find out.

Advanced React Topics

(this is a sample outline)

Advanced hooks

  • Memoization

  • useContext, useEffect

  • useMemo, useCallback and useRef

  • useImperativeHandle

  • useLayoutEffect

React Portal. React Context

Work with side-effects in Redux

  • Redux-saga

  • Redux-observable

Code splitting and lazy loading

Advanced Server-Side Rendering

Testing

  • Testing-library-dom

  • Testing Redux

  • Testing hooks

  • E2E testing

GraphQL

  • Syntax

  • Facebook Relay

  • Apollo

UI libraries

  • Formik

  • Ant Design

  • React-hook-form

Manyrepo and Monorepo

  • Lerna

  • Rush

  • PNPM

Web Applications Development Basics

(this is a sample outline)

History and Evolution

  • History of the World Wide Web

  • Web Application evolution.

Functionality and Content

  • Range of Functions provided

  • Static Content

  • Dynamic Content

Standards and Accessibility

  • W3C

  • Visual and Auditory Considerations

  • Static, Dynamic and Rich Content Considerations

  • Impact of Bandwidth

Legal Issues

  • Data Protection

  • Security

  • Privacy

  • Copyright

Web Application Design Methodologies

Process

  • Identification of need, (Client and User)

  • Requirements gathering

  • Requirements Specification

Design Techniques

  • Site Maps

  • Story Boarding

  • Prototyping

Development, Testing and Deployment

Web Page Layers

  • Mark-up

  • Source

  • Code Behind

Web Page Components

  • Forms

  • Tables

  • Frames

  • Content Panels

  • Visible Controls

  • Hidden Controls

Programming Techniques

  • Server Side

  • Client Side

  • Code-Behind Page Development

  • Page Interaction

Intro into languages: HTML, XHTML, HTML5, XML, JavaScript, JQuery, VB .Net/C# .Net

Validation Techniques

  • Validating User data

  • Required Field validation

Handling errors

  • Try…Catch Code Blocks

  • Error Tracking and Reporting

Styling

  • CSS

  • Themes

Testing

  • Strategies

  • Tools

Deployment

  • Publishing

  • SSL

  • Session Management

  • Maintenance

Web Applications Testing Basics

(this is a sample outline)

Different types of tests

  • Functional testing

  • Performance testing

  • Configuration testing

  • Usability testing

  • Security testing

Practical exercise include

  • Dealing with HTTP requests and Cookie

  • Testing code validity and code conformance to web standards

  • Configuration testing with respect to various factors

  • Usability testing

  • Security testing and analysis

Basic Kubernetes

(this is a sample outline)

  • History

  • Cluster

  • API

  • YAML

  • Namespaces

  • Pods

  • Managing objects

  • Resource requirements and limits

  • Labels and annotations

  • ReplicaSets

  • Deployments

  • Services

  • ConfigMaps & Secrets

  • Volumes

Programming with .NET

(this is a sample outline)

.NET Architecture, .NET Core & supported languages

Creating Methods and Handling Exceptions

  • Creating and Invoking Methods

  • Creating Overloaded Methods and Using Optional and Output Parameters

  • Handling Exceptions

Creating Classes and Implementing Type-safe Collections

  • Designing and implementing classes

  • Adding validation to classes

  • Creating class hierarchies

  • Class library projects

  • Extending .NET Framework classes

  • Creating generic types

Reading and Writing Data

  • Reading and Writing Files

  • Serializing and Deserializing Data

  • Performing I/O Using Streams

Working with XML

  • Introduction to XML

  • Reading and writing XML files

Accessing a Database

  • Displaying information form database programmatically

  • Modifying (Insert, Update & Delete) information form database programmatically

Testing

  • Test types

  • Frameworks and runners

Programming with ASP.NET Core MVC

(this is a sample outline)

  • Exploring ASP.NET Core MVC

  • Designing ASP.NET Core MVC Web Applications

  • Configure Middlewares and Services in ASP.NET Core

  • Developing Controllers

  • Developing Views

  • Developing Models

  • Using Entity Framework Core in ASP.NET Core

  • Using Layouts, CSS and JavaScript in ASP.NET Core MVC

  • Client-Side Development

  • Testing and Troubleshooting

  • Managing Security

  • Performance and Communication

  • Implementing Web APIs

  • Hosting and Deployment

Creating a Production Ready Application with ASP.NET Core

(this is a sample outline)

Hosting

  • Kestrel, gateways and reverse proxies

  • Cloud vs self-hosted

  • Considering Docker and Kubernetes

Structuring your application

  • Configuration

  • Dependency injection

  • Development vs Production

  • Microservices vs Monolith

  • Classic vs Single Page

  • Session, cookies, JWTs

Data access and backend considerations

  • Choosing databases

  • Choosing storage solutions

  • Using third party service integrations

Cross-cutting concerns

  • Auth

  • Security

  • Logging

  • Error reporting

Running the application in production

  • Monitoring and logging

  • Approaches

  • Cloud solutions

  • Distributed logging

  • Backups

  • Performance

    • CDNs

  • Durability, fault tolerance and high availability

  • Security considerations

Introduction to JavaScript

(this is a sample outline)

  • ECMAScript

  • JSON, objects and arrays

  • Working with date and time

  • Using JavaScript in browser: DOM Model

  • Events in Browser

  • Working with CSS and Managing Styles

  • Working with Modules in JavaScript, NPM, Webpack

  • Classes and Inheritance in JavaScript

  • Functional Programming in JavaScript

  • Immutability, Testing, MVC Pattern

  • Asynchronicity in JavaScript. Promises

  • Working with the server. HTTP Protocol. REST Services

  • AXIOS Library. WebSocket Protocol

Implementing Oauth2 and OpenId Connect

(this is a sample outline)

  • Intro

  • Flows

  • Identity provider/Authority/Server

  • Practical implementation in a desktop client

  • Practical implementation in a web application

  • JavaScript client

  • Practical implementation in a mobile application

  • Using Identity as a Service Solutions

    • IdentityServer

    • Azure Active Directory

Continuous Delivery with Azure DevOps

(this is a sample outline)

  • DevOps & CD in 30 minutes

  • Git refresher

  • Docker essentials

  • Kubernetes crash course

  • Dockerizing applications

  • Azure Kubernetes Service

  • Configuration Management and Infrastructure as Code (Iac)

  • Application insights & Azure Monitor

  • Building a CI/CD pipeline with Azure Pipelines

  • Gates and advanced pipeline features

  • Monitoring

Advanced Azure Application Insights Practical Workshop

(this is a sample outline)

  • Setting App Insights Monitoring

    • VM

    • Web App / App Service

    • Azure Kubernetes Service (AKS) - Approaches and limitations

    • Custom events

  • Azure Logs Analytics

    • Kusto query language for cross-correlating telemetry from different sources

  • Troubleshooting

    • Debugging Slow Pages

    • Debugging Exceptions

    • Investigating Root Causes

    • Profiling

  • Monitoring

    • Alerts

      • Simple & based on live queries

    • Availability tests

Google Operations Suite (Stackdriver) Practical Workshop

(this is a sample outline)

  • Setting

    • Google Compute Engine (VMs)

    • App Engine Standard & Flex

    • Google Kubernetes Engine (GKE)

  • Analyzing Events & Metrics with BigQuery

  • Troubleshooting

    • Debugging Slow Pages

    • Debugging Exceptions

    • Investigating Root Causes

    • Profiling

  • Monitoring

    • Alerts

Implementing Scrum with Azure Boards

(this is a sample outline)

  • Scrum in 30 minutes

  • Items, Features, Epics

    • Using Queries

  • Kanban Board features

  • Managing backlog

  • Planning sprints

  • Tracking resource availability

  • Linking items to commits, extending items, using templates

  • Dashboards to track productivity

  • Using wiki to capture knowledge