Under the high patronage of His Majesty King Mohammed VI may god assist him 🇲🇦
October 2 - 4 - Devoxx Morocco 2024 🇲🇦
Follow Us On

Talk details

Mature organizations often have that all-encompassing, business-critical application that represents person-decades of effort. It likely started as a very well-defined, well-implemented solution to original business requirements, but over time became a behemoth as functionality was added without considering the overall impact.
Unsurprisingly, the application has not aged well and eventually leadership admits there are problems:
  • consistently increasing production bugs that require immediate attention;
  • dramatic increase in time required to deliver new features;
  • reliance on key individuals to do critical work due to cognitive complexity;
  • inability to successfully monitor application to understand its true state.
Legitimately, organizations are loathe to accept that a rewrite is required; it's often interpreted as engineers wanting to do engineering for engineering's sake. Leadership makes a call to action to find a less-costly and more timely solution. After much analysis, discussion, deliberations and hand-wringing, it's decided: Demonolith the Monolith!
Though conceptually simple, in many (most?) situations it's more costly, takes more time, and is never completed...and then you're back at square one. Join me to discuss my experiences with demonolithing, the potential issues and problems that you'll likely encounter, and talk about how to approach the conversation with leadership.
Scott Sosna
Datasite
From the first computer I programmed in my teens - the Radio Shack TRS-80 - I've been hooked on cmputers. Decades later, I still love the challenge of making the computer do my bidding on the technology de jour: superminis and personal computers; fat client, web and mobile apps; Apple Basic, Pascal, PL/1, C/C++, Java and Kotlin (but fortunately no punch cards). I'm the grizzled veteran who's seen much change in the industry (and lived to talk about it).
Professionally I've played many roles: software engineer, business analyst, data architect, database administrator, integration engineer, application architect, enterprise architect. After many years in tech leadership roles, I'm once again an individual contributor, reawakening my long dormant coding chops, learning new skills daily, and loving it. It's been a long journey but am still energized by the cool possibilities that technology enable.