Advanced Developing on AWS
General info
This is a three-day training course. Select the desired start date at the top right of the screen for practical information regarding the training (location, price, registration, etc.).
Course overview
The Advanced Developing on AWS course uses the real-world scenario of taking a legacy, on-premises monolithic application and refactoring it into a serverless microservices architecture. This three-day advanced course covers advanced development topics such as architecting for a cloud-native environment; deconstructing on-premises, legacy applications and repackaging them into cloud-based, cloud native architectures; and applying the tenets of the Twelve-Factor Application methodology.
Who should attend this training
This course is intended for:
- Experienced software developers who are already familiar with AWS services
Course Objectives
In this course, you will learn to:
- Analyze a monolithic application architecture to determine logical or programmatic break points where the application can be broken up across different AWS services
- Apply Twelve-Factor Application manifesto concepts and steps while migrating from a monolithic architecture
- Recommend the appropriate AWS services to develop a microservices based cloud-native application
- Use the AWS API, CLI, and SDKs to monitor and manage AWS services
- Migrate a monolithic application to a microservices application using the 6 Rs of migration
- Explain the SysOps and DevOps interdependencies necessary to deploy a microservices application in AWS
Prerequisites
We recommend that attendees of this course have:
- In-depth knowledge of at least one high-level programming language
- Working knowledge of core AWS services and public cloud implementation
- Completion of Developing on AWS, and then a minimum of six months of applying those concepts in a real-world environment
Course Content
Day One
Module 1: The cloud journey
- Common off-cloud architecture
- Introduction to Cloud Air
- Monolithic architecture
- Migration to the cloud
- Guardrails
- The six R’s of migration
- The Twelve-Factor Application Methodology
- Architectural styles and patterns
- Overview of AWS Services
- Interfacing with AWS Services
- Authentication
- Infrastructure as code and Elastic Beanstalk
- Demonstration: Walk through creating base infrastructure with AWS CloudFormation in the AWS console
- Hands-on lab 1: Deploy your monolith application using AWS Elastic Beanstalk
- DevOps
- CI/CD
- Application configuration
- Secrets management
- CI/CD Services in AWS
- Demonstration: Demo AWS Secrets Manager
Module 3: Monolith to MicroServices
- Microservices
- Serverless
- A look at Cloud Air
- Microservices using Lambda and API Gateway
- SAM
- Strangling the Monolith
- Hands-on lab: Using AWS Lambda to develop microservices
- Polyglot persistence
- DynamoDB best practices
- Distributed complexity
- Steps functions
Module 5: Resilience and Scale
- Decentralized data stores
- Amazon SQS
- Amazon SNS
- Amazon Kinesis Streams
- AWS IoT Message Broker
- Serverless event bus
- Event sourcing and CQRS
- Designing for resilience in the cloud
- Hands-on lab: Exploring the AWS messaging options
- Serverless Compute with AWS Lambda
- Authentication with Amazon Cognito
- Debugging and traceability
- Hands-on lab: Developing microservices on AWS