David Brown is worried. As managing director of the IT transformation group at Bank of New York Mellon, he is responsible for the health and welfare of 112,500 Cobol programs -- 343 million lines of code -- that run core banking and other operations. But many of the people who built that code base, some of which goes back to the early days of Cobol in the 1960s, will be retiring over the next several years.
"We have people we will be losing who have a lot of business knowledge. That scares me," Brown says. He's concerned about finding new Cobol programmers, who are expected to be in short supply in the next five to ten years. But what really keeps him up at night is the thought that he may not be able to transfer the deep understanding of the business logic embedded within the bank's programs before it walks out the door with the employees who are retiring.
More than 50 years after Cobol came on the scene, the language is alive and well in the world's largest corporations, where it excels at executing large-scale batch and transaction processing operations on mainframes. The language is known for its scalability, performance and mathematical accuracy. But as the Boomer generation prepares to check out of the workforce, IT executives are taking a fresh look at their options.
Is Cobol being used in your organization to develop new business applications?
Yes - 53%
No - 44%
Don't know - 3%
In a Computerworld survey of 357 IT professionals conducted recently, 46% said they are already noticing a Cobol programmer shortage in the market, while 50% said the average age of their Cobol staff is 45 or older; 22% said the age is 55 or older.
"Organizations are trying not to get backed into a corner because of the skills issue," says Paul Vallely, mainframe sales director at software vendor Compuware Corp. "I haven't seen companies move off mainframes due to the Cobol skills shortage yet, but it's looming."
For Bank of New York (BNY) Mellon, which bought its first mainframe in 1955, keeping the core Cobol applications that run the business on the mainframe makes sense. Modernization efforts have made those programs more accessible through the use of Web services and more up-to-date user interfaces.
But for other types of non-core applications, and for smaller workloads, organizations have been gradually migrating off of mainframes -- and away from Cobol. In some cases those Cobol programs are simply re-hosted on Linux or Windows servers; in other cases they're rewritten in other, object oriented languages; and some programs are being replaced with packaged software.
"Over the past five years there has been an acceleration of [some] businesses moving off host platforms," says Adam Burden, global application modernization lead at Accenture. Often that means leaving Cobol behind by either rewriting it for J2EE or .Net or moving to packaged software.
Over the last few years, Gartner estimates that the world has seen about a 5% decline in total Cobol code, says analyst Dale Vecchio. Much of that involved migrations by small- and medium-sized mainframe shops that move off what they see as a legacy language when they retire the hardware.
It's declining because the functions can be developed by some other building block. "Cobol is no longer needed," Vecchio says. "There are alternatives."
While rehosting can get code off the mainframe quickly -- Micro Focus sells a platform that will support it on a Microsoft Azure cloud -- that is often seen as an intermediate step. It can be used as a way to get Cobol off the mainframe quickly, before eventually completely modernizing and transforming those legacy programs.
Cobol's image problem
Cobol, as a procedural language, is not perceived to be as agile as object-oriented languages for modern programming needs such as mobile apps and the Web. And despite the availability of state-of-the-art Cobol development environments -- including IBM's Enterprise Cobol on the mainframe and Micro Focus' Visual Cobol, which integrates well with Microsoft's Visual Studio development suite for .Net -- Cobol is widely viewed as a legacy language.
Nearly half (49%) of survey respondents whose organizations don't use Cobol say the reason is that the language is simply outdated.
Not everyone agrees, of course. "Cobol has had lasting value, and it's not broken," says Kevin Stoodley, IBM Fellow and chief technology officer of enterprise modernization tools, compilers and security at IBM.
To what extent does your organization or systems use these programming languages?
Language name A lot A little None
Cobol 48% 16% 37%
Java 39% 40% 22%
C# 26% 25% 50%
VB.net 25% 38% 38%
Visual Basic 22% 49% 30%
In the more recent survey, over 50% of respondents say Cobol represents more than half of all internal business application code.
"There has been no renaissance for Cobol," says Accenture's Burden. "There's not a whole lot of new development going on. But our clients are enhancing their core applications and continue to maintain them." Indeed, 53% of readers say they're still building at least some new business applications in Cobol. The vast majority of that code is still being written for the mainframe.
But IT organizations also don't have much choice. Migrating large-scale systems built in Cobol is just too costly and risky a proposition. "They might want something more flexible but they just can't do it. They're captive to Cobol," Burden says.
The down economy has helped put off the inevitable, Compuware's Vallely says. "Economic issues provided everyone with a hall pass because not as many folks were looking to retire," he says. But as the economy improves, retirement plans may pick up too. "Organizations are trying to be more proactive," he predicts.
"No other language has seen as big an impact from changes in the demographics of the workforce as has Cobol," Vecchio says. Going forward it will become more difficult to maintain a Cobol portfolio.
"The inflexion point will come when enough Cobol programmers have retired that an organization can no longer tolerate the risk," he says. At that point, most of those programs will migrate -- but not all.
For BNY Mellon, those Cobol batch and transaction processing programs on the mainframe represent an enormous investment. And while Gartner says it's technically possible to move mainframe workloads of up to 3,000 MIPS, the workload at the bank, which relies heavily on Cobol, consumes 52,000 MIPS of processing horsepower, spans nine mainframes and is growing at a 10% clip each year.
"The business wants us to make investments in programming that buys them new revenue. Rewriting an application doesn't buy them any value-add," Brown says.
Instead, the strategy is to "rightsize" some non-core applications off the mainframe where there's a business benefit, try to keep mainframe MIPS growth under 5%, and stay the course with the bank's core Cobol applications by passing on the business knowledge to younger programmers the bank will need to recruit and train. (See sidebar.)
Closing the Cobol talent gap
Where do you find Cobol programmers these days? College graduates with training in Cobol are in short supply. In Michigan, for example, state schools that offer Cobol programming have cancelled classes due to a lack of interest. "They can't get anyone to enroll," says Jonathan Miller, director of Saginaw County Information Systems and Services.
But some colleges are still providing Cobol training -- with help from IBM. The mainframe vendor has developed curricula in association with more than 80 colleges and universities ranging from Brigham Young to Texas A&M. "We donate hardware and software, help with the curriculum, and they graduate hundreds of people every year," says Kevin Stoodley, IBM fellow and chief technology officer.
The Guardian Life Insurance Co. has recruited Cobol programmers from Workforce Opportunity Services, a nonprofit that collaborates with business clients and local colleges to train economically disadvantaged students to fill less popular technology disciplines such as Cobol programming. "They take kids from disadvantaged neighborhoods and provide them as consultants," says former Guardian CIO Frank Wander, who now has his own consultancy, IT Excellence Institute.
"It's sort of a work/study program. We have over 200 consultants today in five states, and we're expanding," says Workforce founder Art Langer.
BNY Mellon and many other organizations also increasingly rely on outsourcing firms to pick up maintenance and support duties. But for many customers with mission-critical applications, offshore is not the place to keep the institutional knowledge of the business rules that is behind that code. David Brown, managing director of BNY Mellon's IT transformation group, says the bank wants those skills in house.
Fortunately, it's not all that difficult to cross-train programmers in Cobol. "Right now it's pretty easy to hire programmers, and if they understand Java I can bring them back to procedural languages like Cobol," Brown says. The trick, he says, is to develop a curriculum that teaches not just Cobol, but the business rules behind the code that runs the company. "We need to make sure we can roll that forward."
- Robert L. Mitchell
Other functions, such as general ledger and reporting, are moving onto distributed computing platforms, where they are either replaced by packaged software or reengineered into Java or .Net applications.
But Brown still needs Cobol programmers to replace those expected to retire, and the learning curve can extend out for a year or more. That means adding staff and having a period of overlap as Cobol's secrets get passed on to the next generation. "I'm trying to get those people onboard and do the knowledge transfer sooner rather than later," Brown says.
But that kind of proactive approach, and the extra costs it incurs, can be a hard sell. "We haven't gotten to the point of feeling the pain yet. When we do, it will happen," he says.
Brown wouldn't specify the number of people he's hoping to hire, but said that the "real heavy need" will happen in the next five to 10 years, as the original mainframe programmers are expected to retire en force during that period. BNY Mellon currently has "a few hundred" Cobol programmers on staff, Brown says.
Brown's concerns are well placed, says David Garza, president and CEO of Trinity Millennium Group, a software engineering firm that has handled code transformations for large businesses and government organizations. "Almost every job we get has Cobol in it," he says, and most of the calls come from organizations that have already lost their collective knowledge of the business logic. At that point, he says, "it's a big risk."
The cost of waiting
Trinity Millennium Group and other vendors like it have established processes for analyzing and extracting the business rules embedded between the lines of Cobol code. "The solutions have come a long way in terms of the ability to extract logic and rules," says Burden.
But the process is time consuming and costly. One Millennium client recently spent $1 million to have its Cobol programs analyzed and business logic reconstructed as part of a migration project off the mainframe. "If they had the legacy programmers there and we had done the exercise with them, it would have cost $200,000 and taken one-tenth of the time," Garza says. If you wait until that institutional knowledge is gone, he warns, the costs can be as much as ten times higher than it would have been beforehand.
Are you noticing a shortage of Cobol skills in the labor market?
Yes - 46%
No - 23%
Not yet; expect it within 5 years - 22%
Don't know - 8%
Compounding the loss of skills and business knowledge is the fact that, for some organizations, decades of changes have created a convoluted mess of spaghetti code that even the most experienced programmers can't figure out. "Some systems are snarled so badly that programmers aren't allowed to change the code at all," Garza says. "It's simply too risky to change it. They're frozen solid."
That's the situation faced by Jim Gwinn, chief information officer for the USDA's Farm Service Agency. The USDA's System/36 and AS/400 systems run Cobol programs that process $25 billion in farm loans and programs. "We have millions of lines of Cobol and there's a long history of it being rewritten," he says. "It has become increasingly difficult to change the code because of the complexity and the attrition of the knowledge base that wrote it." That's a big problem because laws that govern farm programs change every year, driving a need to update the code to reflect those changes.
Gwinn hired consultants from IBM, who concluded that rewriting the programs in a different language or rehosting them on a distributed computing platform would be complicated and costly. But the System/36 hardware had to go, so Gwinn decided to bite the bullet: FSA will move off of its end-of-life mainframe systems by rewriting some of the code in Java and replacing the rest with packaged software from SAP.