Serverless Developer Guide
Pattern AWS service
Orchestration Step Functions
API API Gateway
Event streams Kinesis
These services are designed to integrate with Lambda and you can use infrastructure as code 
(IaC) to create and discard resources in the services. You can use any of these services via the AWS 
SDK without needing to install applications or conﬁgure servers. Becoming proﬁcient with using 
these services via code in your Lambda functions is an important step to producing well-designed 
serverless applications.
Serverless development on AWS
To build serverless solutions, you need to shift your mindset to break up monoliths into loosely 
connected services. Consider how each service will do one thing well, with as few dependencies as 
possible.
You may have created microservices before, but it was probably inside a traditional framework. 
Imagine if your microservice existed, but without the framework. For that to happen, services need 
a way to get input, communicate with other services, and send outputs or errors.
The key to serverless apps is event-driven architecture.
Event-driven architecture (EDA) is a modern architecture pattern built from small, decoupled 
services that publish, consume, or route events. Events are messages sent between services. This 
architecture makes it easier to scale, update, and independently deploy separate components of a 
system.
The following diagram shows an event-driven serverless microservice. A client request is converted 
by an API Gateway into an event that is sent to a Lambda compute service. A Lambda function 
retrieves info from a DynamoDB data store. That data is returned in an event to API Gateway, which 
sends a response to the client with all the appropriate headers, cookies, and security tokens.
Serverless development on AWS 20