You get a microservice, and you get a microservice, and everybody gets a microservice! It’s like Oprah is given them away for free - that is the feeling I have when somebody is talking about them. They are free, fabulous and everybody should have at least one.

It’s the new hot buzzword that even project managers like and think they are great. I heard of a case when a developer when to a conference and heard about microservices so he decided they should have a “few” microservices in their architecture. Obvious he missed the point, especially because I know they don’t have a lot of things automated so they will end up doing a lot of things manually.

So let’s be a Nostradamus and predict what will happen - my best guess that they will do a few and deploy them to production. So far so good, but at one point they will be tired of deploying manually a “few” more things by hand. And in the case they experience some lag or slow performance in or around microservices they will find out it’s not so easy to trace distributed applications manually. So the final verdict will be that microservices are bad, just because they were using them wrong.

Every few years there is a new programming concept, or technology that is the new best thing and a I see everybody jumping on it like its gonna solve all their problems. Just because you have a bad, big and bloated monolith application its not gonna start being great if you break it up into 20 microservices. Don’t do something just because all of the cool kids are doing it.

Having all this in mind I’m not against microservices. On the contrary I’m very “pro” microservice, and I even develop microservice professionally. But what most people should do is to read up on the subject. One great thing I found is from Sam Newman - The Principles of Microservices Embrace Autonomy to Optimize Performance

This is a video education/presentation which I highly recommend. Or if you are more of a reading type, he has a book about building microservices. You can find more information about it on his web page. His material isn’t the only one on the subject but the good thing is that its not aimed at any language so everybody can read it.

Whole point of this post is that - know what you are doing, why are you doing it and don’t do something just because all of the cool kids are doing it. It will just end up badly for you, not for the cool kids.