Programming the Mainframe in 2024

What It Takes to Be a Mainframe Programmer in 2024

Boris Petkov
mainframe-careers
5 min readFeb 9, 2024

--

Introduction

Traditionally, mainframe programming has been associated with seasoned professionals who have spent decades honing their skills. However, the demographic of mainframe programmers is undergoing a transformation. A new generation of technologists is emerging, empowered by a plethora of newly developed innovative tooling, bringing fresh perspectives, diverse skill sets and capabilities to the mainframe arena.

Mainframes, sometimes perceived as isolated and stagnant, have proven time and again their resilience by adapting to modern challenges and environments. These robust computing machines are the lifeblood of industries such as finance, healthcare, retail, and telecommunications, handling vast amounts of data with unparalleled reliability and security. Mainframes are run by programmers, and this is what it takes to be one of them in 2024.

Mainframe Engineer

Colloquially named just a “mainframer”, the term refers to an individual who specializes in working with mainframe computing environments. Mainframers can be programmers, system administrators or hardware installation and maintenance specialists and their expertise may range from knowing programming languages such as Assembler and COBOL to configuring and administering the operating systems and their features.

In 2024 the mainframe is part of a bigger enterprise computing infrastructure, so beside the traditional system programming and software development, a mainframe engineer can specialize in other areas such as Hybrid Cloud or DevOps engineering and architecture. Mainframe APIs enable complex business integrations, external orchestration, and reporting tools whose designs evolve into holistic solutions. Today’s mainframers are the specialists that make those integrations possible, they are the driving force that continues the evolution of the platform.

Mainframe Programming Languages

By far the most popular programming language for the mainframe platform is COBOL (Common Business-Oriented Language). Although being one of the oldest, it is still widely used for coding business, finance and administrative systems and applications. COBOL arguably holds a record amount of lines of code in production and is still growing. Its popularity may be because its syntax is so explicit and close to spoken English.

The most performance efficient way to program the mainframe is to use Assembler. This low-level programming language is specific for the architecture of the particular microprocessor and enables direct control over the hardware, high-efficiency and close integration with the machine architecture. Many programs originally written in Assembler are still maintained and developed to enable critical system and business operations.

PL/I (Programming Language One) is a versatile programming language developed for scientific, engineering and business applications. The language was created as a response to the limitations of the existing programming languages at that time. Its original intention was to make it a more general-purpose language, capable of handling multiple use cases of different nature. Regardless of being considered one of the fundamental development tools for the platform, it remained less popular and in the shadow of its big brother — COBOL.

In the present, mainframes come integrated with several compilers, interpreters and runtime environments such as C/C++, Java, Rexx, Node, Python among many others. New applications and automations are usually implemented using one of those, nevertheless, the mainframe programmer of today would still be expected to have a good grasp on the classics too.

Mainframe Development Environment

Traditionally, the mainframe platform offers a set of tools, and environments tailored to the unique requirements of these powerful computing systems, TSO (Time Sharing Option), SDSF (System Display and Search Facility) and ISPF (Interactive System Productivity Facility) being the most prominent ones. Those three, together with some other console user interfaces, are commonly called “the green screen” and are an essential part of the evolution and present of the platform.

Being character-based programs displayed on a character-oriented terminal emulators, they often intimidate new enthusiast that are eager to become proficient with the platform. Until today, a proficient mainframe system programmer must know how to interface with the platform by using TSO, SDSF or ISPF. However, for today’s mainframe software developer, this is no longer the first they need to learn and for some it may not be necessary at all. Instead, VS Code, or less commonly known as Visual Studio Code, is becoming the IDE (Integrated Development Environment) of choice for the mainframe as well.

This is how VS Code’s extensions marketplace looks like if one searches for the “mainframe” keyword there. An impressive number of specialized extensions from a variety of vendors and volunteers appear, providing a remarkable variety of options for one to choose when setting up their IDE. For a developer with experience in programming for distributed platforms, this would feel very familiar and a natural first step in their journey towards the secrets of the mainframe.

Conclusion

The landscape of mainframe programming in 2024 reflects a dynamic shift propelled by a new generation of technologists and the relentless adaptability of mainframes systems. Traditionally associated with seasoned professionals, mainframe programming now welcomes a diverse cohort armed with innovative tools and fresh perspectives. The resilience of mainframes is evident in their sustained relevance across vital industries. While traditional languages like COBOL and Assembler remain integral, today mainframes natively support powerful programming languages such as C/C++, Java, and Python. The development environment, once dominated by character-based interfaces, has evolved with the rising prominence of VS Code, symbolizing a departure from the good old “green screen”.

In 2024, a mainframe engineer, or “mainframer”, encompasses a broader skill set, extending beyond traditional programming to include expertise in Cloud, DevOps, software engineering and architecture. The mainframe’s role in the larger enterprise computing infrastructure emphasizes the importance of these specialists in driving the ongoing evolution of this powerful computing platform. As the mainframe continues to adapt, so do the professionals who contribute to its resilience and evolution, shaping the future of mainframe programming.

--

--