Slashdot Log In
Cobol Job Market Heating Up
Posted by
timothy
on Thu Oct 23, 2008 01:12 PM
from the dress-the-part-at-the-interview dept.
from the dress-the-part-at-the-interview dept.
snydeq writes "Developers seeking job security in the years ahead could find an unlikely edge in Cobol. According to an InfoWorld report, demand for Cobol skills is surging, with salaries on the rise. More importantly, the short supply of offshore Cobol programmers and the fact that mainframes aren't going away anytime soon are spurring longevity for big-iron skills, with many companies looking to hire in-house Cobol pros to bridge mainframe Cobol apps to the rest of the enterprise. The report provides further evidence that Cobol may indeed be primed for a comeback, with new kinds of Cobol integration jobs emerging to prove old-guard skills are critical to some of the hottest areas of software development today."
Related Stories
[+]
Why COBOL Could Come Back 405 comments
snydeq writes "Sure 'legacy systems archaeologist' ranks as one of the 7 dirtiest jobs in IT, but COBOL skills might see a scant revival in the wake of California's high-profile pay-cut debacle. After all, as Fatal Exception's Neil McAllister points out, new code may in fact be more expensive than old code. According to an IDC survey, code complexity is on the rise. And it's not the applications that are growing more complex, but the technologies themselves. 'Multicore processing, SOA, and Web 2.0 all contribute to rising software development costs,' which include $5 million to $22 million spent on fixing defects per company per year. Do the math, and California's proposed $177 million nine-year modernization project cost will double, McAllister writes. Perhaps numbers like those won't deter modernization efforts, but the estimated 90,000 coders still versed in COBOL may find themselves in high demand teaching new dogs old tricks."
[+]
Don't Count Cobol Out 274 comments
Hugh Pickens writes "Although Turing Award-winning computer scientist Edsger Dijkstra once said, 'the use of Cobol cripples the mind; its teaching should, therefore, be regarded as a criminal offense,' Michael Swaine has an interesting entry to Dr. Dobb's Journal asserting that Cobol is the most widely used language in the 21st century, critical to some of the hottest areas of software development today, and may be the next language you'll be learning. In 1997, the Gartner Group estimated that there were 240 billion lines of Cobol code in active apps, and billions of lines of new Cobol code are being written every year. Cobol is a key element in the realization of modern distributed business software architecture concepts — XML/metadata, Web Services, Service Oriented Architecture — and e-business."
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
Write that shit for a living??? (Score:5, Funny)
Re:Write that shit for a living??? (Score:5, Funny)
Parent
Re:Write that shit for a living??? (Score:4, Informative)
I'll do it!!! I'd even be willing to clean toilets if they paid me engineering wages. Yes I'm a sellout. "I know Cobol, and I charge $90 an hour. When do you want me to start?"
Parent
Re:Write that shit for a living??? (Score:5, Informative)
$90? You're selling yourself cheap. Try somewhere around $120, for starters. It goes up from there. And these are rates for long-term projects, not wham/bam/thankyou/ma'am two week gigs to solve some obscure CICS problem.
That's assuming you have the resume and enough systems experience to back it up, but most people who do COBOL for a living do anyway.
In the mid-00s I seriously considered learning COBOL and C mainframe development after seeing how much those old farts from IBM were pulling in. It's far from sexy, but it's a lot of cash.
Parent
Re:Write that shit for a living??? (Score:5, Insightful)
$120 an hour?!?!? If I can learn the mess that is 8502 assembly, I can surely learn the Cobol mess too.
(runs off to find tutorial)
Parent
I think you meant (Score:5, Funny)
SUBTRACT 1 FROM WS-OLD-KARMA GIVING WS-NEW-KARMA.
There, fixed that for you.
Parent
Re: (Score:3, Funny)
You forgot your PIC statements!
Re: (Score:3, Funny)
Dude! Im so there! Where is my $120?
How do people learn it? (Score:4, Interesting)
Re:How do people learn it? (Score:5, Funny)
That's why the only people who can stand to work with it are elderly who are hard of hearing.
Parent
Re:How do people learn it? (Score:4, Funny)
Then Oreilly should be an excellent start..
SHUT UP SHUT UP SHUT UP
Parent
Re:How do people learn it? (Score:4, Informative)
The only problem I have with COBOL is that every variable is a global variable, defined at program startup.
Parent
Re: (Score:3, Insightful)
I have seen plenty of COBOL code (one program containing over 10,000 lines), now try reading through it and understanding the scope of each variable, when the working storage itself takes up 2,000 lines of code (at least 1,000 variables, ALL global, ALL being used 'randomly' throughout the entire program). These are the programs that no one touches, because of
Re: (Score:3, Interesting)
Re: (Score:3, Informative)
http://cobolforgcc.sourceforge.net/ [sourceforge.net]
Re: (Score:3, Informative)
Okay, I thought I was joking, but apparently, somebody really has a Cobol implementation in VS [findarticles.com]. This unholy union is clearly the work of Satan.
When I see Visual x86 Assembly for .NET, I'm going to have to smash something.
Serious alternatives to Visual COBOL (Score:3, Informative)
Actually, I don't think you need a modern guide. COBOL hasn't changed much, older books may be ok.
MicroFocus is good. Another segment in that space with a lot of potential is in the Sun CICS emulators (http://tinyurl.com/6od7wr). These are large systems that can offer a way out of the IBM mainframe trap while still supporting legacy OLTP systems. I don't know that they've achieved huge commercial success, but the options are out there.
It's all in the dollars, I guess. For some firms -- say, with 20 or
Re:How do people learn it? (Score:4, Funny)
To learn how to program on Linux years ago I scrapped together some used computer parts, put together a Linux system, and dove into code.
So to learn Cobol I guess I'd go dumpster diving for a mainframe. Hopefully one with some code left on it.
Parent
Re: (Score:3, Informative)
There are COBOL compilers for the PC, some are even free (even if they are a few years old). Google COBOL compiler or take a look at this site: Thefreecountry [thefreecountry.com].
Included at this site are links to old favorites such as COBOL650 and Fujitsu COBOL compiler (student version).
Re: (Score:3, Funny)
Just make sure the mainframe is energy star rated. You don't want it trickling electricity when in sleep mode....
If you do buy one, let me know, I wanna start up a hydro business in your neighborhood.
Why is Cobol still alive? (Score:3, Interesting)
Why is Cobol still alive and in demand? What's so good about it? Why can't we just port everything over to a newer language and be done with it?
Doesn't it cost more to keep paying these rare programmers than to just update/convert/replace the systems?
Re:Why is Cobol still alive? (Score:5, Insightful)
A company can spend a few million dollars rewriting and thoroughly testing a replacement system. Or they can spend less than 10% of that to have one Cobol developer keep the system up and running.
Very often, the old systems have been working smoothly for many years. A rewrite will bring a monstrous amount of headaches and cost, especially for key systems like financial transactions.
Parent
Re:Why is Cobol still alive? (Score:4, Informative)
Typically, with these old systems, adapting to new business needs and adding new functionality are done secondary to the core system. For example, at MasterCard all transactions eventually go through the ancient mainframe system. That feeds daily into a very modern data warehouse, where all the new applications perform reporting and analysis. These newer systems can be changed as often as necessary without any impact to the old mainframes.
Reduced operational costs and reduced consulting fees would very often be offset by the cost of the rewrite and ongoing maintenance of the newer system.
Parent
Re:Why is Cobol still alive? (Score:5, Interesting)
Why is Cobol still alive and in demand? What's so good about it? Why can't we just port everything over to a newer language and be done with it?
Doesn't it cost more to keep paying these rare programmers than to just update/convert/replace the systems?
Because it is cheaper to patch code written in 1970, than re-write it and go through the QA process to insure the end product does the same thing.
That is why.
Parent
Re: (Score:3, Insightful)
Especially when you are not really sure what the code does. If it works, you try not to mess with it. Many of these systems were written when memory was pricey and variable names cost something. It can be hard to figure out what they did when you are trying to analyze a variable called WC03-IDX that is used 62 times. COBOL may be "fat" but memory and processors are cheap now. I worked for a company that hired non-programmers to cut code and handle maintenance. It was all in COBOL. Nice, easy-to-read-at-2AM
Re: (Score:3, Insightful)
Cheaper in the short term, and the long term costs are difficult or impossible to see. As anyone who has been paying attention to economic news lately knows, it's all about the short term, and damned be the long term.
There's no good economic or technical reason to keep these systems around -- the fact that they are still being used and patched is a reflection of office politics and managerial failures.
Re: (Score:3, Interesting)
If you have a financial institution running on an existing reliable mainframe, why would you disturb that? In the real world, updates don't happen all that often if something already works.
Re: (Score:3, Insightful)
Because it works?
A good programmer is a good programmer. They all cost about the same.
Really if you have a system that works why pay to reinvent the wheel? The pay to retest it.
So the answer is. Because it works.
Re: (Score:3, Interesting)
A good programmer is a good programmer. They all cost about the same.
Although, the point of TFA is that the COBOL job market is heating up. As in, COBOL programmers are starting to command greater salaries due to a supply and demand.
Which, if it keeps going that way, will turn itself right around when the salaries (company expense) gets high enough to justify rewrites.
Re: (Score:3, Insightful)
Re: (Score:3, Insightful)
On an industry wide scale, it probably does cost more to keep paying COBOL programmers to maintain legacy systems. But at any individual company, the short-term cost of paying a high hourly rate to an aging COBOL coder to keep the wheels turning is much less than the cost of rebuilding the system that's run the company for forty years.
Remember Schwarzenegger wanting to cut California state employee's salaries to minimum wage for the duration of a budget crisis? It was the state IT department that nixed th
Re:Why is Cobol still alive? (Score:5, Interesting)
Parent
Re:Why is Cobol still alive? (Score:4, Insightful)
Because there still exists in the world companies and people that have priorities other than "the latest l33t technology".
Assuming the hardware can run the newer language of course... But you still have to face the same basic problem, in a few years your l33t "newer language" will no longer be l33t or newer - it's be the stodgy old stuff that only crusty old farts program on. What then? Go through the same exercise every five to ten years?
That sounds more like a recipe for keeping programmers employed, regardless of value, than it does for keeping a system stable and operational. (Which a large part of why IT is often viewed with such suspicion in many quarters - because the constant rewrite/upgrade cycle that keeps the IT departments e-penis turgid rarely seems to provide much of a ROI.)
A handful of (COBOL) programmers costs the company just a couple of million dollars a year for a stable functional system. A stable of ($l33t_language) programmers costs about the same, plus the potential costs of hardware changes, plus the potential for months of disruption or loss of data...
Parent
Re:Why is Cobol still alive? (Score:4, Interesting)
Now... As a former COBOL programmer - this is not just switching one outdated language to something new. For one, COBOL is actually excellent when it comes to doign things it was meant to do, which is commercial software. Need a choice of storing numbers in characters, BCD or float? Reasonable string handling (UNSTRING comes to mind) and a gazillion of other useful features? COBOL is somewhat limited, but very powerful for a certain, limited set of applications. PL/I can do about everything COBOL can - and better, but for some reason, it never became THAT popular.
(Now if it COBOL only had an ALTER ... TO PROCEED TO ... DEPENDING ON ... )
I doubt that you can translate it automatically into somewhat readable code in whatever language of choice you might have in mind. That, plus the fact that a lot of COBOL code in use today has been working (and been improved) for more years than Linus Torvalds spent on this planet so far, makes it difficult to replace. (Not to mention the side effects. Imagine rewriting - from scratch - a complex insurance application which comes with CICS (no problem, runs under loads of platforms nowadays), VSAM (you don't want to know) and other file access methods and tons of JCL written for a JES3 environment. Trust me - Unix is trivial by comparison. And you need to understand both to migrate the stuff.
Parent
Because it works. (Score:3, Informative)
I know COBOL, I do not program in it for a living. The simple fact is that it works and it works well. Don't compare JAVA, C++, or C#, to it. Sorry those languages are so damn cluttered and so easily made incomprehensible it really is silly. The one thing I notice as a difference from COBOL (or similar) programmers compared to those using newer languages, the COBOL folks will use proven routines over the latest gee-whiz attempt to do it another way. I can go look into the C++ CMS and find a dozen ways
Re:Why is Cobol still alive? (Score:5, Funny)
Neither has anyone else!
Trust me, porting code you don't understand is not an option.
Parent
Re:Why is Cobol still alive? (Score:5, Funny)
Parent
Short supply? (Score:5, Informative)
I'd disagree with that. Schools in India are still providing lots of people with mainframe skills. The whole shebang, like InfoMan, CICS, etc. Not just Cobol. At least that's my impression. I see a lot of people from Tata, InfoSys and IBM Global Services doing mainframe-centric maintenance and even new development at companies I have contact with these days.
Hand me my walker, it's time to get paid (Score:5, Funny)
Cue up the Theme from Shaft, I'm ready to walk that aisle. Twenty-eight years later, I am ready for my place in the sun. You bunch of Java-smoking hippies make a hole cause I'm coming through. I told you that personal microcomputers were a flash in the pan. Take your Winchester drives and Hercules graphics and shove em up your ass. Big Iron is here to stay.
Dammit, where are my car keys? Honey, where are the keys to the Citation?
Yeesh! (Score:4, Funny)
I'm a 33-yr-old COBOL guy (Score:5, Interesting)
A couple of things people should realize when thinking about getting into mainframe/cobol:
1. COBOL programmers are 99.9% baby boomers. If you want to spend your next decade getting talked down to by a 50-something or 60-something who thinks they're a programming god because of their teaching degree and 30 years writing COBOL, then you're probably into leather and whips, and would be happier staying in your dungeon. That's just my opinion, I could be wrong.
2. COBOL is not challenging to learn (it's designed that way), and the programming tasks are largely mundane. You'll be working almost exclusively on data processing tasks, because that's what the mainframe does best: massive throughput of number crunching.
3. You shouldn't just learn COBOL, you should spend time with JCL and DB2's version of SQL, and some CICS concepts would serve you very well. But without JCL and DB2, you're practically useless anyway. But they're not hard to learn.
4. zOS also runs Java now, so if we just stay back and let it rot, eventually perhaps they'll just throw it all to Java.
5. It's hard to just "take a class" on COBOL, but forward-thinking companies are starting to train people like disaffected teachers, just like what was done in the 70's. So if you want to work with/clean up after that sort of developer....
If, after all this, you really want to know more, IBM has most of the useful documentation online.
http://www-01.ibm.com/software/awdtools/cobol/zos/library/ [ibm.com]
But the "dummies" book should serve you very well.
Oh, and once you start working with them, expect lots of, "Why does my PC do this", kind of questions, because most of the COBOL people I've met in shops aren't very technical. (IBM people are bright enough though)
Re: (Score:3, Insightful)
More as opposed to what?
Only large organizations use mainframes, so it helps to look at that model.
Large companies generally bin out salaries for most professionals. Developers are no exception.
So you'll get tossed into an income bin with people of similar relative experience. Having a scarce skill will push your income towards the top of that bin. So if the range for "Developer 1" is $52,000 - $75,000, you'll be closer to the upper end. If you're comfortable being a contract consultant under your own n
time flies (Score:4, Funny)
Is it 9999 already???
Cobol is primed for a comeback? (Score:4, Informative)
And so is Brain Damage:
"The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offence." (1968) - Dijkstra
Translate to something more pleasant (Score:3, Interesting)
Many moons ago, I wrote a disassembler that emitted mock "c" syntax, which I could turn into real C with a few global substitutes.
You can do the same with normal assembler syntax and an ad-hoc parser, and therefor you can turn the "accountant's assembler" from add foo to bar giving zot to zot = foo + bar;
This is just a special case of the semantics-preserving transformation problem, which my old employer used to do on a daily basis (I worked in a porting shop).
And yes, I'll do this for money if asked (;-))
--dave
Just think of COBOL as a scripting language (Score:4, Informative)
Just think of COBOL as a scripting language for business applications. Yes, the syntax is wordy. But the big advantage of COBOL isn't in the procedural code. It's in the data declarations. COBOL has very clear ways to talk about external data structures, and good integration with external data in files and databases.
It's a trick! (Score:4, Funny)
I still think this is a trick to get all those Chinese and Indian software engineers to train for a worthless language, so we can get our old jobs back...
COBOL isn't evil. (Score:3, Informative)
Many years ago, right before the dot-com boom, I was out of college and looking for any job. The economy was lousy in 1988, and I had a computer science degree, and a big firm offered me a killer job with an awesome salary. Sadly, the job was all about COBOL.
Happily I had another job lined up at a famous research center. But it was heavily government funded, and their funding disappeared. So I took the Cobol job, as it was a job, and it paid well.
Well, it was the most awesome job I had ever. I learned a lot. COBOL was the worst part about it, but there were plenty of other design challenges, and I worked with a bunch of smart people who were also saddled with COBOL. Of course, you can do just about anything with enough COBOL and enough creative thinking. And, of course, as a computer science guy, sometimes it is fun to exercise a mainframe even if you can only exercise it with an antiquated language.
The nice thing about COBOL, of course, is that its pretty hard to get yourself in trouble. The bad thing is that it can't easily do all the great things that a modern (post 1962) language can do. Or at least in can't do those things in an elegant way. Yes, even in COBOL-72 you can dynamically allocate memory for a complex data structure - if you're creative enough.
The other nice thing about living in a Cobol/Mainframe shop for a while is that you realize that everything in modern computing was delivered like 40 years ago by IBM. Sure, some things have changed, but just about all the big important things have been in that mainframe environment forever.
Of course, the web and dot-com boom started to emerge and I left the mainframe world after a couple years. A lot of my mainframe buddies did successfully make the transition, and the others mostly retired.
I still have fond memories of the people and systems. Yes, they are both all crusty and old, even back then, but all those things ain't as bad as people say.
Except for JCL. I always hated JCL. Now that was a total senseless hack.
Re: (Score:3, Funny)
and I HaVe A FIREPLACE! Lets BURN IT!
Re: (Score:3, Informative)