Introduction
  • Introduction
Introduction to Microservices
  • What is a Monolithic application and what problems does it have?
  • Check your learnings about Monolithic Applications
Building Our First Microservices
  • Web Advertising System: Vision and Requirements
  • Prepare the development environment
  • Solution Architecture of Web Advertisement Project
  • How to start a Microservice Project
  • Test your learnings about Microservice project development
  • Five key attributes of a well-design Microservice
  • How do Microservices work in Amazon Web Services (AWS)?
  • Quiz about a well-designed Microservice in Amazon Web Services
  • Validate your understanding of the architecture of Web Advert system
Authentication for ASP.NET Core websites with AWS Cognito
  • Authenticating users
  • Configuring AWS Cognito
  • Setup AWS Credentials + Create and Clone a GitHub Repo
  • Sign up with AWS Cognito and ASP.Net MVC Core
  • Confirm Email Addresses
  • Sign in with AWS Cognito and ASP.Net MVC Core
  • Add a Forgot Password Page
  • Implement Multi Factor Authentication (MFA)
Eventual Consistency and Compensating Transactions
  • Eventual Consistency and Compensating Transactions
  • Sharing data models between a Microservice and its client using Nuget
  • Building "Advert Api" Microservice. Using Automapper in Asp.net Core MVC
  • Building "Advert Api" Microservice. Part 2
  • Create and publish Nuget packages with .Net Core to share models
  • Checking the health of Microservices. Adding health-check endpoints to Advert Ap
  • Deploying Advert Api to sandbox server
  • Uploading advertisement images to AWS S3
Creating Resilient Service Clients with HttpClientFactory
  • HttpClientFactory: How it helps with building resilient service clients?
  • Building a service client for Advert Api with HttpClientFactory
  • Exponential Back Off and Circuit Breaker Patterns
  • Implementing Back Off and Circuit Breaker patterns with HttpClientFactory
Command and Query Segregation (CQRS) Pattern
  • Domain Driven Design and Microservices
  • What is CQRS
  • Messages, Events and Fan Out design pattern
  • Publishing a message to AWS SNS with ASP.Net Core.
  • Creating SearchWorker AWS Lambda with ElasticSearch service
  • Finishing Search Worker micro service. Storing advertisement in ElasticSearch
  • Running Web Advertisement web application
Logging for Microservices
  • Introduction to Logging and Microservices
  • Creating the AWS Logging Stack with Cognito + Kibana and Cloud Watch
  • Search API Microservice
  • Logging application logs to AWS Cloud Watch
  • Add Health Check to SearchApi
  • Implementing the Search Page with Search Api
  • Showing the list of advertisements using AWS Cloudfront
API Gateway Pattern and AWS Api Gateway
  • Introduction to Api Gateway Pattern
  • What is AWS Api Gateway
  • Creating a reverse proxy API using AWS Api Gateway for a Public API
  • Exposing a private API to the public Internet using Api Gateway VPC Link
  • Setup Amazon Web Application Firewall for API Gateway APIs
  • Implementing Authentication for Api Gateway APIs using Cognito
Securing Microservice APIs
  • Securing Web APIs with Json Web Token (Jwt) and AWS Cognito
  • Accessing private APIs via JavaScript code
Microservice Discovery
  • Introduction to Service Discovery and common discovery tools
  • Producing Swagger documentation automatically
  • Generating API Clients (SDK) from Swagger
  • Tools and deployment models of a discovery service
  • Register a Microservice instance with AWS Cloud Map
  • Self-registering ASP.NET Core services using C#
  • Discovering services with Cloud Map and C#
Continuous Integration and Delivery (CI/CD) for Microservices
  • Introduction to CI/CD for Microservices
  • Introduction to Docker and AWS Elastic Container Service
  • Building a Docker Image and Uploading it to Amazon Elastic Container Service
  • Launching Docker containers with AWS Elastic Container Services (ECS)
  • CI/CD Tooling Options for Microservices and Docker
  • Deploying Docker Images to ECS with JetBrain TeamCity
Interview Questions
  • Interview Questions
  • Thank you and congratulations!