AWS Lambda 2016 - The Complete Guide (With Hands On Labs)
4.0 (448 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
4,338 students enrolled
Wishlisted Wishlist

Please confirm that you want to add AWS Lambda 2016 - The Complete Guide (With Hands On Labs) to your Wishlist.

Add to Wishlist

AWS Lambda 2016 - The Complete Guide (With Hands On Labs)

Learn how to write, deploy & manage your own AWS Lambda functions - to build amazing scalable, real-time cloud systems.
4.0 (448 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
4,338 students enrolled
Last updated 9/2016
English [Auto-generated]
Current price: $12 Original price: $50 Discount: 76% off
3 days left at this price!
30-Day Money-Back Guarantee
  • 1 hour on-demand video
  • 4 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion

Training 5 or more people?

Get your team access to Udemy's top 2,000 courses anytime, anywhere.

Try Udemy for Business
What Will I Learn?
  • Talk with authority about AWS Lambda
  • Write amazing application services that respond to S3/DynamoDB/Kinesis events
  • Understand where/when to use AWS Lambda
  • Write your own AWS Lambda functions
  • Deploy & run lambda functions in the cloud
  • Manage lambda functions including diagnostics/logging
View Curriculum
  • A little bit of coding experience helps -- ie. what is a function, a variable, etc
  • Some experience using the command-line/terminal helps

AWS Lambda is changing the way that we build systems in the cloud. This new compute service in the cloud runs your code in response to events, automatically managing the compute resources for you. This makes it dead simple to create applications that respond quickly to new information. Lambda is the backbone of Serverless Computing with AWS.

This is a comprehensive course that will teach you how to write, deploy, scale and manage lambda functions. Armed with this knowledge you'll be able to architect solutions from tiny composable microservices that scale massively and respond almost in real time.

In this course we'll take you through the entire Lambda journey. From setting up your local environment, writing your first Lambda function, to deploying interesting and unique lambda functions that will help you massively scale your operations.

The hands on labs will show you how to write Lambda functions that:

  • Run when files change in S3 (eg. image thumbnail generation, metadata extraction, indexing etc)
  • Run when tables are updated in DynamoDB (eg. analytics/trend detection, auditing, etc)
  • Run when kinesis messages are received (eg. notification generation, message filtering, etc)

So join us and become a cloud guru today.

Who is the target audience?
  • AWS Absolute Beginners. No prior AWS experience necessary.
  • Developers who want to build micro-services
  • Developers who want to build massively scalable systems
  • Solution architects (not just developers) who want to understand more about Lambda
Compare to Other AWS Lambda Courses
Curriculum For This Course
28 Lectures
An Introduction To Lambda
5 Lectures 10:39

Welcome to the course! Meet Ryan from and see what topics we'll be covering for the rest of the course on Amazon's Lambda service.

Preview 02:01

Serverless is a hot topic (and hashtag) these days. Learn about the origin of the word and what it means for an app to be serverless and to fully outsource the compute needs of your application.

Preview 02:23

Learn about the difference it makes to you and your team to write a service to use Lambda instead of Amazon's Elastic Compute Cloud (EC2). 

Preview 01:48

In this lecture, we'll cover a little bit about the underlying parts of the Lambda service and help you understand the programming model. Knowing this, you'll understand how timeouts affect the application you're writing and what event sources are available to you. 

Preview 02:33

Walk through how a simple application works that uses S3 to trigger a Lambda function. This is very similar to the S3 lab later in the course. 

Also learn about your language options when writing apps for Lambda.

Preview 01:54
Creating Our First Lambda Function
6 Lectures 11:24

We're going to start applying our knowledge in Lab 0, where we won't be setting up any event sources. Instead, we'll focus on learning how to use the AWS console to create and manage Lambda functions. 

To do this lab (and all subsequent ones) you'll need to go to to create an account. The labs for this course all qualify for the free tier, so you won't be charged for the resources you use. For more information on creating and activating your AWS account, follow these instructions

Preview 01:23

This lecture isn't required for the course, but it will make it faster for you to get around in the console by making quick links to the services this course uses in the toolbar.

Preview 00:51

Finally! Learn to set up your first Lambda function, and see a hello world example on NodeJS version 4.3.

Blueprints and Handlers

Start your first Lambda function using the AWS console. We'll add in our hello world code and create security credentials so our function can run.

Using The Console

Learn about different memory and performance parameters on Lambda functions and get ready to take your function for a spin.

Create The Function

Test your function from the AWS console in the browser, then check that the output is saved (and searchable!) in AWS CloudWatch. 

After this lecture, you'll have a much better understanding of what AWS CloudWatch is used for and how to take full advantage of it to manage and debug your Lambda function.

Testing And Logging
Expanding Our Knowledge with Lambda & S3
8 Lectures 20:28

In this lab, we'll learn how to write a Node.js application that processes Comma Separated Value (CSV) files as they are uploaded to S3. 


For this lab we'll also be making use of the AWS command-line tool to upload code and view settings on our function. The CLI tool is extremely powerful, and makes it possible to script the deployment of Lambda functions to make it more repeatable. 

Install The AWS Command Line Tool

Before we can react to S3 events, we'll need an S3 bucket. Remember that these names are GLOBALLY unique so you'll need to pick a unique name, otherwise you won't be able to continue. 

Create An S3 Bucket

Learn how to make an event trigger from the AWS console, connecting events in your S3 bucket to the Lambda function we'll be making later in the lab.

Create an IAM role to allow your Lambda function to read the files it'll be reacting to. This will help teach you a bit about the IAM Policy system and how to control access to resources in the cloud. 

Creating A Function And Trigger

Use the AWS CLI to upload the CSV processing code with the "update-function-code" command. 

Updating Lambda Functions With The AWS CLI

Using the browser testing interface, test out the function using the CSV file we uploaded earlier. This will verify that you've deployed the new code properly and view the output from your new function. This will bring back the CloudWatch tool from earlier in the course.

Testing And Function Invocation

AWS Lambda provides a few builtin ways to manage versions of your code and to point applications at the right function. Versions and qualifiers are vital for safely deploying new code to your application, and directing events to the right version of code. 

Function Versions And Qualifiers

Recall earlier when we mentioned timeouts? We're going to talk about them more now that we have some experience under our belts, and give you a way to check how much time your function has left during its execution.

Lambda functions can be called in different contexts, such as asynchronously by S3 or synchronously by API gateway or in the console. Using function outputs lets you send back values to callers that use your function synchronously, just like a return statement in normal programming.

Preview 02:13
Reacting to Event Streams with Lambda & Kinesis
4 Lectures 10:51

Before starting on the Lambda function for this lab, learn about Kinesis, AWS' streaming service. Kinesis lets you have many writers and many readers against a stream for high scale applications. Kinesis is commonly used for collecting analytics such as clickstream or transaction data, and we're going to use it to collect the same transaction lists from S3, but in a more realtime fashion. 

Introduction To Kinesis

Back in the AWS console, apply some of the vocab you learned in the last lecture to navigate around the Kinesis console and create a stream for us to attach our Lambda function to.

Create A Stream And Function Trigger

In Kinesis, messages are sent to Lambda in a base64-encoded format, so to make a test event we must encode the input before putting it in the test event in our console. Once the event is set up, we'll test the new function in the console before hooking it up to the real stream.

Test The Function

Finally, we're going to use the AWS CLI to put events in our Kinesis stream and check that the function executed by viewing the CloudWatch logs. 

End To End Testing With Kinesis Events
Creating Data-Driven Apps with Lambda & DynamoDB
4 Lectures 11:32

DynamoDB is a popular managed NoSQL store that's easy to get started with. In the previous labs we've been moving closer and closer to a "realtime" way of processing data as it comes in. Now we'll be taking new transactions as they get written to the database and calculating the sums, then storing those back into the same record. 

Introduction To DynamoDB

Learn how DynamoDB and Lambda integrate to make a powerful compute+storage combo for making your database smarter and adding asynchronous processing to your datastore.

About Function Triggers And Tables

From the AWS Console, create the event trigger for DynamoDB to send updates to the Lambda function we're creating and try out the custom code from the testing interface in the console. 

Create And Test The Function

With the function set up, we can use the AWS Console to write data into our DynamoDB table and check the reaction of our Lambda function in CloudWatch. 

Testing With Live Data
Cleaning Up
1 Lecture 02:47

To avoid future charges for AWS resources, make sure you clean up all the things we made in this course. If you'd rather use a checklist, here's the list of all the resources created that you'll want to delete:


  • S3 Bucket
  • Kinesis Stream
  • DynamoDB Table

Lambda functions

  • cloud-guru-demo
  • cloudguru-lab-1
  • lab-2-cloudguru
  • cloudguru-lab-3

Don't forget to delete all the CloudWatch log groups, which will be named for the functions. There are also IAM roles we created, but IAM roles and policies are 100% free for life, so you won't be charged for them ever.

IAM Roles

  • cloudguru-lab-2-role
  • cloudguru-lab-3
  • lab1-cloudguru-role

Thanks for taking the course, reach out to @ryan_sb on Twitter to tell me what you thought!

Clean Up
About the Instructor
Ryan Kroonenburg
4.5 Average rating
65,061 Reviews
203,398 Students
15 Courses
Solutions Architect

I am the founder of A Cloud Guru and an Amazon Web Services community hero. I hold every associate certification and I am a certified AWS Solutions Architect Professional. I am ex-Rackspace, ex-Sungard & ex-Smart421. I have been working in the Cloud space since it's very inception.

I am not just another I.T. trainer. I teach Cloud because I know it. Inside and out. I've worked as a systems administrator, developer, solutions architect & managing director/general manager for some of the biggest companies in cloud. My courses are not just some other IT training course, delivered by some IT trainer. My background is very hands on. I live eat and breath cloud. I will teach you everything that I know. If you want some boring, high level and theoretical cloud training platform, then my courses are not for you! You will love my courses because of my explain it like I'm 5 approach.

I have 17 years experience in IT in total and I am fluent across both Windows and Linux platforms. My courses are all cloud based and will be aimed to accommodate both absolute beginners, as well professionals. I always start with the basics and by the end of my courses you will be proficient as a Cloud Guru. Please add me on Linkedin or follow me on Twitter!

Get ready to become A Cloud Guru!

Ryan Scott Brown
4.0 Average rating
445 Reviews
4,338 Students
1 Course
Author @ Serverless Code

I'm the author of Serverless Code and have been working with AWS Lambda since it was in developer preview in one capacity or another. Before Lambda, I learned AWS front to back as an engineer on a 27,000+ user video streaming site. These days I write about Lambda and work on Ansible's cloud automation modules. 

Writing the last several months and answering reader questions, I got the inspiration to do a video series which grew into this course. Before (or after) you start the course, say hello on Twitter and get ready to be a Lambda pro!