Having led various transformation programs over the course of my career, I find the recent trend
around transforming the architecture landscape leveraging microservices and BigData has been
quite intriguing. I would like to share my experience in this area which I hope will be useful for those
of you who are embarking on a microservices transformation journey. I will try and stay away from
jargon and getting into specific technologies to make it useful as possible.
The concept of microservices is based on a pretty simple idea: it sometimes makes sense to develop
your applications as small interlocking pieces instead of one giant whole. These components are
developed and maintained separately from each other, so updates don’t require re-doing the entire
codebase
This definition sounds easy, but to make each service production grade requires a strong supporting
ecosystem. Before embarking on this journey it is important to consider what is required and
whether or not it is a viable for your situation. Things to keep in mind: Microservices offer a unique
kind of modularization; they make big solutions easier, increase productivity, offer flexibility in
choosing technologies and are great for distributed teams. However, it may be untenable for small
companies with limited IT resources. Sometimes, using different languages, frameworks and data
storage technologies can be paralyzing for organizations. Plus, not every team can handle the
autonomy and independence microservices offer.
If you think microservices are a good solution for you, here are my recommendations
Conclusion
Microservices offer a unique kind of modularization, they make big solution easier, increase
productivity, offer flexibility and are great for distributed teams. If you have a large project, need
quick and autonomous delivery, plan to scale your solution or need to frequently update separate
parts of your system, microservices can be a good solution.
Author
Param Natarajan