Duration
3 Days
Overview
This course teaches experienced developers how to programmatically interact with AWS services to build web solutions. It guides you through a high-level architectural discussion on resource selection and dives deep into using the AWS Software Development Kits (AWS SDKs) and Command Line Interface (AWS CLI) to build and deploy your cloud applications.
Exam Relevance
The content of the course has been created to deliver the information and skills required to pass the DVACO2 AWS Certified Developer Associate exam.
Hands On Activities
Hands on activities are included to reinforce the content delivered in the course. A cloud based VM environment will be provided to allow attendees to perform the hands-on activities along with account access to AWS.
Course Outline
Module 1: Building a Web Application on AWS
- Selecting an Application Architecture
- Selecting the Appropriate Services
- Storing, Managing, and Hosting your Application
Module 2: Getting Started with Development on AWS
- Accessing AWS Services Programmatically
- Programming Patterns
- AWS Cloud9
Module 3: Getting Started with Permissions
- Identity and Access Management Refresher
- Working with AWS IAM Permissions
- Configure your IDEs and SDKs for Development
- Accessing AWS services using SDKs and AWS Cloud9
Module 4: Getting Started with Storage
- Amazon S3 Storage
- Securing S3 Storage
- Define SDK Dependencies for your Code
- Connecting to the S3 Service
- Request and Response Objects
Module 5: Processing Your Storage Operations
- Perform Key Bucket and Object Operations
- Handling Multiple and Large Objects
- Hosting a Static Website on a S3 Bucket
- Grant Temporary Access to your Objects
- Performing Amazon S3 Operations using SDKs
Module 6: Getting Started with Databases
- Amazon DynamoDB
- Connecting to DynamoDB
- Building a Request Object
- Reading a Response Object
- Common Troubleshooting Exceptions
Module 7: Processing Your Database Operations
- Developing Programs to Interact with DynamoDB using AWS SDKs
- Performing CRUD Operations to Access Tables, Indexes, and Data
- Best Practices when Accessing DynamoDB
- Caching Options for DynamoDB
- Performing DynamoDB Operations using SDKs
Module 8: Processing Your Application Logic
- Developing a Lambda Function using SDKs
- Configure Triggers and Permissions for Lambda Functions
- Test, Deploy, and Monitor Lambda Functions
Module 9: Managing the APIs
- Key Components of API Gateway
- Developing API Gateway Resources to Integrate with AWS services
- Configuring API Request and Response Calls
- Test API Resources and Deploy your Application
- Creating API Gateway Resources to Interact with your Application APIs
Module 10: Building a Modern Application
- Challenges of Traditional Architectures
- Microservice Architecture and Benefits
- Various Approaches for Designing Microservice Applications
- Decoupling Monolithic Applications
- Orchestration of Lambda Functions using AWS Step Functions
Module 11: Granting Access to Your Application Users
- The Evolution of Security Protocols
- The Authentication Process using Amazon Cognito
- Manage User Access and Authorize Serverless APIs
- Best Practices for Implementing Amazon Cognito
- The Integration of Amazon Cognito and Review JWT Tokens
Module 12: Deploying Your Application
- Risks Associated with Traditional Software Development Practice
- DevOps Methodology
- Configure an AWS SAM Template to Deploy a Serverless Application
- Various Application Deployment Strategies
- Deploying a Serverless Application using AWS SAM
Module 13: Observing Your Application
- Differentiate Between Monitoring and Observability
- Why Observability is Necessary in Modern Development
- Understand CloudWatch’s Part in Configuring the Observability
- Using CloudWatch Application Insights to Monitor Applications
- Using X-Ray to Debug your Applications
Capstone Project Build a durable, scalable, and resilient solution