These millennial developers have done a fantastic job of driving new ideas to improve our development processes. They are Alexander Poga, Christine Jenkins, Travis Thorne, Josh Armitage, and Michael Froend. The other day, I had a chat with this group to better understand how they perceive development on the mainframe.
Today and tomorrow, I’ll share a few of their insights here. Following is my interview with the millennial developers.
Why work on mainframe software instead of some new cool web app?
Christine: For me, the type of development work is secondary to a number of other factors. Whether I’m working on mainframe software or some new cool web app, it’s important to me that I’m challenged by my work, that there’s creativity, and that the many problems needing to be solved keep the work dynamic and interesting.
Travis: I’ve been interested in high performance computing for a number of years and developing and testing on the mainframe has let me explore my interests. I also like the fact that the software I’m involved in helps, indirectly, many thousands of people, who interact with systems of records, such as financial transactions, on a daily basis.
Many say that millennials do not want to work with old languages like Assembler, COBOL, PL/I, C, and the like. What do you have to say about that?
Christine: There’s definitely less exposure to the old languages these days. I didn’t learn Assembler and PL/I at university. That could lead to a belief that they’re of less use today. However, I’d say that if [developers] are willing to learn and be challenged by something old, yet new to them, then that perspective could change. As I found, there are more important things than language to consider when it comes to work.
Josh: There is a huge amount of value in learning low-level languages. Although it is nice to have some functions handled by the language, knowing how and why things work is key to being a good programmer. Working in C and Assembler is a rite of passage that leaves you more skilled for life; I don’t think you can fully appreciate the niceties of higher-level languages without a full understanding of the mechanics that underlie them.
Alex: When transaction processing time or problem analysis needs to be completed in a fraction of a second, it can actually be pretty interesting and advantageous to work in some of these older languages.
Michael: Also, having the more experienced gurus on my team share their wisdom makes the work much less complicated. Making sure that the team has the tools and the know-how to bend these older languages to its will makes it more of a non-issue.
Travis: Right, we try to continually improve our development processes, so we try to utilize new languages and language features on z to speed up our development. Java support on z/OS is actually really great! It makes developing super easy; you can write on any PC or Mac and execute on z/OS in exactly the same way. Also unlike university, there are very few opportunities to write entirely new software in the real world; instead software maintenance is an invaluable skill to have and the more languages you know the more work you’ll get.
About the Millennial Developers:
Alexander Poga is a Software Engineer and DevOps advocate as part of the IBM Fault Analyzer for z/OS team. He is passionate about improving development tools and practices and creating elegant software solutions. He is currently assisting in the DevOps transformation of z Systems development. When not working (or acting as tech support for friends and family), Alex spends far too much time thinking about fast cars, planning his next gadget purchase, and playing video games with friends.
Christine Jenkins is the Test Lead for the File Manager for z/OS development team and has recently branched out into mainframe software development. She is passionate about automating as much of the testing process as possible. In her free time she enjoys playing board games with friends, ballroom dancing, and planning dance events.
Travis Thorne is a Software Tester for the Fault Analyzer for z/OS development team in Perth, Australia. He received his Bachelor of Software Engineering from Curtin University of Western Australia and worked with IBM as part of a joint University project. Over a four-year career there, Travis undertook a number a roles, including development of ISPF-based software, automated 3270 testing, build automation for a number of Eclipse-based products, and more recently Test automation for batch programs, eclipse applications, and web frameworks. In his spare time, Travis competes in amateur cycling races and events around Perth.
Josh Armitage is a 24-year-old voracious learner. When he isn’t throwing himself down into a 3270 emulator, he’s an aspiring competitive ballroom dancer who spends what spare time he has nose deep in the next book on his never-ending list of recommended reads or chasing his dream to be a polyglot.
Michael Froend is a 23-year-old Graduate Software Engineer who started working at the IBM Perth Lab in February of this year, after transitioning from an intern role in 2014. He came to the lab fresh from university and is constantly learning new things from the more experienced vets. When he isn’t working, he likes going to the beach, rock climbing, hanging out with friends and playing video games.