Duration
3 Days
18 CPD hours
This course is intended for
Developers who have some familiarity with serverless and experience with
development in the AWS Cloud
Overview
In this course, you will learn to:
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
This course gives developers exposure to and practice with best practices for
building serverless applications using AWS Lambda and other services in the AWS
serverless platform. You will use AWS frameworks to deploy a serverless
application in hands-on labs that progress from simpler to more complex topics.
You will use AWS documentation throughout the course to develop authentic
methods for learning and problem-solving beyond the classroom.
INTRODUCTION
* Introduction to the application you will build
* Access to course resources (Student Guide, Lab Guide, and Online Course
Supplement)
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
* Try-it-out exercise: 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
* Try-it-out exercise: Build a custom EventBridge bus and rule
* Comparison of use cases for Amazon Simple Notification Service (Amazon SNS)
vs. EventBridge
* Try-it-out exercise: 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
* Try-it-out exercise: Configure an Amazon SQS queue with a dead-letter queue
as a Lambda event source
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
* Try-it-out exercise: 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
* Try-it-out exercise: Step Functions states
* The callback pattern
* Standard vs. Express Workflows
* Step Functions direct integrations
* Try-it-out exercise: Troubleshooting a Standard Step Functions workflow
OBSERVABILITY AND MONITORING
* The three pillars of observability
* Amazon CloudWatch Logs and Logs Insights
* Writing effective log files
* Try-it-out exercise: 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
* Try-it-out exercise: Metrics and alarms
* Try-it-out exercise: ServiceLens
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
ADDITIONAL COURSE DETAILS:
Nexus Humans AWS Developing Serverless Solutions on AWS training program is a
workshop that presents an invigorating mix of sessions, lessons, and
masterclasses meticulously crafted to propel your learning expedition forward.
This immersive bootcamp-style experience boasts interactive lectures, hands-on
labs, and collaborative hackathons, all strategically designed to fortify
fundamental concepts.
Guided by seasoned coaches, each session offers priceless insights and practical
skills crucial for honing your expertise. Whether you're stepping into the realm
of professional skills or a seasoned professional, this comprehensive course
ensures you're equipped with the knowledge and prowess necessary for success.
While we feel this is the best course for the AWS Developing Serverless
Solutions on AWS course and one of our Top 10 we encourage you to read the
course outline to make sure it is the right content for you.
Additionally, private sessions, closed classes or dedicated events are available
both live online and at our training centres in Dublin and London, as well as at
your offices anywhere in the UK, Ireland or across EMEA.