Overview
Activities
Intended audience
Prerequisites
- Familiarity with the basics of AWS Cloud architecture
- An understanding of developing applications on AWS equivalent to completing the Developing on AWS classroom training
- Knowledge equivalent to completing the following serverless digital trainings: AWS Lambda Foundations and Amazon API Gateway for Serverless Applications
Learning Outcomes
- 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
Course Outline
- Introduction to the application you will build
- Access to course resources (Student Guide, Lab Guide, and Online Course Supplement)
- Best practices for building modern serverless applications
- Event-driven design
- AWS services that support event-driven serverless applications
- 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)
- Authentication vs. Authorization
- Options for authenticating to APIs using API Gateway
- Amazon Cognito in serverless applications
- Amazon Cognito user pools vs. federated identities
- 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
- 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 filteringDeveloping Serverless Solutions on AWS
- 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
- Hands-On Lab 1: Deploying a Simple Serverless Application
- Hands-On Lab 2: Message Fan-Out with Amazon EventBridge
- 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
- 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
- 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 alarmsDeveloping Serverless Solutions on AWS
- Try-it-out exercise: ServiceLens
- Hands-On Lab 3: Workflow Orchestration Using AWS Step Functions
- Hands-On Lab 4: Observability and Monitoring
- 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
- Scaling considerations for serverless applications
- Using API Gateway to manage scale
- Lambda concurrency scaling
- How different event sources scale with Lambda
- 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
- Hands-On Lab 5: Securing Serverless Applications
- Hands-On Lab 6: Serverless CI/CD on AWS
Frequently asked questions
See all of our FAQsHow can I create an account on myQA.com?
There are a number of ways to create an account. If you are a self-funder, simply select the "Create account" option on the login page.
If you have been booked onto a course by your company, you will receive a confirmation email. From this email, select "Sign into myQA" and you will be taken to the "Create account" page. Complete all of the details and select "Create account".
If you have the booking number you can also go here and select the "I have a booking number" option. Enter the booking reference and your surname. If the details match, you will be taken to the "Create account" page from where you can enter your details and confirm your account.
Find more answers to frequently asked questions in our FAQs: Bookings & Cancellations page.
How do QA’s virtual classroom courses work?
Our virtual classroom courses allow you to access award-winning classroom training, without leaving your home or office. Our learning professionals are specially trained on how to interact with remote attendees and our remote labs ensure all participants can take part in hands-on exercises wherever they are.
We use the WebEx video conferencing platform by Cisco. Before you book, check that you meet the WebEx system requirements and run a test meeting (more details in the link below) to ensure the software is compatible with your firewall settings. If it doesn’t work, try adjusting your settings or contact your IT department about permitting the website.
Learn more about our Virtual Classrooms.
How do QA’s online courses work?
QA online courses, also commonly known as distance learning courses or elearning courses, take the form of interactive software designed for individual learning, but you will also have access to full support from our subject-matter experts for the duration of your course. When you book a QA online learning course you will receive immediate access to it through our e-learning platform and you can start to learn straight away, from any compatible device. Access to the online learning platform is valid for one year from the booking date.
All courses are built around case studies and presented in an engaging format, which includes storytelling elements, video, audio and humour. Every case study is supported by sample documents and a collection of Knowledge Nuggets that provide more in-depth detail on the wider processes.
Learn more about QA’s online courses.
When will I receive my joining instructions?
Joining instructions for QA courses are sent two weeks prior to the course start date, or immediately if the booking is confirmed within this timeframe. For course bookings made via QA but delivered by a third-party supplier, joining instructions are sent to attendees prior to the training course, but timescales vary depending on each supplier’s terms. Read more FAQs.
When will I receive my certificate?
Certificates of Achievement are issued at the end the course, either as a hard copy or via email. Read more here.