I was recently interviewing a candidate in my office whose situation is a common one: he is an RPG developer and his company is migrating to a new platform. This is a dilemma I hear often from people who are self-described AS/400 Developers with years of experience on the 400. They are experts in CL programming, SDA, PDM, and even RLU, but they are having trouble finding a job in the AS/400 market as they find that the market is shrinking.
Frankly, I’m not surprised that these people are struggling. Listening to this candidate list his areas of expertise, I could be interviewing someone in the late 90s, not 2015. There is no mention of RDi, XML, SQL, or any RPG beyond RPG 3. As with any industry, the only way to stay relevant is to keep up with the changing times. To help advance a few careers, let me share a few things with my legacy AS/400 brethren.
First things first, let’s fix the name
First, if you are looking for a job, you have to understand that the AS/400 does not exist anymore; that platform has been gone for a very long time. Neither does the eServer, nor the iSeries, nor OS/400. IBM has taken this system through several iterations and changes. In 2008, IBM delivered IBM i on Power System – yes, that’s 2008! Power Systems hardware is a new hardware platform that was the result of the merger of System i and System p. This was a larger merger than S/36 and S/38 into the beloved AS/400. Today, IBM i is simply an integrated operating system, database and middleware that runs on the IBM Power System hardware platform.
If you are an “AS/400 person," you need to know this.
Update your development skills
In today’s market, it’s not good enough to be an old school AS/400 developer. You need to update your programming skills and have multiple tools in your toolkit. We are 15 years past Y2K (think about that for a minute) and RPGers need to embrace the future, because it’s here. Did you know that PHP, MySQL, Python, Perl, Ruby, node.js, and Samba can all run on IBM i?
Frankly, RPG3 is not a modern programming language. Columnar-based RPG IV is better, but still an older version. Embrace free format RPG – it is a modern programming language and has more functionality, is easier to code and easier to learn. Once you switch you’ll never want to go back. Also, learn about ILE, binding, and service programs. These approaches will help to modernize your code and help you find your next gig.
Also, simply knowing how to create DB2 files using DDS and having a little experience with interactive SQL doesn’t cut it. Creating tables via SQL or creating SQL views over existing files give more flexibility within the RPG program.
Next topic: PDM. Did you know that this tool has been stabilized as of V6R1? That means that there will be no more updates to this tool. IBM Rational Developer for i (RDi) is the way to go. RDi is the result of IBM’s strategy to provide common development and management tools across operating systems and languages. It is a modern toolset for application development on IBM i that replaces legacy tools, like PDM, SEU, SDA, and RLU.
Learn a few new tools
Again, simply knowing legacy RPG3 does not help find a job in 2015. It’s not too different than a college graduate stating that they know Microsoft Office – ok, great, and what else can you do? There are plenty of options available for seasoned developers to help them become more valuable and marketable.
As an example, learn how to process XML documents within an RPG program. XML documents are very common in web and integration projects. You can easily expose an RPG-service program with a simple wizard as an external web service to other applications inside or outside IBM i. Understanding how this is done opens the system and the developers to get involved in projects throughout the organization. Also, consider learning a new programming language. PHP and C# are two good options, but not the only options. These are good languages for web-based projects, and will open many doors and opportunities to different kinds of projects. Or, gain experience with a software system that does not run on IBM i but interacts with it. Take a look at systems that need to pass data to/from the IBM i, then get involved with these integration projects. Again, broaden your scope of experience and your business knowledge.
I often hear that these approaches cannot be used because of constraints with an in-place software package, or even coding constraints within the IT department. My reply to that is, don’t look for barriers, instead find a way to push through these challenges. Be a change advocate and help your company to realize the amazing platform they have and take advantage of the tools available.
We all love the old AS/400
I love the old AS/400, too! It was a great machine and it helped me to start my career. But, that was 20-some years ago. We need to embrace 2015 and the modern systems and development tools. The sad reality is that the market for AS/400 RPG developers is shrinking. However, there is always demand for a forward thinking, seasoned, IBM i developer who has experience with multiple languages and who can help interface IBM i applications with third party systems and external processes. If you were an AS/400 RPG developer and you know all this, consider yourself an IBM i developer!