Software Development for the Mainframe & High-Performing Teams

A case study in modernisation

Boris Petkov
Modern Mainframe
4 min readJun 1, 2021

--

One of our goals at Broadcom’s Mainframe Software Division or MSD is to enable the present-day developer to work on the mainframe platform using modern tools and technologies that support high-performing teams. We bring a great deal of innovation to our partners and customers, but by today’s standards, are we a high-performing team ourselves? Even when judged against the toughest industry standards, I believe we are. Here’s why:

A generic definition of a high-performing team is that of a group that brings together members committed to mutual growth and personal success. Common attributes of such teams may include participation, accountability, clarity, interaction, flexibility, localization, creativity and quickness. Contemporary agile software development practices provide enablers for some of these attributes. For example, the process of breaking down user stories together as a team allows for knowledge sharing and fast cycle times. Stand-up meetings, pair-programming sessions, retrospectives directly encourage interaction and participation, provide clarity and fuel a sense of accountability.

High-performing teams need technological enablers; fast cycle times imply quick feedback from automated tests and deployment, which require a robust CI/CD pipeline. DevOps and lately AIOps are the disciplines that support those efforts and one cannot imagine a modern development process without them. Many of the historical reasons why DevOps has taken longer to emerge on the mainframe have been overcome in recent years, and today’s mainframe developers have no excuse but to lead with best practices.

My recent professional experience took me on a journey from a professional services-oriented development team at NCR Corp., through the fast-paced highly performing agile teams of Microsoft, to the in-house development department of the Barclays bank ending up in Broadcom’s MSD. The broad perspectives I gained helped me understand the reasons behind the classical waterfall methodology and sophisticated CI/CD pipelines enabled by the latest automation technologies offering agility, short feedback cycles, and scalability.

As part of the Open Mainframe Project — a multi-company initiative promoting the use of open source software on the mainframe, I have had the privilege of witnessing a DevOps transformation on the platform. I was very pleasantly surprised when I realised that a mainframe software development house used tools and implemented practices comparable to those seen in cutting-edge technology giants such as Microsoft. The combination of agile methodologies and DevOps techniques enables us to foster and enjoy an environment for truly high-performing teams.

In Broadcom’s MSD, we started our transformation with the people. Our development teams benefit of a dedicated structure of agile coaches and scrum masters that work hand-in-hand to promote the behaviors of high-performing teams. Participation, accountability, clarity, interaction, flexibility, localization, creativity, quickness are all covered in our practices. They are supervised and managed by trained professionals and frequently discussed and challenged during retrospectives.

Quickness in particular, however, also needs an accessible and reliable DevOps infrastructure. Mainframe environments are unique in many ways and for that reason are often kept siloed which can result in reduced flexibility and slower acceptance of changes. Well, not for us! Since we are designing the tools for DevOps on the Open mainframe, we revolutionise the platform to make it appealing to the present-day developer and system programmer.

We make and use modern, feature-rich development tools for both traditional mainframe programming environments such as Assembler and COBOL as well as for the much more modern and widely popular Java and JavaScript. On top, we are building and maintaining fully automated and frictionless CI/CD pipelines using open tools such as Jenkins and, lately, GitHub Actions that execute automated testing and validating on the mainframe using the open source Zowe CLI and API Mediation Layer. And we are not stopping there; we are already looking forward and experimenting with extensive usage of containerisation to smoothen our setup and deployment processes even further.

One differentiator I see for the first time in my career is how Broadcom has structured our mainframe software engineering management organisation. My previous experience has been that most line managers in software development are promoted high-performing senior engineers. They usually work with small teams and act as both people managers and technical leads. I observed this pattern in all my previous jobs but not in Broadcom’s MSD, where we pay extra attention to people management.

Our line managers all have formal training, they lead slightly bigger teams but are leaving the technical side to the experts while they focus on the bigger picture. Don’t get me wrong, we are still very engaged with technical stuff: constantly observing, participating, sharing opinions and giving feedback. However, we aim to truly enable and support an environment that promotes self-governing and autonomous teams who are engaged with their decisions and their success.

So, are mainframe software development processes compatible with high-performing agile teams? Well, they are if they embrace the open mainframe as a platform that is not much different and special than any other enterprise computing environment. If one is familiar with the latest developments in IT and has the agile mindset, there is no barrier against achieving the same results as those seen in any other big software development house. For this last year that I have been with Broadcom’s Open Mainframe team, I must say it has been an eye-opening experience.

--

--