Skip to content

Uncategorized

Avoid API Breaking Changes

Have you ever changed your backing data model and then all of a sudden all your clients explode? It’s not because you broke your code. You broke your contract. Most times API breaking changes occur because you’re exposing your domain model or data model. You’re not just sharing data. You’re leaking implementation details. What you can do instead is start treating your API like an anti-corruption layer. That does not mean making seven different layers of DTOs. YouTube Check out my YouTube channel, where I post all kinds of content on Software Architecture & Design, including this video showing everything in this… Read More »Avoid API Breaking Changes

Event Driven Architecture and Coupling: You’re Not as Decoupled as You Think

So, you broke apart your monolith. You introduced a message broker. You’re using event driven architecture. Events are flying everywhere. You’re decoupled now, right? But somehow nothing feels any better because your system is still really brittle. 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. CRUD Events The problem might be the events you’re publishing: ShipmentStatusChangedShipmentAddressUpdatedEstimatedDeliveryDateChangedCarrierIdUpdated Every other service subscribes to these events and maintains its own local copy of shipment data. You might think you’re decoupling your system because you’re publishing events to… Read More »Event Driven Architecture and Coupling: You’re Not as Decoupled as You Think

5 Software Architecture Mistakes That Make Systems Hard to Change

You can follow every enterprise best practice. You can use Clean Architecture, some type of layered architecture, event-driven architecture, microservices, or whatever else is popular. It can still end up in the same place. You have a system that is really hard to change. 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. When you do make a change, you are afraid you are going to break something. Eventually, the same comment keeps coming up: We would be better off rewriting this whole thing. The… Read More »5 Software Architecture Mistakes That Make Systems Hard to Change