Monolith vs microservice?

Ok, as bad coder/freelancer for our clients we build monolith projects. Reason? because it quick??? cheap??? and you can deliver it quickly and run away with salary. This is how usually it works. But right now I don’t have resources for building whole project at one place from scratch without going totally mad. I switch into modules. And it works for me and for my team pretty great. My team is unskilled interns, so I cannot trust to their code. is this problem? turns out that it’s an opportunity. and actually code that they produce are more easy to ready, easy to maintain…
And creating microservices was my dream…
Let’s talk about it

1 Like

I worked for a company that had at least 8 products in one monolithic codebase. While they had very real concerns with moving to microservices, I ultimately realized these concerns were minor compared to the overall cost of maintaining a monolith. Now, at Hacker Noon, we have 3-4 services at this moment (still very early on, not to mention the future). I don’t think I ever want to work on a monolith again, although I realize why people are drawn to them and I recognize the challenges in building out microservices properly. I wouldn’t even say we’re building micro services at Hacker Noon, exactly, not yet, but there’s definitely a separation of concerns.

1 Like

Old habits die hard. Time to reinvent yourself.

1 Like

One of our first posts on HackerNoon was this

1 Like

Here’s short overview:

Pros of microservices

  1. The possibility of convenient horizontal system scaling

  2. Increased development team members productivity

  3. Simplification of the debugging and maintenance processes

  4. The ability to work in smaller teams and use an Agile approach

  5. Flexibility in continuous integration and deployment

Cons of microservices

Despite all these benefits, microservice architecture has its own drawbacks. I mean the necessity of operating many systems and completing various tasks in the distributed environment.
So, the main microservice pitfalls are:

  1. The complexity of microservice design makes developer plan and act more carefully.

  2. The external API communication in microservice architecture leads to more significant risks of attacks.

  3. Sometimes it’s difficult to switch between them in the development and deployment processes.