Skip to content

Scaling Software Architecture Without Overengineering

Your system has 500 users and also has 20 microservices, including the gauntlet of Kubernetes, a message broker, distributed tracing, multiple different databases, and a pretty dashboard that probably nobody looks at. Someone will ask the question: why is this so complicated for 500 users? And usually the answer is, “Well, we’re building for scale.” No. No, you’re not. You’re building for scale you don’t have yet. That’s a lot of extra complexity. Scaling software architecture is important to think about. But there’s a difference between actually implementing for scale and giving yourself the options to scale when you need… Read More »Scaling Software Architecture Without Overengineering

Sponsor: Do you build complex software systems? See how NServiceBus makes it easier to design, build, and manage software systems that use message queues to achieve loose coupling. Get started for free.

Why Sagas Feel Broken

So, you built an elaborate system with commands, queues, an event-driven architecture, retries, timeouts, and, most importantly, compensating actions all handled within sagas. But do you really? Because then you get a call from support. There’s an order where the payment is pending, and it’s been pending for 48 hours. You look into it and see that the payment provider did charge the customer, but your system shows that the payment didn’t go through. So which is true? Clearly, the payment provider. YouTube Check out my YouTube channel, where I post all kinds of content on Software Architecture & Design, including this… Read More »Why Sagas Feel Broken

Debugging Event-Driven Systems: 5 Problems Teams Create

A post on Medium was shared with me by a member of my channel. A team went all in on event-driven architecture, and now they feel like they can’t debug anything. I get it, debugging event-driven systems can seem challenging. But it’s not directly because of event-driven architecture. It’s because of their misunderstanding of it and how they were applying it. So let’s break down the five pain points they had, why they had that pain, and how you can avoid it. YouTube Check out my YouTube channel, where I post all kinds of content on Software Architecture & Design, including this… Read More »Debugging Event-Driven Systems: 5 Problems Teams Create