As you come to the end of a project you may start to encounter the effects of technical debt. In other words, the cost of rework that’s incurred from an earlier decision to take an easy approach rather than one that would have been better, but potentially longer or harder.
It’s important to keep in mind that in this context refactoring is not the same as rework resulting from technical debt. Refactoring is simply improving the internal operation of an app without changing what the user sees. Rework is more extensive, costly, and time consuming since it usually requires re-design on or more components.
Refactoring code isn’t the same as re-working code
If you have encountered the effects of technical debt that’s a good lesson to learn from! This is among the most valuable, but also one of the hardest concepts to understand in project management — waterfall AND Agile.
Some tips for avoiding technical debt include:
- Understand the apps architecture and the impact different parts of it have on performance and functionality.
- When a feature or change is proposed use your understanding of the app to determine what the costs are for different implementation options.
- Evaluate the risk of implementation options against different app factors — functionality, performance, security, impact to deadlines, etc.
- Using this data have the hard discussion with the team, customers, and management on risks vs. benefits of the various options.
Based on these it’s okay to defer correcting a technical debt issue, but it’s NOT okay to ignore it! When you encounter the effect of technical debt document it immediately! Treat it as a bug and open an issue documenting it so it won’t be forgotten.
Chingu helps you to get out of “Tutorial Purgatory” by transforming what you’ve learned into experience. The experience to boost your Developer career and help you get jobs. And it’s Free!
You can learn more about Chingu & how to join us at https://chingu.io