Resolving ‘Technical Debt’ With Education
This year is a better time than any to get started addressing technical debt in your business. If 2020 taught us anything, it’s that investing the time and energy into creating sound infrastructure in our business, especially in technology, can make or break a business during uncertain times.
Technical debt is caused by many factors and is usually a result of limited time, resources, education or money to do it right the first time or upgrade systems when needed.
Costs of Technical Debt
Technical debt doesn’t go away on it’s own. It has to be dealt with and the longer you wait to deal with it the more costly, time consuming and disruptive it will become. You may think it’s expensive and time consuming to keep up with regular upgrades and modern technologies, though the longer you wait the more this expense compounds.
The costs of technical debt are not just monetary, but also time, labor and the possibility of business disruption. Due to constantly evolving technologies, it’s easy to get left behind if you don’t stay up with the latest technology, coding languages and programming.
What’s even worse is if you are using outdated applications that are not compatible with newer technologies. A disruption like this could hurt the front end of your business while you resolve the problem on the back end. If your IBM i applications are still using code from the 1980s or if you have applications with poor coding, it’s time to focus on paying your technical debt to get your business on track for a successful future.
As technical debt adds up, your company could reach a point of no return, technical bankruptcy, though don’t get discouraged just yet! There are many steps you can take to get your business back on track and start paying your technical debts in 2021.
Solutions for Common Technical Debt
Set Up a Technical Debt Payment Plan
The best thing you can do for technical debt is to identify what you need to pay back and make a plan for repayment. This includes creating a timeline for your payment and setting goals for the future. Ask yourself the following questions:
- What upgrades need to be made now and going forward to keep our systems up to date?
- What projects were pushed out too soon that need code to be rewritten and/or cleaned up?
- In what ways can we modernize our IBM i applications for business efficiency and user interface?
- What types of education or training do our current or future employees need to reduce technical debt in the future?
Once you have decided what you need to work on, create a timeline for completion and stick to it! When you are paid in full, develop a plan to stay on track. Know when systems need upgrades and keep yourself updated on opportunities to improve your system. When new projects come along, spend the time designing before developing to ensure you don’t get back into technical debt.
IBM i and RPG Education
As opportunities to learn IBM i and RPG programming become less common in mainstream education, lack of knowledge and proper education is a leading cause of technical debt. Without knowledgeable developers, issues with older code, poorly developed code and overlooked upgrades are not easily solved. When education is not at the forefront of your IT business plan, this technical debt adds up. We have seen numerous companies get out of technical debt by investing some time and money into educational solutions.
We see the need for education in two ways:
- Finding qualified IBM i developers to hire
- Keeping seasoned developers up to speed on modern programming techniques
Finding Qualified IBM i Developers to Hire
IBM i education is no longer part of most information technology college degrees, though the need for this type of education is still imperative. Without proper college education, it’s more and more difficult to find qualified IBM i developers in today’s job market. As we see seasoned developers beginning to retire, the need for educated IBM i developers is growing. We have found the perfect solution for this problem:
- Look within your own company for an employee who knows your business well and would like to learn how to code. Send them through an IBM i online training program to become a developer. They already know your business operations, so they will be ready as soon as they complete the training.
- Seek out new college graduates. New college graduates will know how to program in several different languages and are often very technologically savvy. Enroll your new graduate in an online IBM i training program to learn IBM i and RPG programming. While they are in the training program, have your seasoned developer or manager teach them your business operations. Learning both IBM i and your business operations will provide them with the framework to succeed.
Keeping Seasoned Developers up to Speed on Modern Programming
Your seasoned developers will need training on the latest RPG and RDi programming to pay your technical debt. Old or poorly done code can be a huge problem for your business. Sending your seasoned programmers through new RPG and RDi programming classes will help them understand the newest technologies and bring your business applications into the 21st century.
Knowledge Transfer and Documenting Your Systems
Keeping your systems accurately and consistently documented can save you from accumulating more technical debt. If you have seasoned developers that are near retirement, have them document how your systems are set up and the business processes that are integrated into your IBM i applications.
You can also hire interns or have one of your new hires interview your seasoned developers and document how your system is structured. This will not only develop documentation, but also help your new hires learn your business and how your software supports it.
Technical debt doesn’t have to negatively impact your business, as long as you make a plan to repay it. The time and money you invest to get out of technical debt will greatly outweigh the costs of not doing anything at all. Online education is becoming commonplace in the field of information technology and with the pandemic many students are taking classes from home. With this shift comes a need to develop the skills required to be successful with remote learning. Online learning requires you to be focused, persistent and dedicated to your education, but it also involves choosing the best online learning platform for the subject you’re taking.