One thing that I realized from solving tons of software issues is there is no such thing as a free lunch.
memory vs disk storage, TCP vs UDP, single core processor vs multi core processors, monolithic vs micro system and centralized vs decentralized.(Decentralization of block chain solved a lot of problems and it is super cool!!! But I would like to talk about its disadvantages later)
Trade off issue always matters.
My team is responsible for developing core platform and backend service solutions to support other product development teams in company.
Technologically we are using micro service architecture(MSA). There are many advantages of MSA for both our business model and technological reasons. MSA is a software design paradigm to distribute resources and program logics into multiple nodes.
When it come to typical web service, many system has accepted monolithic architecture because it's simple, easy to manage, efficient and "looks like" cost saving.
However, many software teams today(even small teams of startups) accept MSA as trend more and more.
Micro service has good points such as
On the contrary, we have to pay cost for the other dark side.
Of course there are more disadvantages in MSA. And I might talk about those dark side of reality in MSA world ironically.
It must be fun.
for me.
Further, as I said, I would talk about block chains and many technological issues in my thoughts.