Things to Remember
- Behind each technical debt is a developer. Be sensitive towards the problem and don't blame the coder. This is a team problem.
- Many non-technical people do not understand the phrase "technical debt." Spend the time to educate them.
- Be prepared for angry/frustrated individuals. Sometimes technical debt is perceived as a failure to execute properly.
- Recognize there are two types of technical debt: existing and future. Identify how to tackle each.
- Do not tackle larger debt items without approval. This encourages distrust.
- Understand that a company has priorities. Development is part of a larger puzzle. Don't expect all debt to be tackled at once.
- Have each area of technical debt outlined, categorized, and sorted.
- Try to provide multiple solutions to a problem. Don't forget to include any risks and an estimate of time. Presenting options encourages trust within the decision making process.
- Where applicable, provide statistics on each problem area. Time spent, projected future allocation, etc.
- If statistics are provided, be prepared to defend them.
Making the Case
- Check all attitudes at the door. Even though the debt might be known to a group or department, the larger group is probably unaware.
- Be patient when explaining concerns. A common understanding must be reached before moving forward.
- Understand that buy-in is very important. They are the customer. Don't lose them.
- Refrain from large proclamations such as "We need to tackle [blank] now." This tends to invoke defensiveness.
- Do not provide ultimatums. Avoid statements such as "If we don't do this, it will fail." This tends to invoke anger.
- Use visual aids. Spreadsheets and white boards help people get on the same page. They can adapt to the conversation quickly.
- If possible, recommend a small recurring time window to tackle debt.
Technical debt has been compared to credit card debt. This is a great adage. Credit card debt is usually accumulated over a period of time. Although it can be consolidated, paying it down takes time. If ignored, it will catch up with the debtor. Technical debt follows these same guidelines. It should not be ignored but is impractical to tackle all at once.