9 reasons why you have technical debt and how to reduce it

0

As an IT manager, you are responsible for delivering solutions that reduce costs, transform the business and generate revenue. Chances are, one of the biggest hurdles your organization faces is technical debt.

Technical debt causes friction and can significantly slow the delivery of IT solutions. The result? Your IT team cannot deliver at the scale required by the business. IT managers need to tackle technical debt in order to meet business needs.

[ Also read: 5 technical debt lessons the pandemic taught IT leaders. ]

9 causes of technical debt

There are a number of factors that cause technical debt. From my experience, here are some of the main ones.

1. Executive Guidelines to Minimize Costs

Companies that are on the verge of profitability or preparing to be sold generally limit their IT investments. This forces IT to operate with what it has, even if it means its systems lose maintenance and support.

2. Mergers and Acquisitions

When you buy a business, you get everything, including aging systems, IT processes, and people. Often the acquired organization has a different philosophy and approach to IT; for example, a decentralized or centralized approach to IT service delivery.

3. Business decisions

In order to get a solution to market quickly, business stakeholders often make decisions that limit scope or force IT to take shortcuts.

4. Software/architectural decisions

Poor software/application architecture decisions will require refactoring of the solution in the future. Applications are often over-engineered, creating a “nuclear fly swatter” that is difficult to maintain and perform poorly.

[ Read also: What causes technical debt – and how to minimize it ]

5. Poor Software Selection Decisions

Packaged applications usually go through a software selection process. This process can be very subjective and is often too focused on cost. A solution that costs less than competitors may also be less flexible, non-scalable, and difficult to maintain.

6. Outdated or Non-Existing Enterprise Architecture

IT organizations need an enterprise architecture that defines the tools, technologies, and platforms used to deliver solutions. If it is non-existent or dated, there is no technical plan to follow.

7. Poor software quality

Poor quality code developed by an unskilled team can lead to refactoring. Developers are eager to use the latest tools and technologies, but don’t quite understand how to build scalable solutions with them.

8. Bad Software Development Process/Lifecycle

Lax software development teams create poor code. Software development methods have been developed to ensure the delivery of quality code. Code should be reviewed to ensure it is of high quality and best practices are consistently followed.

9. Enterprise Resource Planning (ERP) Customizations

ERP platforms offer many features and functionality. However, each ERP implements business processes that allow companies to tailor the platform to their business process. The challenge comes when organizations try to upgrade. Too many customizations can make upgrading difficult and expensive to maintain. The result is an outdated, maintenance-free ERP platform.

IT managers need to tackle technical debt in order to meet business needs.

Impacts of technical debt

Here are some examples of the impact technical debt can have on an IT organization:

Increased shipping costs: It takes more time for IT to deliver solutions based on older tools, technologies and platforms. Development and testing takes longer and integration is more difficult.

Lost sales: When production systems are down, shipments are delayed, integration with suppliers is prevented, and customers cannot place orders online. This damages relationships and organizations can quickly lose sales or even customers.

How to overcome technical debt

Almost every business has technical debt and it is usually not financially feasible to address all technical debt at once.

So how can you, as a CIO, manage technical debt? Consider the following steps:

1. Identify

Carefully inventory your organization’s existing technical debt. You will need a complete list to proceed to the next step.

2. Prioritize

Since it is not financially possible to deal with technical debt all at once, the highest risks should be dealt with first. Answering the following questions will help you prioritize:

  • Which platforms or solutions pose a security threat?
  • Which platforms or solutions put your partners, suppliers or customers at risk?
  • Which platforms or solutions have a significant impact on IT costs?

3. Define the future state

Be sure to define the technical environment of the future state. If not, you risk creating more technical debt by providing solutions that are not on the target platform or technology stack.

4. Run

Once you have identified the high priority items and future state architecture, create a plan to execute and align with the business and leaders. Addressing high-value, high-risk items first helps you minimize risk to the organization.

Technical debt doesn’t need to slow down the delivery of IT solutions to your organization. If you understand where technical debt lies, you can assess high-risk items and implement a plan to address them.

[ Want more strategies for mitigating technical debt? Download the free ebook: Technical debt: The IT leader’s essential guide. ]

Share.

Comments are closed.