Strategies For High Quality Serverless Applications on AWS
Eight key strategies for developing robust serverless applications using AWS services, emphasizing quality principles and practical implementation.
Serverless is “a solution where the platform and operations are managed for you, which scales on demand and offers a pay-per-use model.” But how do you build high-quality applications on this foundation?
Quality Framework
Quality software is secure, useful, understandable, easily modifiable, resource-efficient, cost-minimizing, and rapidly delivered to enable team learning.
Eight Key Strategies
1. Take Engineers to the Cloud
Leverage AWS account management tools rather than replicating services locally.
2. Ephemeral Environments
Build and tear down environments matching pull request workflows.
3. Power Tuning
Optimize Lambda RAM allocation using data-driven approaches.
4. Design for Failure
Adopt asynchronous, event-driven architectures with direct AWS service integrations.
5. Policy as Code
Use AWS CDK for infrastructure with engineering discipline.
6. Embed Observability
Implement structured logging, CloudWatch EMF, and AWS X-Ray tracing.
7. Work to Contracts
Employ API Gateway and AWS AppSync for schema validation.
8. Continuous Delivery
Automate deployment pipelines with validation gates.
Key Takeaways
- Serverless accelerates development while maintaining quality standards
- AWS CDK and reusable constructs embed best practices into projects
- Automation and production data should inform deployment decisions