Skip to content

Architecture

Decoupling in Software Architecture Moves Complexity

What happens when someone clicks the Place Order button? To the end user, it is pretty simple. It is a button click. But in a large system, there can be a lot going on behind that button. We have to save the order, record the payment, charge the customer’s credit card, reserve inventory, send a confirmation email, and maybe record loyalty points. There may also be analytics, recommendations, or other processes that react to the order. Because there are so many things happening, there are also a lot of things that can go wrong. We are often told that decoupling… Read More »Decoupling in Software Architecture Moves Complexity

Resilience Patterns Can Make Your System Less Resilient

You wanted your system to be resilient, so you followed the standard advice. You added retries.You added circuit breakers.You added fallbacks. But now your system is less resilient. Not because those patterns are bad. They are not. The problem is they are doing exactly what you told them to do. YouTube Check out my YouTube channel, where I post all kinds of content on Software Architecture & Design, including this video showing everything in this post. Retries are great for network blips and transient issues. But the tradeoff is that you are adding more load to a system that might already be… Read More »Resilience Patterns Can Make Your System Less Resilient

Modular Monolith Boundaries Done Wrong

So you built a modular monolith. You have a clean structure. Different projects. Everything broken into modules. But somehow, when you make a change, it still ripples through the rest of your system. Why? Because its highly coupled. YouTube Check out my YouTube channel, where I post all kinds of content on Software Architecture & Design, including this video showing everything in this post. As an example, let’s say you have an HR module. You change an employee’s work status, and all of a sudden, that affects authentication. Or you’re in a transportation system, and you change a vehicle’s compliance status, and… Read More »Modular Monolith Boundaries Done Wrong