AWS Developer

The Developing on AWS (DODEVA) Course is designed to teach developers how to build, deploy, and maintain applications and services using Amazon Web Services. During the course, participants will learn to leverage the different features and services of AWS to develop scalable, secure and reliable solutions. One of the main goals of the course is to provide participants with a solid understanding of AWS compute services, such as Amazon EC2, AWS Lambda, and Amazon ECS. They will learn to use these services to create and deploy applications and services efficiently and reliably. The course also focuses on managing and storing data using AWS storage services, such as Amazon S3, Amazon DynamoDB, and Amazon RDS. Participants will learn to design and implement storage solutions suited to their application needs and ensure data security. Another important goal of the course is to teach participants how to integrate applications and services using communications and messaging services such as Amazon SNS, Amazon SQS, and AWS AppSync. Additionally, participants will learn to implement security and identity solutions, such as authentication and authorization, using services such as AWS Identity and Access Management (IAM) and Amazon Cognito. Finally, the course covers techniques for monitoring, debugging, and optimizing the performance of applications developed on AWS. Participants will become familiar with tools and best practices to ensure their solutions are efficient, reliable and high-performing. The course helps prepare for the AWS Certified Developer – Associate Certification exam.

Course Objectives

The main objectives of theAWS Certified Developer – Associate (DVA-C02) course are:

  1. AWS Compute Services Mastery: Understand and utilize Amazon EC2, AWS Lambda, and Amazon ECS to develop, deploy, and manage scalable applications and services effectively on AWS.
  2. Data Management Proficiency: Learn to manage and store data efficiently using AWS storage services such as Amazon S3, Amazon DynamoDB, and Amazon RDS. Design and implement storage solutions aligned with application requirements while ensuring data security.
  3. Integration Techniques: Integrate applications and services seamlessly using communication and messaging services like Amazon SNS, Amazon SQS, and AWS AppSync.
  4. Security and Identity Implementation: Implement robust security and identity solutions including authentication and authorization using AWS Identity and Access Management (IAM) and Amazon Cognito.
  5. Performance Optimization: Learn techniques for monitoring, debugging, and optimizing the performance of applications on AWS. Acquire knowledge of tools and best practices to ensure solutions are efficient, reliable, and high-performing.
  6. Scalability and Reliability: Develop skills to build scalable and reliable solutions leveraging AWS services, ensuring applications can handle varying workloads and maintain high availability.
  7. AWS Certification Preparation: Gain the knowledge and hands-on experience required to pass the AWS Certified Developer – Associate Certification exam, validating expertise in developing applications on AWS.
  8. Best Practices Adoption: Understand and apply best practices for developing, deploying, and maintaining applications and services on AWS, ensuring adherence to industry standards and maximizing efficiency

Course Certification

This course helps you prepare to take the:

AWS Certified Developer – Associate (DVA-C02)

Course Outline

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

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 highlevel 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

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

Course Mode

Instructor-Led Remote Live Classroom Training;

Trainers

Trainers are Amazon AWS accredited instructors and certified in other IT technologies, with years of practical experience in the sector and in training.

Lab Topology

For all types of delivery, the student can access the equipment and systems present in our laboratories or directly at the data centers of the Vendor or its authorized providers remotely 24 hours a day . Each participant has access to implement the various configurations thus having practical and immediate feedback on the theory addressed. Below are some scenarios taken from the laboratory activities:

Course Details

Course Prerequisites

Participation in the  AWS Cloud Practitioner Essentials Course and the  AWS Technical Essentials Course are recommended . Programming experience in at least one language. Participation in the  Python Developer Course is recommended .

Course Duration

3 days

Course Frequency

Course Duration: 5 days (9.00 to 17.00) - Ask for other types of attendance.

Course Date

  • AWS Developer Course (Intensive Formula) – On Request – 09:00 – 17:00

Steps to Enroll

Registration takes place by asking to be contacted from the following link, or by contacting the office at the international number +355 45 301 313 or by sending a request to the email info@hadartraining.com