What you'll learn:
- Patterns of Event-Driven Microservices Architecture
- Building and Deploying AWS Lambda Microservices with Python
- Building and Deploying Containerized Microservices with Docker, FastAPI and AWS ECS
- Eliminate Dependencies using Event Bus and Messages
- Orchestrating Microservices with Choreography and Orchestrator Patterns
- Building Fast and Resilient Systems using CQRS
- Building Resiliant Systems using Event-Sourcing and Circuit Breaker
- Eliminating Network Dependencies using Service Discovery Pattern
Microservices architecture has gained popularity and is now widely used by solution architects and developers to build scalable, maintainable, and secure software systems and applications.
Although microservices have significant benefits, building and maintaining a complex system can be challenging. Some frameworks, such as Django, tried to reduce this complexity and overhead with a "battery-included" approach, which takes care of essential aspects of a microservices-based ecosystem in the background.
With the advent of public cloud services such as Amazon Web Services (AWS), applications have become distributed. Such distributed applications use the native services of AWS, such as Event Bus, APIGateway and Security, to form a Cloud-Native application.
Unfortunately, frameworks like Django are unsuitable for building a modern cloud-native distributed system because they promote monolithic architecture and may produce significant service-level dependencies. Such frameworks also may impede developers from learning the nitty-gritty of how event-driven microservices work.
This course teaches how a modern distributed system is architected and coded via a complete Hotel Booking System. You will be hands-on and will code this system with me. This hotel booking system utilises the native services of Amazon Web Services (AWS) and Event-Driven architecture to build a system that is easily maintainable, resillient and can scale virtually unlimited.
What you will learn:
The architecture of a modern event-driven and cloud-native distributed system.
AWS services are used to build microservices, including Incognito, API Gateway, Lambda, ECS, DynamoDB, S3, SNS, CloudMap, and Secrets Manager.
Python coding for building small and independent microservices using FastAPI. If you prefer Flask for creating APIs, you can use that instead.
Serverless Python Microservices.
Architectural patterns for microservices, including APIGateway, Event Bus, Circuit Breaker, CQRS, and more.
Containerised Docker Python Microservices.
What is not included:
Web Development. I have, on purpose, not included coding a web UI using a Javascript framework, i.e., React, so that we focus solely on microservices. The course comes with a simple HTML/Javascript UI. This is NOT a full-stack development course.
Legacy microservices and web frameworks such as Django.
What you must already know:
Elementary-level Python programming.
Intermediate-level knowledge of Amazon Web Services (AWS). I will teach you in details how each service is configured; however, you will need some AWS experience.
Basic understanding of what containers and Docker are.
To successfully master the architecting and building of Python microservices, you must come in with an open mind and be ready for a paradigm shift. At the end of this course, you will be praised for your knowledge and skill in quickly building a modern enterprise-scale system.
Enrol now and join me on this exciting journey!