Architecture Weekly #82
Architecture Weekly Issue #82. Articles, books, and playlists on architecture and related topics. Split by sections, highlighted with complexity: 🤟 means hardcore, 👷♂️ is technically applicable right away, 🍼 - is an introduction to the topic or an overview. Now in telegram as well.
WARNING 🇺🇦
It's already been a year and a half since Russia's crazy, brutal and unjustified war against Ukraine. We condemn this war and want it to stop ASAP. We continue this newsletter so you can advance your skill and help the millions of Ukrainian people in any way possible. If you want to help directly, visit this fund.
Big thanks to Nikita, Anatoly, Oleksandr, Dima, Pavel B, Pavel, Robert, Roman, Iyri, Andrey, Lidia, Vladimir, August, Roman, Egor, Roman, Evgeniy, Nadia, Daria and Dzmitry for supporting the newsletter. They receive early access to the articles, influence the content and participate in the closed group where we discuss the architecture problems. They also see my daily updates on all the things I am working on. Join them at Patreon or Boosty!
Next week I am interviewing Dominik Tornow on Distributed Systems. He is the author of "Weekend Read" newsletter and the book "Thinking in Distributed Systems". Make sure to join the live!
Highlights
Emerging Architecture for LLM Applications 👷♂️
A lazy person only not talks about LLMs. But if you're building some services on top of one, you probably want to build it with a good architecture to actually get some value. As LLMs context window is limited, performance depends on the context and fine-tuning can require special expertise you can still build a good solution given proper architecture. Find an amazing post explaining this, based on the real-world experience from AI companies.
#AI #architecture
Save money on Serverless by avoiding costly mistakes 👷♂️
Serverless computing is convenient: you can start fast and pay only for the resources actually consumed. But there is the trap: if you don't understand the pricing model or don't enable billing alarms, you might pay much more than you should. Find a good piece with 6 common mistakes and how you should avoid them.
#serverless #aws #lambda
Should that be a microservice? 🍼
I know, million of battles already happened around microservices. But that does not mean we stopped developed those! VMWare offers you 6 euristics that you can use to define is this new part of functionality should go to a separate microservice, or still be a part of a bigger application. Scalability, pace of change and other attributes on VMWare technical blog.
#microservice #architecture
Follow-Up
Seeing the Bigger Picture with Event Storming 🍼
This is the piece I wrote to show how Event Storming technique helped our teams discover the part of future vision. Initially the first workshops gave us only the details of how do we work now, but 4 sessions in we started to realize the similarities between teams and the ideas what to unify emerged. Find out the story in the article!
#eventstorming
Managing the Complexity of Software Architecture and Progress with a Guiding Light 🍼
Continuing the topic of future vision. To have a guiding light you need 3 components: current state, future state and architecture principles. Having those you can perform gap analysis and make iterative changes based on the principles. The concept is called “Light on the Hill” (LOTH). Find some inside :)
#strategy
How Zalando manages 1200 incident playbooks 👷♂️
Playbook is a way of structuring the measures that the on-call team can take during the incident. The Zalando's playbook always have the Title, Trigger, Mean time to recover, Operational Health Impact and Business Impact. So they can minimize business impact while fighting the incident. About this and other practices of playbooks, read the post in their engineering blog.
#sre
How we built it: Stripe Radar 🤟
Every system which involves payments will be attacked by fraudsters, I guarantee it. Stripe, being a huge payment processor, is no exception. The post on their engineering blog demonstrates how they changed their ML architecture and some other lessons, which allows for fast and accurate fraud detection.
#casestudy #ml
Batch Size for consuming SQS events by Lambda 👷♂️
You can configure the size of the events batch received by AWS Lambda function. Some teams tend to set the size of 1. However, it cost you both money and performance. Find a nice article by Capital One tech blog with graphics and numbers.
#serverless #aws #lambda
How to write a good user story? 🍼
And another video from me. Part of the architect's job is to make the SDLC smooth and lean. One of the aspects is to have the User Stories top notch. In this video you will find out how to get a User Story right, what principles it should adhere and get some good examples of course!
#video #requirements