When we hear the word “agility,” we might think about swiftness. Quick, swift work that gets ahead of the deadline. While this might not be a totally inappropriate interpretation, it does miss the mark a bit. Agility does help us be quick, but it more importantly helps us be quick on our feet. Adjusting and meeting a deadline isn’t a bad thing, but rushing for the sake of quickness definitely can be.
This is the idea behind tech debt. Meeting deadlines is important, but taking shortcuts and cutting corners in order to do so can produce suboptimal results. Further, these shortcuts will likely have to be fixed and patched in the future. Having to play catch-up with your own developmental shortcuts is messy and harmful to both your team and your workflow. This “catch-up” is technical debt.
Avoiding technical debt is clearly essential, but it can be easier said than done. Here are a few critical pillars to keeping in your strategy agile and debt-free.
Mindful Dev Practices
Especially in software development, there are plenty of bad practices that professionals pick up along the way. One of these common sins is avoiding testing throughout the process. Testing is a responsible and necessary part of coding, and pushing through a project without thoroughly testing along the way can lead to confusing errors, long debugging periods, and overall slow or sub-optimal performance. Making sure protocol provides time and resources for testing helps make sure these problems are minimized, and that they don’t pile up as larger problems in the future.
Even beyond errors, rushing to complete projects and cutting corners leads to suboptimal coding. Whatever the cut corner looks like, these shortcuts likely need to be fixed and cleaned up later, but that creates more work in the future for a project that should already be finished. On one hand, both manual and automated testing are important tools and processes to help avoid building this technical debt. On the other hand, however, dev teams need other kinds of support to make sure any of this is more than just rhetoric. More on that in a bit.
It’s no surprise that agile makes an appearance here. For many, tech debt builds up as a consequence of traditional, overly linear development frameworks. While traditional frameworks might feel comfortable and are time-tested, they also lend themselves to unnecessary shortcuts and the lack of flexibility to adjust when necessary.
Agile frameworks are based on flexibility and collaboration. Errors and missteps don’t need to be dragged along for the remainder of the project, since these flexible frameworks allow devs to make changes more comfortably without halting the workflow. This trend towards agile also speaks broadly to another principle that is keeping an eye on the horizon. Tools can be improved even if they aren’t broken, and if you stick too closely to the same traditional processes, you run the risk of being left behind.
Supporting Your Team
Returning to the point of avoiding sub-optimal code, this doesn’t just happen after sending an email titled “write better code.” To invest in better results, invest in your team. One side of this is recognizing that development is dynamic and, as such, the dev and organizational needs of your team may change project-to-project. Hiring a great team is an important first step, but making sure that team has the right tools is also something to keep in mind.
Additionally, tools and hiring aren’t everything. Making sure the workplace environment is one where team members feel comfortable and committed is more than half of the game. Each team member is a person with their own goals and motivations that may not be perfectly aligned with the project or even the company. Making sincere efforts to support these motivations helps build your team as people as well, and ultimately leads to a better workplace environment and better results.
Technical debt is a complicated problem to tackle since it can stem from so many varying sources, but a holistic approach to making sure your team feels supported and has the appropriate time and resources to complete projects is foundational for any solution to take place.
Living Pono is dedicated to communicating business management concepts with Hawaiian values. Founded by Kevin May, an established and successful leader and mentor, Living Pono is your destination to learn about how to live your life righteously and how that can have positive effects in your career. If you have any questions, please leave a comment below or contact us here. Also, join our mailing list below, so you can be alerted when a new article is released.