Day 1
 
Module 1: Course Overview
	- Logistics
 
	- Student resources
 
	- Agenda
 
	- Introductions
 
 
Module 2: Building a Web Application on AWS 
	- Discuss the architecture of the application you are going to build during this course
 
	- Explore the AWS services needed to build your web application
 
	- Discover how to store, manage, and host your web application
 
 
Module 3: Getting Started with Development on AWS
	- Describe how to access AWS services programmatically
 
	- List some programmatic patterns and how they provide efficiencies within AWS SDKs and AWS CLI
 
	- Explain the value of AWS Cloud9
 
 
Module 4: Getting Started with Permissions
	- Review AWS Identity and Access Management (IAM) features and components permissions to support a development environment
 
	- Demonstrate how to test AWS IAM permissions
 
	- Configure your IDEs and SDKs to support a development environment
 
	- Demonstrate accessing AWS services using SDKs and AWS Cloud9
 
 
Lab 1: Configure the Developer Environment
	- Connect to a developer environment
 
	- Verify that the IDE and the AWS CLI are installed and configured to use the application profile
 
	- Verify that the necessary permissions have been granted to run AWS CLI commands
 
	- Assign an AWS IAM policy to a role to delete an Amazon S3 bucket
 
 
Module 5: Getting Started with Storage
	- Describe the basic concepts of Amazon S3
 
	- List the options for securing data using Amazon S3
 
	- Define SDK dependencies for your code
 
	- Explain how to connect to the Amazon S3 service
 
	- Describe request and response objects
 
 
Module 6: Processing Your Storage Operations
	- Perform key bucket and object operations
 
	- Explain how to handle multiple and large objects
 
	- Create and configure an Amazon S3 bucket to host a static website
 
	- Grant temporary access to your objects
 
	- Demonstrate performing Amazon S3 operations using SDKs
 
 
Lab 2: Develop Solutions Using Amazon S3 
	- Interact with Amazon S3 programmatically using AWS SDKs and the AWS CLI
 
	- Create a bucket using waiters and verify service exceptions codes
 
	- Build the needed requests to upload an Amazon S3 object with metadata attached
 
	- Build requests to download an object from the bucket, process data, and upload the object back to the bucket
 
	- Configure a bucket to host the website and sync the source files using the AWS CLI
 
	- Add IAM bucket policies to access the S3 website
 
 
Day 2 
 
Module 7: Getting Started with Databases 
	- Describe the key components of DynamoDB
 
	- Explain how to connect to DynamoDB
 
	- Describe how to build a request object
 
	- Explain how to read a response object
 
	- List the most common troubleshooting exceptions
 
 
Module 8: Processing Your Database Operations
	- Develop programs to interact with DynamoDB using AWS SDKs
 
	- Perform CRUD operations to access tables, indexes, and data
 
	- Describe developer best practices when accessing DynamoDB
 
	- Review caching options for DynamoDB to improve performance
 
	- Perform DynamoDB operations using SDK
 
 
Lab 3: Develop Solutions Using Amazon DynamoDB
	- Interact with Amazon DynamoDB programmatically using low-level, document, and high-level APIs in your programs
 
	- Retrieve items from a table using key attributes, filters, expressions, and paginations
 
	- Load a table by reading JSON objects from a file
 
	- Search items from a table based on key attributes, filters, expressions, and paginations
 
	- Update items by adding new attributes and changing data conditionally
 
	- Access DynamoDB data using PartiQL and object-persistence models where applicable
 
 
Module 9: Processing Your Application Logic
	- Develop a Lambda function using SDKs
 
	- Configure triggers and permissions for Lambda functions
 
	- Test, deploy, and monitor Lambda functions
 
 
Lab 4: Develop Solutions Using AWS Lambda Functions
	- Create AWS Lambda functions and interact programmatically using AWS SDKs and AWS CLI
 
	- Configure AWS Lambda functions to use the environment variables and to integrate with other services
 
	- Generate Amazon S3 pre-signed URLs using AWS SDKs and verify the access to bucket objects
 
	- Deploy the AWS Lambda functions with .zip file archives through your IDE and test as needed
 
	- Invoke AWS Lambda functions using the AWS Console and AWS CLI
 
 
Module 10: Managing the APIs
	- Describe the key components of API Gateway
 
	- Develop API Gateway resources to integrate with AWS services
 
	- Configure API request and response calls for your application endpoints
 
	- Test API resources and deploy your application API endpoint
 
	- Demonstrate creating API Gateway resources to interact with your application APIs
 
 
Lab 5: Develop Solutions Using Amazon API Gateway
	- Create RESTful API Gateway resources and configure CORS for your application
 
	- Integrate API methods with AWS Lambda functions to process application data
 
	- Configure mapping templates to transform the pass-through data during method integration
 
	- Create a request model for API methods to ensure that the pass-through data format complies with application rules
 
	- Deploy the API Gateway to a stage and validate the results using the API endpoint
 
 
Day 3
 
Module 11: Building a Modern Application 
	- Describe the challenges with traditional architectures
 
	- Describe the microservice architecture and benefits
 
	- Explain various approaches for designing microservice applications
 
	- Explain steps involved in decoupling monolithic applications
 
	- Demonstrate the orchestration of Lambda Functions using AWS Step Functions
 
 
Module 12: Granting Access to Your Application Users
	- Analyze the evolution of security protocols
 
	- Explore the authentication process using Amazon Cognito
 
	- Manage user access and authorize serverless APIs
 
	- Observe best practices for implementing Amazon Cognito
 
	- Demonstrate the integration of Amazon Cognito and review JWT tokens
 
 
Lab 6: Capstone – Complete the Application Build
	- Create a Userpool and an Application Client for your web application using
 
	- Add new users and confirm their ability to sign-in using the Amazon Cognito CLI
 
	- Configure API Gateway methods to use Amazon Cognito as an authorizer
 
	- Verify JWT authentication tokens are generated during API Gateway calls
 
	- Develop API Gateway resources rapidly using a Swagger importing strategy
 
	- Set up your web application frontend to use Amazon Cognito and API Gateway configurations and verify the entire application functionality
 
 
Module 13: Deploying Your Application
	- Identify risks associated with traditional software development practices
 
	- Understand DevOps methodology
 
	- Configure an AWS SAM template to deploy a serverless application
 
	- Describe various application deployment strategies
 
	- Demonstrate deploying a serverless application using AWS SAM
 
 
Module 14: Observing Your Application 
	- Differentiate between monitoring and observability
 
	- Evaluate why observability is necessary in modern development and key components
 
	- Understand CloudWatch’s part in configuring the observability
 
	- Demonstrate using CloudWatch Application Insights to monitor applications
 
	- Demonstrate using X-Ray to debug your applications
 
 
Lab 7: Observe the Application Using AWS X-Ray
	- Instrument your application code to use AWS X-Ray capabilities
 
	- Enable your application deployment package to generate logs
 
	- Understand the key components of an AWS SAM template and deploy your application
 
	- Create AWS X-Ray service maps to observe end-to-end processing behavior of your application
 
	- Analyze and debug application issues using AWS X-Ray traces and annotations
 
 
Module 15: Course Wrap-up
	- Course overview
 
	- AWS training courses
 
	- Certifications
 
	- Course feedback