The course is unfortunately canceled!

Migrating to Serverless is a workshop for developers and architects that want to take advantage of the latest trends in cloud computing: serverless apps and cloud functions. Through hands-on exercises and teamwork, you’ll learn about using AWS Lambda and API Gateway to create responsive event-driven micro-services, auto-scaling web APIs, and high-performance web sites.

Serverless platforms significantly reduce the cost of running high-performance web sites and API services in the cloud, but with a major impact on architecture, these services also require teams to re-think how to approach sessions, storage, authorization and testing.

This workshop is based on real-world experience of moving a large collaboration platform from Heroku to AWS Lambda, leading to a huge improvement in scalability and performance, and a significant decrease in cost.

The author of the workshop is Gojko Adzic, a key contributor to Claudia.js, a popular opensource deployment tool for AWS Lambda, and an award-winning author of several bestselling books on Amazon.


Day 1: Getting started with Lambda and performing basic tasks

  • Introduction to AWS Lambda and API Gateway
  • Create a simple hello-world Lambda service
  • Logging, monitoring and analytics in a serverless world
  • Create a simple file-conversion service, triggered by AWS S3 file uploads
  • Create a simple web API so browsers can invoke your Lambda functions
  • Connect Lambda functions to message queues for asynchronous processing
  • Create a Slack command using AWS Lambda

Day 2: Architecting serverless applications

  • Designing applications for share-nothing architectures
  • How to achieve user sessions and still work at scale
  • Key things to consider when talking to third-party APIs
  • Authentication and authorization with serverless applications
  • How to design testable Lambda functions
  • How to set up your workflow for teamwork and versioning

Day 3: Building a scalable, high-performant single page serverless app

  • Using AWS IAM, Cognito and custom authorization for Lambda functions
  • Using Amazon Mobile Analytics (AMA) for integrated client + server analytics and monitoring
  • Using AWS DynamoDB for database access
  • Using AWS IoT Gateway for client messaging and push notifications
  • Using all those tools together with AWS CloudFront to create a modern web application

Who this course is for

Software developers and architects migrating from on-premise applications to the cloud, or investigating the migration from self-managed applications (virtual machines in the cloud) or Platform-as-a-Service (Heroku, Google App Engine) applications to AWS Lambda and cloud functions.

Learning outcomes for this course

  • How and when to use AWS Lambda and API Gateway
  • How to perform commonly needed tasks, such as file conversion, image serving, connecting to third-party APIs and managing sessions with serverless architectures
  • How to design scalable, high-performance web sites with single-page apps backed by cloud APIs
  • How to get the most out of AWS integrations, including using AWS Cognito for user management and AWS IoT Gateway for browser and mobile device notifications at scale
  • How serverless architectures impact testing, monitoring and deployments
  • Good practices for multi-versioning, so you can run A/B tests easily and operate multiple versions of your system cheaply
  • How to start converting monolithic applications to cloud functions


  • Working knowledge of JavaScript. The tools and techniques you’ll learn about will apply for any programming language, but the coding examples will be in JavaScript/Node.js to keep things simple and make it easy for everyone to follow regardless of their primary platform. You don’t need expert level knowledge of JavaScript, but you should be comfortable writing simple functions and flows.
  • You don’t need prior experience with AWS services, but this would definitely be useful.

The course is unfortunately canceled!

This course has already been held.