SUS03 - How do you take advantage of software and architecture patterns to support your sustainability goals?
Best Practices
Best Practices
This question includes the following best practices:
- SUS03-BP01: Optimize software and architecture for asynchronous and scheduled jobs
- SUS03-BP02: Remove or refactor workload components with low or no use
- SUS03-BP03: Optimize areas of code that consume the most time or resources
- SUS03-BP04: Optimize impact on devices and equipment
- SUS03-BP05: Use software patterns and architectures that best support data access and storage patterns
Key Concepts
Sustainability Design Foundations
Efficient architecture patterns: Use this concept to guide architecture and operating decisions for this question area. Define measurable targets, assign clear ownership, and review results regularly against expected business outcomes.
Loose coupling: Use this concept to guide architecture and operating decisions for this question area. Define measurable targets, assign clear ownership, and review results regularly against expected business outcomes.
Event-driven design: Use this concept to guide architecture and operating decisions for this question area. Define measurable targets, assign clear ownership, and review results regularly against expected business outcomes.
Operational Sustainability Controls
Managed service adoption: Use this concept to guide architecture and operating decisions for this question area. Define measurable targets, assign clear ownership, and review results regularly against expected business outcomes.
Code efficiency: Use this concept to guide architecture and operating decisions for this question area. Define measurable targets, assign clear ownership, and review results regularly against expected business outcomes.
Right-sized resilience: Use this concept to guide architecture and operating decisions for this question area. Define measurable targets, assign clear ownership, and review results regularly against expected business outcomes.
Implementation Approach
1. Establish architecture principles
- Define sustainability-focused architecture standards
- Promote event-driven and asynchronous patterns
- Reduce unnecessary synchronous dependencies
- Prefer managed services where operationally appropriate
2. Optimize software behavior
- Profile and remove inefficient code paths
- Reduce redundant computations and data movement
- Implement caching for repeated expensive operations
- Tune concurrency and resource allocations by workload
3. Refactor for efficient scale
- Split high-variance workloads for independent scaling
- Replace always-on components with on-demand processing
- Use queue buffering to smooth spikes
- Validate resiliency without persistent overprovisioning
4. Institutionalize pattern adoption
- Publish reusable reference architectures
- Integrate pattern checks into design reviews
- Measure impact of pattern changes on resource intensity
- Continuously refine standards based on outcomes
AWS Services to Consider
AWS Lambda
Runs event-driven code without managing servers, ideal for automation and on-demand operational workflows.
Amazon ECS
Runs containerized workloads with managed scheduling and scaling for efficient compute utilization.
Amazon EKS
Provides managed Kubernetes control planes for container orchestration with high availability options.
Amazon EventBridge
Routes events between services and triggers automated responses for operational events.
AWS Step Functions
Coordinates multi-step workflows with retries, branching, and observability for resilient orchestration.
Amazon SQS
Buffers asynchronous workloads to absorb traffic spikes and improve throughput stability.
Common Challenges and Solutions
Challenge: Legacy architecture causes persistent waste
Solution: Prioritize incremental modernization of highest-intensity components first.
Challenge: Teams choose patterns inconsistently
Solution: Adopt architecture review criteria and shared templates for common workloads.
Challenge: No measurable proof of improvement
Solution: Track resource usage and transaction-level efficiency before and after pattern changes.