Do you need Microservice Architecture, Kubernetes or React?
This article will help you understand why you should choose the tool that fits your problem instead of making the problem fit your tool.
When starting a new project, the developer often wants to use the last trending technology that’s out there. That is not a bad thing in and of itself, but I will argue that you should ask yourself which problem that technology was meant to solve.
If you want to build a website you probably don't need Kubernetes or a docker container, you may not actually need React. You should understand why these tools exist before you add them to your project.
One of the reasons for which React was created was to make it easier to re-utilize components. Of course there is more to React than that, like managing the DOM and etc. But let’s focus on the principle of re-utilizing. With this in mind, if you develop a frontend project using React, it will be easier to scale that project knowing that you can re-utilize the components already created. This is an example of a good match between the tool’s function and the problem.
The problem of the urge in always wanting to use the last trending technology is that you might be adding unnecessary complexity to your project.
Microservice Architecture is another trend. When added to your project, it can help solve scalability issues and teams’ language-neutral problems. That is what Microservice was meant to solve. However, Microservice will also add complexity when debugging and you may need a sidecar proxy between services. To companies like Google or Netflix, the added complexity pays off, given that the problems that Microservice solves outweigh the issues that it brings.
John’s Bakery doesn’t need to use Microservice Architecture in its website.
Learn the Basics. Sometimes it’s overwhelming because when you open YouTube you are bombarded with content on trending technologies like Kubernetes or Kafka. All the buzz about these technologies make you want to learn every single thing about it and apply it. I’m not saying don’t try it, actually you should try and see it for yourself, but make sure you don’t forget about the basics.
Keep in mind that the trendy tool you just learned about is just another one on your repertoire and that the choice to use it should be based on the problem that is in front of you.
Do you want to discuss this subject further? Get in touch through my linkedIn!
Written by Jovani Tarnowski. Edit by Natália S. Pimpão.