Throughout my work experience, I’ve been seeing a lot of misconceptions about software development that can be actually harmful for an organization.

Photo by Brett Jordan on Unsplash


  1. “The more features, the better”. The best tool is not the one with more features; it's the one that better matches users’ needs. Having all features makes…

I’ll present my approach to avoid code hotspots and explain what user-centered design and the screaming architecture have in common.

Photo by Aleks Dorohovich on Unsplash

Testing patterns serve the goals of automated testing: specification, documentation, support to refactoring, help on locating defects.

What’s the minimum you should know about digital product design and why should you care?

Photo by UX Store on Unsplash


Using the Testcontainers library is one of the ways to test your app’s data layer (in JVM languages). Let’s see a basic example.

  • You want to test a data layer of a JVM application (I’ll use Kotlin and Gradle).
  • You have Docker installed in your local environment. Ideally, you have it also in the deployment environment, to run the same exact tests that run locally.
Photo by CHUTTERSNAP on Unsplash

Technology can be put at our service as a means to make us feel psychologically safer in the team and the company. “Move fast and break things” is only unleashed if technology provides us with the necessary safety net.

Sharing code is overrated and it’s abused as the solution to code repetition. What’s the alternative? The answer is related to cohesion, code hotspots, and the law of proximity.

Photo by Kamesh Vedula on Unsplash


I feel a bit lost when I look at a project and all I see is technology. Technology is the enabler of business goals, but it’s only a detail. This looks like a paradox so bear with me.

Feeling in a safe environment is a prerequisite for a happy and productive team. I’ll mention a software team as an example but it could be applied to other teams.

Checkout Dear Intern

Luís Soares

full-stack developer

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store