Developing Serverless Solutions on AWS


Course Number: AWS-142

Duration: 3 days (19.5 hours)

Format: Live, hands-on

Serverless Solutions on AWS Training Overview

This private, live Developing Serverless Solutions on AWS training course teaches attendees the best practices for building serverless applications using AWS Lambda and other services in the AWS serverless platform. Students learn how to use AWS frameworks to deploy a serverless application. In addition, participants use AWS documentation throughout the course to develop authentic methods for learning and problem-solving beyond the classroom.

Location and Pricing

Accelebrate offers instructor-led enterprise training for groups of 3 or more online or at your site. Most Accelebrate classes can be flexibly scheduled for your group, including delivery in half-day segments across a week or set of weeks. To receive a customized proposal and price quote for private corporate training on-site or online, please contact us.

In addition, some Cloud courses are available as live, online classes for individuals.

Objectives

  • Apply event-driven best practices to a serverless application design using appropriate AWS services
  • Identify the challenges and trade-offs of transitioning to serverless development and make recommendations that suit your development organization and environment
  • Build serverless applications using patterns that connect AWS managed services together and account for service characteristics, including service quotas, available integrations, invocation model, error handling, and event source payload
  • Compare and contrast available options for writing infrastructure as code, including AWS CloudFormation, AWS Amplify, AWS Serverless Application Model (AWS SAM), and AWS Cloud Development Kit (AWS CDK)
  • Apply best practices to writing Lambda functions inclusive of error handling, logging, environment re-use, using layers, statelessness, idempotency, and configuring concurrency and memory
  • Apply best practices for building observability and monitoring into your serverless application
  • Apply security best practices to serverless applications
  • Identify key scaling considerations in a serverless application, and match each consideration to the methods, tools, or best practices to manage it
  • Use AWS SAM, AWS CDK, and AWS developer tools to configure a CI/CD workflow, and automate deployment of a serverless application
  • Create and actively maintain a list of serverless resources that will assist in your ongoing serverless development and engagement with the serverless community

Prerequisites

Outline

Expand All | Collapse All

Introduction
Thinking Serverless
  • Best practices for building modern serverless applications
  • Event-driven design
  • AWS services that support event-driven serverless applications
API-Driven Development and Synchronous Event Sources
  • Characteristics of standard request/response API-based web applications
  • How Amazon API Gateway fits into serverless applications
  • Set up an HTTP API endpoint integrated with a Lambda function
  • High-level comparison of API types (REST/HTTP, WebSocket, GraphQL)
Introduction to Authentication, Authorization, and Access Control
  • Authentication vs. Authorization
  • Options for authenticating to APIs using API Gateway
  • Amazon Cognito in serverless applications
  • Amazon Cognito user pools vs. federated identities
Serverless Deployment Frameworks
  • Overview of imperative vs. declarative programming for infrastructure as code
  • Comparison of CloudFormation, AWS CDK, Amplify, and AWS SAM frameworks
  • Features of AWS SAM and the AWS SAM CLI for local emulation and testing
Using Amazon EventBridge and Amazon SNS to Decouple Components
  • Development considerations when using asynchronous event sources
  • Features and use cases of Amazon EventBridge
  • Build a custom EventBridge bus and rule
  • Comparison of use cases for Amazon Simple Notification Service (Amazon SNS) vs. EventBridge
  • Configure an Amazon SNS topic with filtering
Event-Driven Development Using Queues and Streams
  • Development considerations when using polling event sources to trigger Lambda functions
  • Distinctions between queues and streams as event sources for Lambda
  • Selecting appropriate configurations when using Amazon Simple Queue Service (Amazon SQS) or Amazon Kinesis Data Streams as an event source for Lambda
  • Configure an Amazon SQS queue with a dead-letter queue as a Lambda event source
  • Deploying a Simple Serverless Application
  • Message Fan-Out with Amazon EventBridge
Writing Good Lambda Functions
  • How the Lambda lifecycle influences your function code
  • Best practices for your Lambda functions
  • Configuring a function
  • Function code, versions and aliases
  • Configure and test a Lambda function
  • Lambda error handling
  • Handling partial failures with queues and streams
Step Functions for Orchestration
  • AWS Step Functions in serverless architectures
  • Step Functions states
  • The callback pattern
  • Standard vs. Express Workflows
  • Step Functions direct integrations
  • Troubleshooting a Standard Step Functions workflow
Observability and Monitoring
  • The three pillars of observability
  • Amazon CloudWatch Logs and Logs Insights
  • Writing effective log files
  • Interpreting logs
  • Using AWS X-Ray for observability
  • Try-it-out exercise: Enable X-Ray and interpret X-Ray traces
  • CloudWatch metrics and embedded metrics format
  • Metrics and alarms
  • ServiceLens
  • Workflow Orchestration Using AWS Step Functions
  • Observability and Monitoring
Serverless Application Security
  • Security best practices for serverless applications
  • Applying security at all layers
  • API Gateway and application security
  • Lambda and application security
  • Protecting data in your serverless data stores
  • Auditing and traceability
Handling Scale in Serverless Applications
  • Scaling considerations for serverless applications
  • Using API Gateway to manage scale
  • Lambda concurrency scaling
  • How different event sources scale with Lambda
Automating the Deployment Pipeline
  • The importance of CI/CD in serverless applications
  • Tools in a serverless pipeline
  • AWS SAM features for serverless deployments
  • Best practices for automation
  • Course wrap-up
  • Securing Serverless Applications
  • Serverless CI/CD on AWS
Conclusion

Training Materials:

All AWS students will receive comprehensive courseware.

Software Requirements:

A modern web browser and an Internet connection free of restrictive firewalls, so that the student can connect by SSH or Remote Desktop (RDP) into AWS virtual machines.



Learn faster

Our live, instructor-led lectures are far more effective than pre-recorded classes

Satisfaction guarantee

If your team is not 100% satisfied with your training, we do what's necessary to make it right

Learn online from anywhere

Whether you are at home or in the office, we make learning interactive and engaging

Multiple Payment Options

We accept check, ACH/EFT, major credit cards, and most purchase orders



Recent Training Locations

Alabama

Birmingham

Huntsville

Montgomery

Alaska

Anchorage

Arizona

Phoenix

Tucson

Arkansas

Fayetteville

Little Rock

California

Los Angeles

Oakland

Orange County

Sacramento

San Diego

San Francisco

San Jose

Colorado

Boulder

Colorado Springs

Denver

Connecticut

Hartford

DC

Washington

Florida

Fort Lauderdale

Jacksonville

Miami

Orlando

Tampa

Georgia

Atlanta

Augusta

Savannah

Hawaii

Honolulu

Idaho

Boise

Illinois

Chicago

Indiana

Indianapolis

Iowa

Cedar Rapids

Des Moines

Kansas

Wichita

Kentucky

Lexington

Louisville

Louisiana

New Orleans

Maine

Portland

Maryland

Annapolis

Baltimore

Frederick

Hagerstown

Massachusetts

Boston

Cambridge

Springfield

Michigan

Ann Arbor

Detroit

Grand Rapids

Minnesota

Minneapolis

Saint Paul

Mississippi

Jackson

Missouri

Kansas City

St. Louis

Nebraska

Lincoln

Omaha

Nevada

Las Vegas

Reno

New Jersey

Princeton

New Mexico

Albuquerque

New York

Albany

Buffalo

New York City

White Plains

North Carolina

Charlotte

Durham

Raleigh

Ohio

Akron

Canton

Cincinnati

Cleveland

Columbus

Dayton

Oklahoma

Oklahoma City

Tulsa

Oregon

Portland

Pennsylvania

Philadelphia

Pittsburgh

Rhode Island

Providence

South Carolina

Charleston

Columbia

Greenville

Tennessee

Knoxville

Memphis

Nashville

Texas

Austin

Dallas

El Paso

Houston

San Antonio

Utah

Salt Lake City

Virginia

Alexandria

Arlington

Norfolk

Richmond

Washington

Seattle

Tacoma

West Virginia

Charleston

Wisconsin

Madison

Milwaukee

Alberta

Calgary

Edmonton

British Columbia

Vancouver

Manitoba

Winnipeg

Nova Scotia

Halifax

Ontario

Ottawa

Toronto

Quebec

Montreal

Puerto Rico

San Juan