A developer workflow for modern AWS serverless applications

Click for: original source

Modern serverless applications on AWS are complex with a lot of moving parts. Mapping a developer workflow onto those applications can be difficult. This article discusses the developer workflow I have developed for complex serverless applications at aleph0, with example CloudFormation template and GitHub Action snippets to illustrate the concepts. By Andy Boothe.

The article then focuses on certain goals for developer workflow and how to architect with this goals in mind:

  • An efficient developer workflow compatible with team growth and modern practices, e.g., CI/CD, Infrastructure as Code, etc.
  • Separate environments for staging, production, etc. are a requirement
  • Example architecture
  • Tools and techniques
    • Continuous integration and continuous delivery
    • Infrastructure as code
    • Developer workflow
    • Lambda function workflow
    • Step function workflow
    • REST API
    • Promoting to Production

… and more. You will also find example architecture in the article. The architecture uses an API Gateway REST API to define endpoints that use StartSyncExecution to invoke an Express Step Function, which in turn invokes Lambda function(s) and/or other AWS services. There are also examples for both Github actions CD workflow and CloudFormation template for respective workflows. Good read!

[Read More]

Tags serverless web-development app-development software-architecture