The core of Modern Software Architecture, The Write Last, Read First Rule, Coding by Parallel AI Agents. Architecture Weekly #187

Architecture Weekly Issue #187. 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 and Substack as well.

DISCLAIMER: The newsletter will be soon moved to Substack. Please subscribe there to continue receiving it.

Highlights

The Core of Modern Software Architecture 🍼

Designing upfront does not work: predicting the future is impossible. Omitting design completely does not work either: spontaneous decisions are seldom optimal. Eoin Woods coins the middle-ground: follow Continious Architecture, establish the decision flow and stick to first principles. Great article!

Why Principles and Decisions Are the Core of Modern Software Architecture
From grand design to guided decision-making Traditional approaches to software architecture don’t work very well with today’s pace of change. A traditional ‘up front’ approach, with an architect-led comprehensive software modelling exercise and lots of early decision-making, is out of step with how

#architecture

The Write Last, Read First Rule 🤟

Given we need traceable and consistent properties in the system with 2 storages: source of truth and reference system, the rule to grant those properties is "The Write Last, Read First". When querying a record, read for source of truth first; when writing: write to reference storage first, the source of truth last. This way guarantees will be satisfiy. The article by Dominik Tornow elaborates.

The Write Last, Read First Rule
Insights, updates, and technical deep dives on building a high-performance financial transactions database.

#db

Programming by kicking off parallel AI agents 👷‍♂️

We leverage AI to move faster and better. Smart autocomplete, feature code, unit tests - AI can help with many tasks, but the results requires reviewing. Surprisingly, you can move even faster launching multiple coding agents simultaneously. We are not at this level, but I personally can work with one agent locally and spawn others to fix know bugs through Cursor Agent. Follow the article by Gergely Orosz.

New trend: programming by kicking off parallel AI agents
More devs are experimenting with kicking off coding agents in parallel. Also: comparing interviews at Meta, Amazon, Uber, and 5 other large tech companies

#ai #coding

Follow-Up

How Bolt simplified fraud checkpoints 👷‍♂️

With 4 business verticals and 150+ millions of clients and hundreds of thousands of partners, the fraud is a very real problem. Fighting it apparently requires 60+ fraud analysis flows. How do you design and evolves such system? Jarsolav Judin shows it in this article.

How Bolt simplified fraud checkpoints
Learn how Bolt engineers simplified a complex fraud-detection system. A story of scale, refactoring, and finding the sweet spot between flexibility and clarity.

#fraud #casestudy

How we Uncovered a Race Condition in Aurora RDS 🤟

As a fresh software developer you learn that if your program does not work correctly blame your code first - seldom the compiler to blame. When you design systems, blame your approach first - the underlying platform usually works solid. Not always the case though. Kartik Pitale shares they found a race condition in failover mechanism in Aurora RDS - which is still yet to be patched.

How we Uncovered a Race Condition in Aurora RDS
See how we diagnosed and confirmed an AWS Aurora RDS race condition impacting failovers.

#casestudy #aws #distributedsystems

Are Lambda-to-Lambda calls really so bad? 👷‍♂️

There are 3 ways of lambda-to-lambda communication: sync call, async call and queue trigger. Are they all awful altogether? Apparently not. Each call type has it's own set of pros and cons, which Yan Cui breaks down in this explanation.

Are Lambda-to-Lambda calls really so bad?
Learn to build production-ready serverless applications on AWS

#serverless #lambda

Terraform vs Pulumi vs Crossplane 🍼

We use Terraform at Supplied for IaC; however that's not the only choice. One finds Pulumi, Crossplane and AWS CDK too. How to choose one? Mallory Haigh explains the difference between the first 3 options.

Terraform vs. Pulumi vs. Crossplane: Choosing the right IaC Tool for your platform
A practical guide comparing Terraform, Pulumi, and Crossplane for platform engineers and DevOps teams. Learn key differences, strengths, and how to choose the best IaC tool for your infrastructure needs.

#iac

The Guardrails Your LLM Needs: Reliable Agent Based Systems 👷‍♂️

Everyone talks about milti-agent development mentioning it's biggest issue: how to make sure it does not break anything and actually does what is intended in the appropriate style? Mercedes(yup!) explains how they do that using Koog framework from JetBrains themselves.

The Guardrails Your LLM Needs: Reliable Agent-Based Systems
Large Language Models (LLMs) are a type of AI system trained to understand and generate human language. They’re powerful — but also unpredictable. Without clear structure, they can misinterpret context, invent facts, or act opaquely. That’s why, at Mercedes-Benz.io, we’re exploring how to design systems that don’t just use LLMs but govern them. What follows is how we’re doing that — and why it matters.

#ai #coding

Big thanks to Nikita, Constantin, Anatoly, Oleksandr, Dima, Pavel B, Pavel, Robert, Roman, Iyri, Andrey, Lidia, Vladimir, August, Roman, Egor, Roman, Evgeniy, Nadia, Daria, Dzmitry, Mikhail, Nikita, Dmytro, Denis and Mikhail for supporting the newsletter on Patreon!