Software engineers' top pain point today is technical debt management, and new development styles are partially to blame, according to Tori Wieldt, a developer advocate for New Relic Inc., an application performance monitoring software provider.
Software technical debt is reaching epidemic proportions due to the industry's focus on rapid application development as the silver bullet for business agility, Wieldt said. Rapid implementation of microservices, containers and digital transformation are the action items of this immediate-gratification approach. Yet, DevOps teams who rush into working with these technologies often develop a technical debt management headache.
"In the interest of getting things out quickly, there have been a lot of shortcuts that have been taken along the way," Wieldt said in our video interview. "Eventually, that catches up to you as a company."
Wieldt explained that poor technical debt management is a troublesome byproduct of agile and iterative development approaches to projects like microservices and containers. As iteration deadlines are constant, few have time to "clean up that big pile of technical debt," she said. Most are staring up at their companies' mountains of code, fearing that one move in a project could spur an avalanche.
Tori Wieldtdeveloper advocate, New Relic
Technical debt is just one software-quality killer created by the rush to speed software to market. Another is the fact that overworked software engineers make mistakes in code, Wieldt said.
"Developers are rarely going to deliver something great between midnight and four in the morning," she said. Businesses whose developers have such heavy workloads will see a lot of turnover. Software engineers' projects go on their resumes and are part of their personal brand, so producing quality projects is a top concern for them.
Overall, handling technical debt management well may require businesses to slow down product delivery deadlines and restrict the implementation of new technologies like microservices and containers, Wieldt said. In the long run, the quality of software must be more important to businesses than speed of deployment, she stressed, adding that deploying technology that doesn't work well damages a business' reputation.