Designing services as monolithic while keeping Microservices in sight — Part 2

  1. Think of systems as business units from the beginning For example — I know if any of the system OMS or WMS fail, business can’t earn $$ or it would affects it bottom line.
  2. Once we have an idea of business function and its users, organize code by keeping long term business goals in sight; I think we should be developing and writing applications by having some sight of where business is going and wants to go in 3–5 years, tech should not be entirely separated from business long term goals, having this clarity bring good vision to the organization of code and infrastructure in general.
  3. De-coupling from the beginning? This is bit controversial because coupling brings it own merits and its not possible to maintain good separation of concern since the beginning. However, if we have answered the 1st point than it somewhat helps to think and maintain decoupling.
  4. Change is inevitable — This is very true, and even after keep everything in mind, there always comes a point in growing and early age start-ups where you thinking of swapping tech stack in its entirety or you think of trying something different. This is no issue, but having some idea of long term goals of business helps in taking some strong tech decisions which bear fruits later.



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store



I code; attend meetings; debate solutions; and love riding a bike