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.

Emerging Architectures for LLM Applications | Andreessen Horowitz
A reference architecture for the LLM app stack. It shows the most common systems, tools, and design patterns used by AI startups and tech 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.

Save money on Serverless: common costly mistakes and how to avoid them - Lumigo
When used properly, serverless technologies like AWS Lambda can lower the cost of running a system. This is because you only pay for these services when you’re using them, so you don’t waste any money. Serverless technologies also have other benefits. They can provide better security, built-in redun…

#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!

Seeing the Bigger Picture with Event Storming
How do you understand what is a proper future vision for your system? Understanding the domain through Event Storming sessions might help. Here is our experience.

#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 :)

Managing the Complexity of Software and Progress with a Guiding Light
https://unsplash.com/@wonderlane

#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.

Zalando Engineering Blog - How we manage our 1200 incident playbooks
We consolidated our incident playbooks in September 2019. 1200 playbooks later...

#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.

How we built it: Stripe Radar
What makes Radar, Stripe’s fraud prevention solution, so powerful? Here are some of the key decisions made—and lessons learned—in the years it has taken to build it.

#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.

Tips for configuring AWS Lambda batch size | Capital One
Capital One highlights best practices with examples for configuring Lambda SQS event source batch size so that you can increase efficiency and reduce costs.

#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