Tuesday, December 05, 2023

The Frugal Architect

During his keynote at AWS re:Invent 2023, Dr. Werner Vogels discussed several crucial considerations for architects designing distributed systems in today's cloud-native era. These seven laws encompass cost optimization, resilience, profiling, application risk categorization, and observability—factors most of us inevitably take into account when crafting solutions for our customers. 

Notably, this was the first instance I encountered where these principles were neatly presented on a website; thefrugalarchitect.com.

thefrugalarchitect.com  is about the seven laws of frugal architecture. It discusses the importance of considering cost early in the design process. Systems should be aligned with the business model to achieve economies of scale. Every design decision involves trade-offs, and it is important to regularly re-evaluate these. Monitoring systems can help to identify wasteful practices and optimize resource allocation. Cost-aware architectures should implement cost controls to optimize for both cost and user experience. Cost optimization is an ongoing journey, and systems should be revisited to find further improvements. Continuously question what has worked in the past, and revisit methods and tools despite previous successes.

 

The Laws

1. Make Cost a Non-functional Requirement.
2. Systems that Last, Align Cost to Business.
3. Architecting is a Series of Trade-offs.
4. Unobserved Systems Lead to Unknown Costs.
5. Cost Aware Architectures Implement Cost Controls.
6. Cost Optimization is Incremental.
7. Unchallenged Success Leads to Assumptions
.

 

I've added thefrugalarchitect.com to my bookmarks alongside other valuable references like 12factor.net and AWS Well Architected Framework, which I frequently consult. I recommend you do the same.

If you have the time, I also suggest watching the keynote, even though it spans close to two hours.

 


Bonus: Towards the end of his keynote Werner gave us a glimpse of an AI/ML application he has hacked together to detect brain haemorrhages.

 

One of his teams in AWS has iterated over this design and has released Explainable Intracranial Hemorrhage Detection for Radiologist Workflow Prioritization as an AWS samples project in GitHub.

Worklist prioritization steps
 

Examples of ICH

 
The future of development. Dr. Vogels concludes his keynote by talking about the future of development. He argues that it is more important than ever for developers to be able to collaborate with AI in order to build better systems.
 
I agree. Now, let's go build! :)