Skip to content

Samurai Developer Posts

Rethinking the Monolith: When Microservices Obsession Becomes Hazardous

Reading Time: 3 minutes

In recent times, I have observed a series of events that make me reflect on the use and abuse of microservices. Below, I will describe the events that led me to reconsider the tools I typically use when designing an application’s architecture. Perhaps this will also help you reflect on your development habits.

Strangler Fig Pattern: How to migrate from an old to a better architecture

Reading Time: 3 minutes

Migrating from monolithic apps to efficient ones is a widespread software challenge. Fortunately, there’s a proven strategy that can guide this process, known as the Strangler Fig Pattern. Coined by Martin Fowler, this pattern outlines a gradual approach to migrating a application by iteratively transferring its functionality to a new system. The end result is a more readable, maintainable, and feature-rich application that aligns with modern technology trends.

How To Ensure Data Integrity With The Saga Pattern

Reading Time: 2 minutes

Microservices architecture offers the advantage of breaking down an application into small, decoupled services, with each service owning the data it manages. However, a challenge arises when generating a transaction involving multiple services. To address this issue, the SAGA pattern is employed.

How to Recognize and Overcome Agile Theatre

Reading Time: 3 minutes

Has it ever happened to you to be in a development team and feel that the “Agile” process resembles more of a show?. With ceremonies, sprints, dailies, monthlies, but in practice, they are just empty words without adding value to the development process? Well, perhaps you might find yourself in what’s called Agile Theatre. Here are some points that can help you identify if you are in a team that practices Agile in name only.

Fluent Interfaces in Java: How to Create Readable and Expressive APIs

Reading Time: 4 minutes

Fluent interfaces are a term coined by Martin Fowler and Eric Evans. It’s a design approach in software development that aims to create an object-oriented API. The goal is to make the API more readable by making method calls more expressive and easier to understand.

The Reliable Power of the FIRST Principle: A Comprehensive Guide

Reading Time: 2 minutes

Writing unit tests correctly is as important as coding features. To achieve this, certain principles help ensure that unit tests are easy to use and modify when adding new test cases. The FIRST principle, which stands for Fast, Independent, Repeatable, Self-validating, and Timely, is a guide for us in this endeavor