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.
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.
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.