Modularization Q&A With A Senior Technologist
The Modularization project works to break Bonial’s once-monolith-like code into smaller, more cohesive pieces of software. IT worked tediously in a war room with a “hackathon spirit,” ultimately increasing productivity between 20 and 25%. We sat down with our Lead Architect Al for more information about the great feat.
BONIAL: Can you tell us a little about your project?
AV: The modularization project was a classic breaking-the-monolith project. Although it has been done many times in many different companies, it was never easy and painless.
With this project, we started to convert our code base from its original, startup-like form, into separate, smaller, cohesive pieces of software that are easier to understand, faster to build, and easier to maintain—greatly enhancing developer productivity, facilitating detached and finer-grained releases, and creating an architectural runway for future development.
To achieve our goals, we assembled a project team with people bearing knowledge from different parts of the monolith, and worked in a war room in a kind of “hackathon spirited” way. Our approach was first to replicate the code base four times (as we targeted having four different modules) and then clean up the unused code in each. Further work will go in the direction of creating concrete boundaries and contracts between the different modules.
BONIAL: What were the project challenges?
AV: As build times were incredibly high, the cleanup work was long and tedious. Sometimes, small changes required a full build and test run in order to have certain confidence about the correctness of the code.
BONIAL: Are you satisfied with the outcome?
AV: We’ve increased productivity between 20 and 25%. This translates into less development costs, decreasing the company’s operational costs. Thanks to modularization, we have allowed for different teams to release independently from each other, thus increasing the team’s independence, sense of ownership of their stack, and their operations.
Al Villegas is a Senior Technologist, agile geek and a musician based in Berlin. After more than 12 years on the road writing all kinds of applications, leading and serving teams, he spends his time helping define and implement the technological strategy from the systems and enterprise level at Bonial.com.