I have spent my career in the mainframe computing space. It’s a strange and insular world. And it’s shrinking a little each day, as the global mainframe workforce sees skilled workers retiring, transitioning to other roles, sometimes even dying, without a sustainable pipeline of mainframe-knowledgeable employees to take their places.
Before starting my current position at a private mainframe software vendor, I worked as a developer for one of the world’s largest mainframe software providers, and later at the IT headquarters of one of the world’s largest mainframe software users. Throughout my time at each, I kept hearing a familiar refrain.
The mainframe is dead! Long live the mainframe!
The story always begins the same way. Big users of Big Iron desperately want to get off the mainframe platform, and once they do, it’s bye-bye Mainframe, and all remnants, real or imagined, of giant rooms of whirring tape reels, blinking lights, and teams of men with 1950s haircuts will disappear forever.
Obviously, that hasn’t happened. The plot is always foiled, playing out something like this.
A mainframe shop undergoes some senior management changes. The new boss, invariably a too-young, MBA-wielding bean counter with no clue what he’s doing, takes a look at the monthly mainframe bill. He recoils into mid-air like a cartoon character, red-faced and suspended in position for a few seconds while smoke comes out of his ears. He then falls back into his executive desk chair and launches an initiative to migrate his company’s operations off of the mainframe.
His underlings earnestly carry that message forward, where it is met with scorn and laughter by the mainframe technical team, a group which, as the story goes, is somehow always made up of older, mostly male employees, crusty and bawdy as they come in a professional workplace. They say they’ve been through all this before, and insist, with a common voice and hacking cough, that the bean-counter is a fool who will eventually come to his senses, just as everyone before him has.
Fast forward about two-and-a-half years, and the migration project has been scrapped, the boss with the MBA has moved on to become CFO at another company, and on the mainframe team, one member has retired, another was laid off, and a third (the youngest and most promising) has transferred to a “safer” area of the company.
Five years later, repeat.
If you are a mainframe-centric person, you know this story well, and can recite the talking points:
- The mainframe platform is not more expensive when all costs are considered.
- The transaction throughput of the mainframe cannot be matched.
- Reliability, availability, scalability, data integrity, and security on par with the mainframe is not available elsewhere at any price.
But mainframe folks also hear the jeers.
- It’s prehistoric technology.
- It’s uncool.
- It’s impossible to learn and use, and no one wants to try.
- Nobody cares.
In response to these criticisms, the mainframe community closes ranks and demonizes those who dare challenge all that is holy. “They don’t understand,” the old-timers lament, before branching into an unhelpful tirade about how an assembler programmer can code circles around some Johnny-come-lately, Python punk.
I don’t believe we devote enough resources to front-ends, dashboards, or even documentation which might help someone who is willing to venture into our world. Once the pioneers, we now often act as members of an elite and entitled club, refusing entry to anyone without the secret handshake and a detailed understanding of first level interrupt handlers.
Yes, it’s a strange and insular world, and even though we say we want and need new blood, people have taken up sides in what increasingly looks like a culture war between the mainframers and the anti-mainframers. Some stakeholders embrace this battle with the partisanship of present-day American politics, with equally unproductive results.
The mainframe has been written off many times, only to emerge time and again as the platform of choice for the world’s largest and most consequential enterprises. In this regard, those crusty old men with their crusty old “I hate Mondays” coffee mugs are right. But the younger generation of programmers are also right. We are keeping them out of the club while simultaneously making it a place where nobody wants to come in anyway. What is the appeal? With all the threats to the mainframe’s existence seen to date, I fear that what could ultimately lead to its permanent demise is that there simply won’t be enough people who know how to work on it.
A former colleague of mine, an excellent mainframe systems programmer, once proclaimed in a meeting that “it takes a special kind of person to do this job.” Was that a boast or a dare? Either way, it’s not music to the ears of anyone hoping to widen the employee pipeline.
Efforts to recruit people to the field, or to insert mainframe courses back into universities, typically involve trying to make the case that mainframes are cool because of what they can do and how important they are.
This approach isn’t fooling anyone. It’s great messaging only for those already on board. Of course it’s true. But once again invoking the analogy of politics, the truth hardly matters. To newly minted programmers with plenty of options, the mainframe path seems both unexciting and too short to sustain a career-long journey. One peek around a bend and they see surprisingly lackluster pay and old men with complaints, instead of stock options and young people with skateboards. Most importantly, they see themselves as having to declare a partisan choice. A binary decision with a big wall separating the two sides. When a new graduate’s friends all go running to the beach party, it’s hard to coax him or her over to the side of green screens and tales of punch cards.
As with politics, we must remember that we are on the same side and that we all want basically the same things. So, before I retire, get laid off, or die myself, here are a few suggestions to help replenish the mainframe workforce and save the world.
Let’s try to portray the mainframe as within the same sphere as any other field of computing. Let’s make the choice between C#, Javascript, and COBOL look like an equilateral triangle.
Let’s show how the client-server side of a business works in conjunction with the mainframe side, not separately from it or against it. And show the synergy the web and social-media departments have with both. There is already a lot of common ground. Metal-C, Mainframe-based Linux, AI in all flavors. IoT needs both mobile devices and mainframes to operate.
Instead of apologizing for areas of overlap or highlighting them as potentially desirable exceptions, we should champion the wide open, undivided playing field that is modern computing, until such thinking becomes the status quo.
In all its forms, we must tear down this wall.
David Herlich is a Senior Mainframe Software Developer who most recently worked at DataKinetics—the global leader in Data Performance and Optimization. He started his career at IBM, where he spent over 25 years in the Db2 for z/OS development organization as a developer of the product and as an evangelist for the platform. He earned his degree in Computer Science and Mathematics from the University of California, Davis, along with a double-minor in Communications and Psychology.
In November 2021 dotNET became available for Linux on z bringing C# to the mix.
Great article. For some time now, I’ve been thoroughly in the C#/JavaScript camp. The newer stuff. But I remember mainframes and even did my share of programming in mainframe assembler, CICS, COBOL, and PL/I. In my various job searches over the years, I would have been happy to locate work in a mainframe environment. Like many people who gravitate to this line of work, I love the challenge of problem solving. It’s fun and rewarding to improve major systems — where the improvements can come in a variety of forms. And there’s wrong with introducing new(er) technologies in the mix. The great thing about mainframe systems is that they typically do something that’s very important. Lots of folks like the “substantial-ness” of mainframe and mainframe-related systems.
But, it’s as if mainframe shops are going out of their way not to be accessible to people who, like me, would enjoy the environment and (I’d like to think) contribute meaningfully.
Thanks for writing this article. You have put into words the disappointment I’ve experienced over the years with whole ecosystem that seems to want to remain at arm’s length from the rest of the IT world.
Really good points.
I’ve always been a little annoyed that we use an extinct animal, the dinosaur as a “logo” for our platform.
I came across this article a while back and I think it made many good points of Mainframe Technology culture.
I started working at a Fortune 500 company a couple years ago on a MF team. I was the youngest on the team, having just finished school. I was hired to help with modernization efforts- rewriting legacy applications in “newer” programming languages. I didn’t have MF training from school, I took many data related courses around Cloud, but I was willing to learn something new.
I enjoyed it at first. I was able to contribute, learn, and work with some great people. I was utilizing modern programming skills using some new Open Source environments IBM had recently created for z/OS. I thought it would be a good long term career.
As I got into my full-time work, I started noticing issues.
The main one was that the overall attitude, as described in this article, was that “Mainframe is going away”. Sure, our team managed financial report compulsory to the organization. Yes, Mainframe has been reliable for the transactional process of organization for many years. However, the organization and leadership made it clear that Cloud roles were the jobs of the future. Monetary bonuses were provided to devs for getting Cloud certifications. There was extensive Udemy courses for cloud. There were work groups dedicated to Cloud. None of that community, investment and long term job prospect potential was being showcased, especially to to younger employees, in Mainframe dev areas.
I remember sitting in a meeting with my Mainframe Dev team and hearing them say, “Will our jobs exist in 5 years?”
The past days of doing a 6 month in-person COBOL or PL/I course to then start your job are over.
The way to get “young people” interested in Mainframe is to prove it gives long term job potential. Many of my colleagues started work full time anywhere between 22-25. We’re not looking for “skateboards” and “hip” tech. What we’re looking for is job stability. We’re starting our professional careers and we don’t want to work in a tech space that an organization claims they’ll sunset. Start pushing Universities to teach it more. MF business leaders should push their organizations in marketing of Mainframe as modern product. I feel like Mainframe isn’t necessarily experiencing as much as functionality/reliability issue as it is marketing.
There are some issues we can look at though for the technology functionality/intergration of Mainframe, and I think they need to be pointed out. For example, it doesn’t seem like the platform has been built to integrate with other platforms (B.I. Tools, Reporting tools, etc.) like Cloud and other modern on-prem solutions are. It was amazing how many times a coworker would ask me things like, “How do I get Mainframe data into a .csv file?” or “Why aren’t there direct data connections from Mainframe to Tableau/Power BI”?
When working on my team I always wondered, “Instead of shifting Mainframe to a different platform, because we have to, and we can’t get skillsets, the technology feels outdated, why haven’t we done more to improve what currently exists?”
This was a long comment, but I hope it provides some insight into the perspective Mainframe from a younger developer.