About Modularized Monolith – my newest Conference speech


Is the Monolith a modern Architecture pattern? Yes, but a Modularized one – where you can benefit from separation of domains and don’t have to distribute deployments unless this is necessary.

I find the skill of building Modularized Monolith as important as building Microservices and Serverless. That’s why I decided to prepare a presentation with a case study of building a Modularized Monolith and restricting boundaries with ArchUnit – a tool to unit test my architecture.

Main stage on Devoxx Poland

This Devoxx was special to me. First stationary event after a long pandemic break and my speech selected to be presented in the main room. A huge room with 2000 seats, impressive stage with 12 meters wide screen – It felt great! Definetely best conference experience ever with around 600 participants, including online stream. See it on LinkedIn

Connecting and getting ready for the session

Slides

Published on my GitHub: github.com/yacekmm/ModularizedMonolith

Abstract

How many times did you hear: Modularize the monolith, instead of doing microservices? And maybe you see the point, but the next day you sit in front of your IDE wondering… How to actually implement it?

The title sounds like it was presented in the previous era, isn’t it? Now everyone is doing Serverless. Possibly microservices in bit older systems. Or maybe it is very urgent topic to talk about, as all three architectures find their fit into particular case. Particularly the modularized monoliths are important when facing a decision of distributing your system.

The presentation is full of content – the Case Study based on a product that started as a Monolith, to become a Modularized Monolith. Shows the process of codebase modularization, starting with basic repackaging, defining modules in code up until the presentation of the tool that guards the modules’ border for us automatically – the ArchUnit. Because we surely want to avoid manual rules checking.

On a presentation I assume that module boundaries are already defined on a business level. The focus is on implementing and enforcing them in the code.

Recordings

Devoxx Poland 2021 [en]

Javeloper 2021 [pl]

4developers 2021 [pl]

Recording published soon… :)

Devoxx Ukraine 2021 [en]

Recording published soon… :)

Give Your feedback:

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s