Engineering the Future of Software
16–18 October, 2017: Conference & Tutorials
18–19 October, 2017: Training
London, UK

In-Person Training
Designing Serverless AWS Applications

Mike Roberts (Symphonia)
Wednesday, 18 October & Thursday, 19 October, 9:00 - 17:00
Location: Westminster Suite
See pricing & packages
Best Price ends 20 July

This course will sell out—sign up today!

Participants should plan to attend both days of this 2-day training course. Platinum and Training passes do not include access to tutorials on Wednesday.

Serverless is the latest trend in application and system architecture, but it’s not obvious or intuitive how to design, build, or operate serverless applications. Mike Roberts discusses the benefits, trade-offs, and concepts of Serverless Architecture and takes you on a journey of building, deploying, and running a Serverless application using Amazon Web Services (AWS) technology.

What you'll learn, and how you can apply it

  • Understand what Serverless architecture is, and how it relates to other cloud-based approaches
  • Understand the benefits and limitations of a Serverless approach
  • Build expertise in programming AWS Lambda functions in Java, from the basics to the nuances often misunderstood
  • Be able to build Serverless applications from scratch using a suite of AWS technologies beyond just Lambda - API Gateway, DynamoDB, SNS, S3, Kinesis and others
  • A holistic approach to a full Continuous Delivery development lifecycle of a Serverless app - creation, build, deploy, configuration, test and monitor.

Prerequisites:

Beginner-level Java experience and AWS experience (useful but not required)

Hardware and/or installation requirements:

A laptop with the following software installed prior to the training:

  • An AWS account
    • If you don't already have an AWS account, you can create a new one using the Create Account button on the AWS home page (free tier is fine). We suggest you create a new account for this tutorial, outside of any production AWS account you may have at work, since certain aspects of AWS Lambda (e.g., concurrent invocation limits) are account wide.
  • The AWS CLI (command-line interface)
  • Java and Maven environment
  • The code editor of your choice

Serverless is the latest trend in application and system architecture, but it’s not obvious or
intuitive how to design, build, or operate serverless applications. Mike Roberts discusses the benefits, trade-offs, and concepts of Serverless Architecture and takes you on a journey of building, deploying, and running a Serverless application using Amazon Web Services (AWS) technology such as API Gateway, Lambda, DynamoDB, and SNS. You’ll leave with a functioning Serverless application written in Java running in your own AWS account, ready for you to enhance and extend, as well as the skills and knowledge to build your own Serverless AWS applications.

Since Serverless is so new it is not always obvious what it is, how it fits with existing
architectural patterns, and where its strengths and weaknesses lie. Mike describes Serverless from first principles up through the most recent advances, preparing you for how this world will expand in the future.

The core of AWS’ Serverless offering is AWS Lambda, and you’ll be diving particularly deep into coding in this model. Mike takes you from the foundations of Lambda development through to often unexplored intricacies including optimization, error handling and not-always-obvious limitations. We’ll be using Java as our vehicle for this journey, but most of the lessons learned will be applicable across other languages, and Mike will call out language-specific details as we hit them.

Lambda doesn’t sit in a vacuum – AWS provides a wealth of other Serverless services that
Lambda can integrate with, including HTTP gateways, message busses, databases, and more. A good understanding of all of these technologies can significantly increase your effectiveness and so we’ll venture into these worlds too.

Finally there’s no point using such a collection of technologies without tooling to make a full development lifecycle. Mike shows you how you can combine AWS tooling with a few savvy techniques that will allow you to create, develop and manage a Serverless application quickly and effectively.

Outline

Day 1

Introduction
● Course logistics and introduction
● What is Serverless?
● What does a Serverless App look like?

Learning Lambda – the fundamentals
● Development environment validation
● Hello World!
● The Lifecycle of a Lambda function, logging, environment
● Input, Output and Context
● Invocation, event sources

Learning Lambda – advanced topics
● Error Handling
● Scaling
● Monitoring, metrics, cold starts, timeouts
● Gotchas

Beyond Lambda Part 1
API Gateway + Lambda
● S3 + Lambda
● Introduction to DynamoDB

Day 2

Drilling into Serverless
● Benefits
● Limitations
● Differentiations vs other Cloud technologies

Beyond Lambda Part 2 – Messaging technologies*
SNS
SQS
● Kinesis

Continuous Delivery & Serverless
● Creation
● Develop & Build
● Deploy
● Configuration
● Test
● Monitor

A Brave New World
● Organizational impact
● Continuous Experimentation
● The Future of Serverless

About your instructor

Mike Roberts is an engineering leader and co-founder of Symphonia – https://www.symphonia.io – a serverless and cloud technology consultancy. Mike is a long-time proponent of Agile and DevOps values and is passionate about the role that cloud technologies have played in enabling such values for many high-functioning software teams. He sees serverless as the next technological evolution of cloud systems and as such is excited about its ability to help teams, and their customers, be awesome.

Twitter for mikebroberts

Conference registration

Get the Platinum pass or the Training pass to add this course to your package Best Price ends 20 July.

Leave a Comment or Question

Help us make this conference the best it can be for you. Have questions you'd like this speaker to address? Suggestions for issues that deserve extra attention? Feedback that you'd like to share with the speaker and other attendees?

Join the conversation here (requires login)