Event Driven Architecture Implementation is a Mindset Shift

Going Event Driven Architecture (EDA) with Microservices or other approaches requires not only to implement stuff differently. The most important and most difficult stuff is that developers must think Event Driven. This requires developers to do mindset shift. Often it is the case that the thinking is still resource driven which means that there are entities and the operations on them are CRUD (Create, Read, Update, Delete).

Maybe CRUD operations are something for AI systems / LLMs to be developed. But nowadays the processes are way more relying on business knowledge and its processes. Hence the used pattern for process based API design reflects this and focuses on:

  • decoupling the complexity of operations into separate independent code without side effects
  • operations based on business requirements with the WHY as goal and not the WHAT

All these circumstances lead to the fact that developers MUST reflect more and more business in code. Code hence is more and more tightly coupled to business. This makes sense because the ownership of the code is on business side. In the past IT projects failed because an software was developed which did not fit into the business needs. With such an approach of EDA the implementation of software is more and more approaching business. Developers are required to NOT see entities and resources anymore but see why these things are used. The complexity shifts away from the near data access layer focused implementation of creation of objects with flags for exception handling and such but more towards the service layer where objects are created in different ways.