What Is Technical Debt And How You Can Plan
Technical Debt is easy to forget because it is intangible until you have to pay for it. How so? When you make what seem like minor decisions such as passing on the website update, ignoring proper planning, or forgetting forward-thinking in technology, you are introducing Technical Debt.
What is Technical Debt?
Technical Debt is a term coined by Ward Cunningham, an author of the Agile Manifesto. They are many different "exact" definitions of it, but what it boils down to is that your technology earns "interest" and you have to pay that interest back later. To execute an example above, this is how a seemingly insignificant choice can add more debt than the original project.
The Project: Website Development
Here are the particulars: (I like easy math)
- You needed a small website for the department of your company.
- Your budget was $20,000.00.
- You hired a team who completed the project for $18,000.00.
- Your boss is happy because the project is completed on time and under budget.
- The chosen Content Management System (CMS) requires quarterly updates and some TLC as every website does.
The Interest: The Beginning of the Accrual
Every website needs regular updates and not just of the software itself; you need to publish content, update information, change links, and on and on. Your site launched only three months ago; now you need to do an upgrade to the CMS and not a minor version, this one will cost you $1,000.00. So naturally, you are asked to present why this upgrade needs to happen and what the risks are if you don't. Here is the short run of that:
- The update will cost $1,000.00.
- The benefits: an almost unnoticeable faster site, better SEO, and security patches.
- The risks, the site remains at the same speed, and your website could be exploited.
We will assume upgrades should happen quarterly, which is not uncommon. $4,000.00 is your Technical Debt each year without interest.
You and your boss review and decide, let's pass. Your security is okay, your site is fast enough, and you rank pretty high on SEO. I bet at least some of you are thinking, "I would never pass up on security," but really, how many times have you also thought, "We are such as small site," or "the hackers wouldn't care about us." Stick with me; this is not a pitch to upgrade everything all the time.
You passed on all the upgrades for two years. Your technical debt of $8,000.00 is sitting in this hidden bucket that never gets put on a Balance Sheet.
The Interest: Paying Your Interest On Technical Debt
Two years after launch your site has started to have the following problems:
- It always seems to load slower than some other sites out there.
- The UI for updating content feels outdated and somewhat tricky to manage.
- Your SEO Rankings have fallen pretty significantly.
- Every time you log in, you are prompted about updating security measures.
- The site does not look right in Internet Explorer and the iPhone 15 inch (hey, it's the future).
We're going to look at two outcomes, the relatively normal one, and the extreme.
Normal Interest Payment
You got approval for the $8,000.00 you knew the upgrades were supposed to cost and you have called your web development company and asked for a quote. Now the cost is $10,000.00. How did this magical $2,000.00 appear? That is your interest, and here is how it happened:
- Multiple upgrades at the same time, raise the risk something goes wrong, and finding the problem is more challenging.
- The older site is not compatible with the new iPhone and IE, which means the developers need to find what went wrong and at what time.
- Your site hasn't had new content in almost two years, it has become slow, and needs refreshed content. To get your SEO back to where it was a full audit needs to be done to figure out all the SEO issues and resubmit it for indexing.
Everyone can understand technology changes quickly, but you also have to realize that waiting makes it more challenging to get to the next level. So the two years cost 25% more than it would have if you kept up with it. Is there a mathematical equation you can use? No, technology is too different to make that assumption. However, in my experience, 25% is pretty standard for both hardware and software.
The Extreme Interest Payment
Now, let's look at an "Extreme" scenario. I say extreme only because it is less likely not because it will seldom happen. It does happen, and there is a genuine possibility it could happen to your company on some level. It is just less likely at the danger level described below.
Your website becomes hacked, and now the hacker shut the whole site down. They stole all your client data (including credit cards), and your company is on the hook. Your business is entirely at their mercy.
That is an almost impossible question; every situation will be different. Something like this could undoubtedly close your business, and it has happened to both big and small companies, and almost 60% of those small businesses close because of it. For some perspective, a bowling alley had to pay 60k for a breach.
How Do You Avoid Technical Debt?
In my opinion, technical debt is unavoidable. Technology changes too quickly, and there is always some form of interest paid. But, there are many things you can do to lower your costs and risks. We will base the plan on the above example, but the same principals can apply to any software or hardware.
Audit Your Technology
Understand what technology you have and how it will accrue interest. Tech Debt increases from just about everything even your cloud-hosted systems, cloud-hosted accumulates slower and often less visible. For example, a cloud system's technical debt, when not strategized correctly, commonly is incurred in duplicate entry, improper information, and direct employee time. Strategize why you have Salesforce and how that fits into your ERP now, and in the future. Future-proofing strategy can minimize the debt by planing integrations of your systems on the upfront.
A technology audit should be done once a year. The examination gives you the next step of being able to develop a strategy.
Develop An Annual Strategy
Everyone has a financial strategy, and these are similar. Every website should have a plan that exceeds the next project. Start with these questions:
- How often do you need to update the software?
- When do you update content?
- What are the average security risks?
- What kind of hosting plan do you have?
- Where do you want your website to be in two years?
The last one is the most important. If you know where your website should be in two years, for example, you post one blog post a week, that's over 100 pages of new content, how does your SEO plan fit into that? Can you CMS support searching and indexing that much content?
Each of those questions allows you to delve deeper into long term strategy and stability to form the basis of your plan. This review avoids the deliberate debt of starting a project without understanding where you are going.
Get A Service Level Agreement
All technology should have some semblance of an SLA, even your website. As I have said many times before: your site is your customer's first impression. You never put it there and leave it alone. A good SLA for a website should have five fundamental features:
- Uptime monitoring and outage alerts
- Link checking and testing for critical elements
- Site Updates and Maintenance plans
- A disaster recovery plan
- Quarterly SEO and Content Audits
An SLA alone often saves your site from the extreme situation. How much should it cost? Figure your annual needs, $4,000.00, and divide it by 13. Why thirteen? You should save a little money to know that your company is being proactive, and the provider knows they have a steady income, it is an even trade. About $300.00 a month in this case.
Budget Your Cost
Each time your developer provides a price estimate and you choose to wait, add 25% to that cost down the road. This ballpark is probably as close as you can get to a future expense. When you decide to wait also ask yourself what else would change if you did it today. You may find some additional savings. For example, if an upgrade has a new feature to integrate your CRM, you will probably save money by avoiding duplicate data entry.
Get going! Audit your technology and know what you have. Understand your risks, understand your budget, understand your interest, then work with your provider to get a strategy, and SLA in place. Even if you don't want to invest today is to know the interest you are earning on your Technical Debt.
Ready To Lower Your Technical Debt?
Contact us today to learn what you should be doing!