Serverless Developer Guide
conﬁguration ﬁles, you write code that creates infrastructure. Your IDE can validate the deﬁnition 
and even provide hints through code completion.
Developer tools and code instrumentation
• AWS CLI - command line utility for managing AWS resources
• AWS SAM CLI - command line utility for rapidly creating, deploying, and testing AWS resources 
with AWS SAM templates
• Tools & SDKs - libraries for connecting to services and resources programmatically
• Cloud9 - cloud-based integrated development environment
• X-Ray — monitoring and debug
Streaming & batch processing
• Kinesis - event stream processing at scale
Typical microservice example
Consider the following scenario: you want to build a microservices application that looks up 
weather data by zip code and returns JSON data.
What serverless services would you use, and how?
The solution starts with the client resolving the hostname through Route 53 DNS. The browser's 
HTTPS GET request routes to API Gateway. If the URL is valid, API Gateway veriﬁes access an access 
token, commonly implemented as a JWT tokenJWT token with Amazon Cognito, then creates an 
event for the request and sends it to a serverless Lambda function for processing.
The Lambda function receives the event and a context object with additional information related to 
the environment as inputs to a designated handler method. The handler method in this case, uses 
an SDK to send a query to DynamoDB for weather data for the given zip code. The function may 
ﬁlter and customize the data based on the location and preferences of the user, perhaps converting 
degrees in Celsius to Fahrenheit.
Before returning the data, bundled into a new event, back to API Gateway, the function handler 
might create additional events. It might send one to an SQS queue, where a data analytics service 
Developer tools and code instrumentation 34