Zoran Horvat

CEO @Coding Helmet
Zoran is Principal consultant at Coding Helmet Consultancy, speaker and author of 100+ articles, and independent trainer on .NET technology stack. You can find him speaking at conferences and user groups, promoting object-oriented development style, clean coding practices and techniques that improve longevity of complex business applications. Since 2014, Zoran is constantly publishing video courses, explaining object-oriented modeling and design as the central element of application design and relating it to other development aspects, such as persistence, UI and system integration.

TOPIC: There and Back Again of Software Architecture: Monoliths to Microservices and Back

Any mention of monolithic applications would usually cause a few eyebrows to raise - and with the reason, because accumulated experience is teaching us that monolithic applications are hard to maintain. Layered architecture, ports and adapters, service-oriented architecture (SOA), and all the way to microservices - all those architectures were offering answers to problems usually seen in the monolithic design. Why aren't we done with the problems already, then?

In this presentation, we shall analyze common design problems. Especially those we are encountering for decades already, mixed into all the architectures ever tried: pathological coupling, whether between classes, components, or services all the same; violating transactional consistency boundaries; unclear data ownership, with related caching issues (planned or incidental caching, mind that); etc.

Closer to the end of this presentation, you will learn to recognize typical design mistakes, and to avoid them no matter which architectural design you are pursuing. Furthermore, you will learn that the dreaded monolithic architecture, given that it is properly layered, suffers no deficiencies by itself. Layered monolithic architecture can be implemented in a clean and clear way, and that is what we will demonstrate in this presentation.