In today’s world, no matter which tools you work with, you can be an IBM i programmer.
Why aren’t there more young IBM i programmers?
The received answer is that schools don’t teach RPG or “business programming” anymore and that, as a result, there’s a shortage of qualified IBM i talent. But that take doesn’t hold up. Each year, U.S. colleges churn out tens of thousands of IT graduates, and while it’s true that the demand for programmers continues to outpace the supply, tech companies in a variety of subsectors still manage to get ahold of these recent graduates.
The particularly dire state of the IBM i talent gap is primarily a function of how the industry approaches talent acquisition and our assumptions about what it means to be an “IBM i programmer.” The received wisdom assumes that a good IBM i programmer already has IBM i platform-specific knowledge. We seem to have forgotten that a talented programmer is a talented programmer, regardless of the platform.
To stave off the impending talent crisis, companies in the IBM i ecosystem need to be willing to invest time and money into training recent graduates. As the proverb goes, the hardest programming language to learn is the first one. That is to say, the coding techniques and approaches to application architecture you learn while programming in one language are transferable to other languages. When writing code, you’re not programming the language, you’re programming the application (or the function, service, etc.). While it means new employees won’t be ready to work on production code immediately, being open to coders without IBM i platform experience has the benefit of massively broadening the talent pool.
Just as important is the need to make the platform itself more welcoming and more familiar to young programmers. That is, employers need to make it more open. Nearly all younger programmers know open-source tools, because they’re taught them in school. Moreover, they like these tools. Telling them they can’t use GitHub, JIRA, or Jenkins if they work at your shop discourages them from applying and fuels the talent gap in the IBM i ecosystem.
Many people don’t know that IBM i already has the capability to run open-source applications, natively. IBM PASE (Portable Application Solutions Environment for i) has been a part of the operating system for more than decade, but many companies don’t make use of it. If the benefit of having more flexibility to run open-source applications in conjunction with your RPG code hasn’t been enough of an encouragement to explore this feature in the past, the threat of a declining work force basically demands it.
To be sure, there will always be the need for at least some of your programmers to understand specifics about the platform. They need to understand libraries and source files, library lists, job queues, and job logs, and they must be familiar with RPG and DB2 to maintain the fundamental codebase. Open source just adds flexibility to your setup by allowing seasoned RPG programmers and young talent to work in tandem.
In short, incorporating open source into your IBM i setup gives you the best of both worlds. You still get the unparalleled reliability and low total cost of ownership of the IBM i platform, while also getting the flexibility of being able to put young programmers to work immediately. The key is for programmers in the IBM i space to recognize that in today’s world, no matter which tools you work with, you still are (or can be) an IBM i programmer.