Do you know what your technical debt load is?
I recently had a conversation with leaders of a mid-sized professional services firm who approached me with an urgent need to upgrade their old and under-performing finance software. They wanted to find a way to accelerate the implementation due to the daily consternation their staff faced creating paper time cards, trying to get appropriate reports created, and their inability to integrate the old system with other critical tools such as HR and CRM.
Of course, the team all felt that upgrading this system was of the utmost urgency. But after several minutes of conversation, I realized that the problem was far more complex. Over the course of years and a number of acquisitions, networks had not been merged. User directories were still separated. Network infrastructures were old, consisting of multiple vendors’ hardware. And, of course, there was little to no documentation of the system design, or configuration. If they went ahead and upgraded their accounting system, page refreshes would be unreliable, it would be extremely difficult to manage access controls to sensitive data, and they could potentially overload already stretched network links. Essentially, moving forward would almost certainly mean a failed implementation.
The term for the backlog of software upgrades, aging servers, and unfinished technology infrastructure integrations is called technical debt. When faced with a tough earnings quarter, it’s easy to put off that costly technology upgrade. When things are going really well, who’s got the time for major infrastructure improvements when you’re stretched thin just keeping things running? And, really, where’s the financial benefit of doing all of this?
Unfortunately, technical debt can creep up on you until it suddenly explodes in your face. Or, it may be that your organization simply falls behind, becoming less competitive. It is not unreasonable to want to execute quickly on an important software upgrade to improve or automate the business. Low technical debt is like low financial debt. It creates the ability to rapidly implement and take advantage of new technologies; quickly react to a new market opportunity or competitor; and, most importantly, keep systems secure by having the latest software and firmware to minimize inevitable security vulnerabilities.
With high technical debt, a simple finance system software upgrade is now extremely disruptive, time consuming, and expensive. It’s going to require a completely redesigned directory structure and access controls (several hundred hours of design, system changes, server configurations, operating system upgrades, and downtime), the wholesale fork-lift of the network infrastructure (consisting of thousands of dollars of hardware purchases, after-hours work, and potential network downtime). Of course, business does not stop, so the already stretched IT staff will be required to work overtime and on weekends, likely creating the opportunity for a costly mistake like data loss or system crashes. Only then they can start the upgrade, delaying the project and costing even more money through the continued inefficiencies of manual processes.
It’s really not that complicated. We’ve all heard the car mechanic tell you that you can “pay me now, or you can pay me later.” And the bill later usually includes a tow truck, days of you not having your car, and a big repair bill. Keeping your technology systems up to date, doing regular software upgrades, and continually paying down your technical debt means that your business runs better, downtime is minimized, costs are predictable, and, in the end, the value obtained from your technology investments is much higher.