AWS for Developers Training

Course #:WA2734

AWS for Developers Training (Coming Soon)

The students of this training will learn the modalities for developing on the Amazon Web Services cloud platform.

This intensive 3-day course covers the most important areas of AWS that will help the students become aware of the existing cloud-grade capabilities that could be immediately translated into tangible value for their companies.

This training course is supplemented by a variety of hands-on labs that will help the attendees reinforce their theoretical knowledge of the learned material.

Audience

Developers, Team Leads, and Architects

Prerequisites

Foundational knowledge of programming and cloud computing

Duration

3 days

Outline of AWS for Developers Training

Chapter 1. Developing in the Cloud and AWS

  • Developing in the Cloud
  • Cloud vs. Data Center
  • Best Practices
  • Layout of AWS services
  • Availability Zones
  • Delivering High Availability
  • Delivering Fault Tolerance
  • Multi-region vs. Regional development
  • Inter-zone latency and data transfer charges between regions
  • Governance and regions
  • Delivering user proximity by selecting the right region
  • Using Regions for Disaster Recovery
  • Overview of AWS offerings
  • Networking and the VPC
  • Compute Offerings in AWS
  • Storage Offerings in AWS
  • Relational Database Service (RDS)
  • The Kinesis Stream Processing Environment
  • Simple Notification Service (SNS)
  • Simple Queue Service (SQS)
  • Everything is an API Call
  • Addressing API Endpoints
  • Delivering Security via API
  • Auditing API calls
  • Security with IAM
  • Managing users and credentials
  • Developing in AWS
  • AWS SDKs
  • Managing credentials and signing calls in an SDK
  • Managing Resource level access via SDK
  • Managing Client access
  • SDK integrated responses and error handling
  • AWS supported IDEs
  • AWS Developer Tools
  • AWS Code Star
  • AWS CodeCommit
  • AWS CodePipeline
  • CodeDeploy

Chapter 2. Simple Storage Service (S3)

  • Why S3?
  • Universally accessible permanent storage
  • Replicated across a region
  • Access through HTTP
  • Unlimited storage
  • Multiple network interfaces
  • 99.999999999% Durability
  • Low Cost
  • Storage costs based on amount of data stored
  • Access charged by API call
  • No bandwidth charges for data uploaded to S3, or accessed by applications within the region.
  • S3 Use cases
  • Data bus for disparate applications
  • Static website for landing pages
  • Upload facility for data
  • Distribution point for data
  • Maximum durability and accessibility backup for data
  • Lower charges for infrequently accessed data
  • Lowest charges for archived data
  • S3 Security
  • Bucket Policies
  • Preferred - fine grained access control for data.
  • User/Group authorization
  • Authorizing individual entities
  • Access Control Lists
  • Least favorable option - coarse control prone to security problems due to misconfiguration.
  • Developing with S3
  • API examples

Chapter 3. Data Models and Development

  • Databases in the cloud
  • Cloud is pay as you go
  • Match data storage according to needs
  • Applications may use multiple data storage technologies
  • Matching Data Models to Application needs
  • Relational Data Models
  • Schema-less or NoSQL data models
  • Aurora as a data platform
  • Relational model - MySQL
  • Aurora scaling
  • Aurora high availability
  • DynamoDB as a data platform
  • NoSQL model
  • Interconnection with AWS services
  • DynamoDB use cases
  • DynamoDB Concepts Technology
  • IO Scaling
  • Read-Write Units
  • Dynamic Scaling
  • Storage Structure
  • Data Access
  • Partition Key
  • Partition and Sort Keys
  • Strong Consistency
  • Eventual Consistency
  • Streams
  • Global Tables
  • Regional strong consistency
  • Global last write wins
  • Security in DynamoDB
  • Developing in DynamoDB

Chapter 4. Event Driven programming

  • Events in the cloud
  • Infrastructure events
  • Events generated from resources
  • S3 buckets
  • DynamoDB stream Events
  • Scheduled Events
  • Invoked Events
  • Event Information
  • Event data structures
  • Chaining events
  • Overview of AWS Lambda
  • Key Concepts of AWS Lambda
  • Lambda Constraints
  • Lambda Security
  • Best Practices for Lambda
  • Developing Lambdas

Chapter 5. Working with Streaming Data

  • Types of Streaming data
  • Real time, unprocessed data
  • Sensor information
  • Alerts and status messages
  • Real time structured data
  • Understanding inter-process messaging
  • Sending commands to background processes
  • Delivering data for processing
  • Streaming data facilities
  • The Kinesis Platform
  • Kinesis Data Streams
  • Kinesis Data Firehose
  • Kinesis Data Analytics
  • Kinesis Video Streams
  • Delivering queueing of data with Simple Queueing Service (SQS)
  • SQS Simple Queues
  • SQS FIFO Queues
  • Amazon MQ
  • Simple Notification Service (SNS)
  • The publisher-subscriber model
  • Developing with Kinesis
  • Developing with SQS and SNS

Chapter 6. Monitoring and Managing Applications

  • Monitoring in the Cloud
  • Auditing in the Cloud
  • AWS Cloudtrail
  • Capturing Logs from Cloud resources
  • Forwarding application logs
  • Capturing metrics
  • AWS CloudWatch
  • Capturing Application instrumentation
  • CloudWatch custom metrics
  • CloudWatch log filtering
  • Third Party Integrations

Chapter 7. Application Security

  • The AWS Shared Security Model
  • Best Practices
  • Integrating Application Security

Chapter 8 - Developer Tools

  • Continuous Integration/Continuous Delivery (CI/CD)
  • AWS CodeCommit
  • AWS CodeBuild
  • Code Deployment Scenarios
  • AWS CodeDeploy
  • AWS CloudFormation
  • Project Management
  • AWS CodeStar

Chapter 9 – Course Wrap Up

    Lab Exercises

    Lab 1 - Hello World
    Lab 2 - Accessing S3 via the SDK
    Lab 3 - Mixed Databases in a Web Service
    Lab 4 - Using Lambda in websites
    Lab 5 - Capturing Data via Kinesis Firehose
    Lab 6 - Using SNS to Fan Out Processing
    Lab 7 - Securing Applications with AWS Cognito
    Lab 8 - Deploy a website with CloudFormation

We regularly offer classes in these and other cities. Atlanta, Austin, Baltimore, Calgary, Chicago, Cleveland, Dallas, Denver, Detroit, Houston, Jacksonville, Miami, Montreal, New York City, Orlando, Ottawa, Philadelphia, Phoenix, Pittsburgh, Seattle, Toronto, Vancouver, Washington DC.