I will tell you a word, and you think of the first image that comes to your mind. Are you ready? Leader!

If you have thought of a white man, dressed in a perfectly fitting suit, you have thought about what most people think when they hear that word. But is that all there is for this word? Apart from the unconscious bias of race and gender, does it define leaders’ characteristics?

If we check the word ‘leader’ in the dictionary, we find: “a person who guides or directs a group”. That definition is so straightforward and clear that we…


A typical microservices image of how microservices look like

There are excellent articles on microservices explaining the great promises that the theory offer to modelling distributed systems. Unfortunately, most of these articles were written by developers without prior experience with planning and deploying large scale microservices architectures.

The objective of this series of articles is to show that it is much harder to implement microservices architectures correctly than how developers generally present it. This first article will focus its attention on the prerequisites for microservices architecture understanding for successful large scale deployments.

Before we start diving deep into the common pitfalls of microservices´ architectures, we need to clarify something…


As developers, we all know the importance of computer networking for security purposes, but it is such a dense topic, full of complexities and acronyms that scare us and we prefer to leave most of that work to the DevOps team. The objective of this article is to change this paradigm and enlighten developers and IT specialists to look at computer networking with a different mindset. We will dive into the OSI Model (Open Systems Interconnection Model) and explain how each layer works and how we can attack and protect them after giving a brief overview of each of them.

OSI Model


“Death is a stripping away of all that is not you. The secret of life is ‘to die before you die’ — and find there is no death” — Eckhart Tolle

We are taught as we grow to have this sense of identity that sets us apart from the others. Once we accept these teachings we become “John”, “Mary”, “Robert”, etc. We start having a name and present ourselves based on this image we created.

Ego is the projection we make of ourselves in order to have a sense of identity, and it is composed by all the things you…


I promise this will not be another article on OOP vs FP! Why not build OOP using FP? Much better!

There is a great misunderstanding of what object-oriented programming really is and its origins. The term "object" was first coined in the 1950s and became really popular on the early 60s on Lisp circles as a powerful design pattern. Finally on the 70s the first object-oriented language, Smalltalk, was developed by Alan Kay.

The truth is that what object-oriented programming really represents has been lost over the years as modern languages kept copying the syntax and ideas imposed by the C programming language. Alan Kay has declared publicly many times that the essence of OOP is the concept of message…


This is an article about how to use domain-driven design techniques to create data models [0]

There is a new client on the block and your boss is very happy with the profit perspectives. He invites every developer for this cool new product meeting and everyone starts to express their opinions about the project. You know that in the next few weeks you’ll have a new data model ready, I mean, this is the main expectation for these meetings.

The meeting starts with a list of requirements made by the client and it all goes nice and softly until someone shouts: “I think we are ready to draw the data model”. …


I have been on the software industry for quite a few years now and there is one recurrent error that affects most enterprises and haunts me every night: Most developers don't understand how to model their software correctly.

I’m not talking about using crazy bureaucratic diagrams, the ones you do once in a lifetime, forget about it and when you need it it’s too late. Your software grew 10x what it used to be and you’re faced with a useless piece of paper/file you have to throw away. I’m talking about a soft skill that can change your life! …

Douglas Rocha

Amazonian • Hacker • Former CTO at InvestPro • Cloud solutions expert • Enterprise Architect • Loves his wife, family and maths.

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