Skip to content(if available)orjump to list(if available)

Ask HN: Any active COBOL devs here? What are you working on?

Ask HN: Any active COBOL devs here? What are you working on?

99 comments

·July 18, 2025

COBOL legacy systems in finance and government are somewhat of a meme. However, I've never actually met a single person who's day job is to maintain one. I'd be curious to learn what systems are you working on?

ruralfam

Very old coder here. Wrote COBOL to help Atari add features to a inventory processing system to account for the fact that "inventory" intially was items received at the loading dock, fork-lifted to the shipping dock and shipped. So "inventory" needed to be booked immediately as sales. Now I dabble mostly with Python and JS/HTML. My memory of the Atari gig was that the most critical part was the CICS code. There was just one guy who knew enough to setup the CICS. If he got hit buy a bus... Well after about a year, the bus would not have mattered. Atari buried millions on unsold carts, and I went from working in a beautiful office complex next to Great America Park, to a windowless basement closet somewhere near Mountain View now making changess because the "forklift inventory" version was no longer needed. I know this is a bit off topic, but "COBOL" was the into I needed.

RSHEPP

My mother and her husband are COBOL devs for a US state government. She works on the health insurance side for teachers and other state employees. Think claim processing.

Lots of batch jobs running at night. Their alert system is an actual human who calls my mom when jobs fail in the middle of the night.

It's high paying for the city they live in, but not high paying for software development. They will both have full retirement and healthcare for life, assuming the government can fulfill it. They are both fully remote since COVID too.

She's also worked for state lottery, teacher's retirement system and DOT.

edit: she says they have a SQL database, but mostly store in IBM IMS

Lyngbakr

Is it entirely maintenance or does she also build new stuff with COBOL?

RSHEPP

She says it's both. By new stuff, it's mostly one off programs that handle small changes to the way billing or claims are handled. It sounds like they have a library of programs to start with and she extends it to fit the new edge case.

agnishom

By state, you mean US state, right?

RSHEPP

Correct. Updated.

ninja3925

Very likely.

slowmotiony

I work with a lot of COBOL dinosaurs in the bank, I often like to watch them work on their 16-colors IBM z/OS host terminals, it's quite mesmerizing. Sometimes they show me some interesting code that was written before I was alive (I'm 36), or tell me stories about big mainframe incidents in the '80s, where they would get called in the middle of the night and flown to a different country to fix a bug because there was no remote desktop back then.

chasil

I work with developers who code on OS 2200 and VAX VMS (running on Charon emulation).

Fun fact: the first SMP UNIX implementation ran on top of EXEC 8, the kernel of OS 2200.

"Any configuration supplied by Sperry, including multiprocessor ones, can run the UNIX system."

https://www.nokia.com/bell-labs/about/dennis-m-ritchie/retro...

Edit: https://web.archive.org/web/20150611114648/https://www.bell-...

accrual

> I often like to watch them work on their 16-colors IBM z/OS host terminals, it's quite mesmerizing

They really are. I had a parttime coworker who moonlighted some mainframe job and he often had another laptop on his desk connected to a z/OS terminal. He would show me some of the jobs and code occasionally too, really fascinating stuff, and he was quite good at it and could navigate quickly.

ksherlock

Damn mainframe people flaunting their 16 colors like they're a peacock or something. Shit. We only had one color (and one absence of a color) and that was good enough.

kazinator

PuTTY into Linux and you're in 16 colors.

haiku2077

My Linux terminal is 256 colors. Two hundred fifty six! That's like, every color!

TechDebtDevin

<16-colors IBM z/OS host terminal

This hasn't been virtualized?

zeeframe

I’m not a COBOL dev but I work with mainframes(z/OS). Most COBOL applications I’ve seen have been banking and insurance related with few exceptions. Most of them either run as a series of batch jobs or via transaction managers like IMS and CICS. Backends are usually sequential files(we call them datasets),DB2,VSAM(Virtual Storage Access Method) or DL/1(hierarchical DB that’s part of IMS). Quite a few places I’ve seen have run IBM MQ as well.

If changes are made to these systems it’s often due to changes in regulation or driven by changes in the business(new financial products being offered etc.

Off-topic: I’ve seen quite a few mainframe related posts on HN fly by over the years. I’ve been meaning to create an account and participate but I’ve only gotten around to it just now.

nstj

Thanks for your insight - it’s comments like this which make HN a place worth visiting every day.

And welcome!

znpy

Dumb question: mainframes and z/OS look interesting, how does one get started with learning about those systems and those environments ?

mindcrime

There's an emulator called Hercules[1] that lets you run (some) mainframe stuff on a PC. There are limits to what you can run on it though, mostly due to licensing issues with IBM.

You can also look at the IBM Redbooks site[2]. Search for terms like Z/OS, MVS, CICS, DB/2, etc. and you'll find a lot of IBM books, whitepapers (well, they call them redpapers, but whatever) and so on.

[1]: https://en.wikipedia.org/wiki/Hercules_(emulator)

[2]: https://www.redbooks.ibm.com/

schlauerfox

I'm not a mainframe programmer, but coming from x86 land I was very curious. I really learned a lot from the IBM Coursera "Intro to Mainframe" since none of my experience really applied it was tough. It had a real shell account to practice with though.

https://www.coursera.org/professional-certificates/ibm-z-mai...

Also the MOSHIX mainframe YouTube channel has a lot of info, and helped me setup HERCULES emulator for my own little mainframe experience.

http://www.hercules-390.org/

zeeframe

Not a dumb question at all! In Europe I’ve seen a few training programs held by companies looking to get new talent in to learn from the older techs. Browse around and see if any companies around you have something like that.

There are some free resources available that will allow you to get training but I haven’t tried them myself. IBM Z Xplore is worth a look as an example: https://www.ibm.com/products/z/resources/zxplore

I hope you find a way in, more mainframe developers and sysadmins(often called systemsprogrammers in the mainframe niche) are always needed.

Edit*: Spelling and grammar

jacktheturtle

nice, welcome to the party

zeeframe

Thank you!

biosboiii

2075 HN: Ask HN: Any active Java devs here? What LLM do you use?

mvdwoord

Not a COBOL developer, but working at a sizeable bank I witnessed the phasing out of their mainframes and AS400 systems. They ran some critical systems, both in retail and wholesale banking. They either converted to java, and optimized that code, but some COBOL code from the mainframe, and all of the AS400 stuff was converted into Micro Focus COBOL, which runs on Windows, which could be hosted on our Private Cloud. I worked on helping them migrate to our cloud infra, which was an interesting exercise. There was a very tangible cultural gap between the people maintaining and developing these applications and the rest of the organization.

datpuz

Can you describe the cultural gap? I haven't really met these folks in the wild, so I'm curious what the programmers of yore were like.

FL410

In my experience, it's usually lack of awareness about modern security risks, and lack of familiarity with modern infrastructure paradigms. The latter really isn't a problem since these systems are usually standalone, but the former does become a problem - they often are from a time where this just wasn't something to consider. As a result, these legacy systems are often using default passwords, have tons of crazy stuff exposed to the network, and are comprised of custom code written specifically for the business purpose (so the documentation is only as good as what they made).

On the other hand, these guys generally write pretty neat, lean code that is quick, reliable, and directly responsive to the business. The really fun thing is watching the users fly through the keyboard-only screens, sometimes with muscle memory that is faster than the terminal emulator can update - they're literally working ahead of the screens.

james_marks

Reminds of the DOS order management software I used in the 90’s.

ASCII tables, text only, with F key shortcuts. Hard to learn but blazing fast once you did.

Nothing modern approaches it.

mvdwoord

Oh yes, I remember that when we swapped out a bunch of terminals at an airline.. The users complained it was all way too slow on the new Windows machines with MS SNA server in between... I was wondering what it was all about, as a young and very naive dropout from uni on his first IT job. When I came down, this dude was banging on his keyboard and after some time stopped, pointed at the screen and you could see it slowly catching up, screen by screen.. He showed me the directly connected version next. I learned something that day.

justin66

In my experience mainframes at financial institutions are hidden behind IBM middleboxes that are specifically designed to obviate the infrastructure risks. It's a classic example of a company selling you both the problem and solution.

mvdwoord

I would say these people were in a relationship with the mainframe, if that makes sense. And also having worked at IBM in the past where I sat adjacent to the mainframe support team for Business Services, I totally get it. Mainframes are awesome if you ask me, and in a sense we have been trying to reinvent a lot of its goodness with "commodity" x86 hardware.

From a technical-cultural perspective it was mostly sulkiness, and a complete and utter lack of embracing the paradigms of distributed computing. Also, like most internal clouds, there were plenty of issues as it was. Initially they just tried to replace mainframe application components 1:1 onto VMs in whatever way and whenever anything was <100% reliable they complained that our cloud was not able to do it. I had to explain in a very harsh way, under a lot of pressure (I believe not hitting the deadline of switching off the mainframes meant renewal for a year at 40 Mil.. or thereabouts) the realities of "cloud".

The developers I spoke with in that time though, were very much the opposite of the move fast breaking things crowd. Intelligent, but also narrow minded I would say.

mindcrime

Apropos of nothing in particular, there's an older HN thread about "Good resources for learning COBOL" that some folks here might find interesting. OK, calling it a "thread" is over-stating things, but still...

https://news.ycombinator.com/item?id=18479536

perakojotgenije

My father is 75 and he still works, has his own software development company with his own back-office program written in cobol. He started a company back in 1991 with two other cobol programmers, they are retired now, and while almost all of the code they wrote has been replaced with c# code by younger programmers there are still some parts of the code written in cobol that he still maintains.

mtmail

Met one close to retirement who worked on a ERP system in the food processing industry. Nightly batch jobs would trigger orders from their suppliers, customer service would enter new orders. Two SAP migrations already failed, costing the company millions. All company process knowledge was in code, database fields have been repurposed (but no renamed, too much work), feature development stop long time ago. In parallel a new system was built in-house (no longer trusting external consultants) and his job was explaining what the system does. Probably well paid but he didn't seem to care, he just wanted to work less and retire on good terms.

abdullin

I grew to like migration projects like that.

Currently working on migration of 30yo ERP without tests in Progress to Kotlin+PostgreSQL.

AI agents don’t care which code to read or convert into tests. They just need an automated feedback loop and some human oversight.

datpuz

I would argue that they need heavy human oversight

exabrial

Not Recently. 2010ish was working for an insurance processor that was actively writing thousands of lines and executing on z/OS with no plans to migrate.

I was part of team that was writing web applications that needed to call z/OS transactions. The IBM solution was to use their Transaction Gateway product, which cost a ton, and was slow as shit. We developed a framework that used annotations on the Java Side to map COBOL Records to Java Objects and invoke transactions over a TCP socket. Learning how to pack decimals and convert encodings was pretty cool. We ended up with a framework that was at least a zillion times faster than the IBM solution. Left that job though as the company was is distress and was losing customers (health plans). They eventually folded.

mschaef

I haven't worked in COBOL, but I've worked with it.

This was around 1999, and I was building a system for configuring and ordering custom PC's at a large distribution company. One of the feature requirements was that we display inventory over the various options. (ie: There are 373 20G disks in stock, but only 12 30G disks in stock). The idea was that this would let a customer ordering 200 machines know that they should pick the 20G disk if the wanted it now.

The way inventory at this company was done was via two systems. There was a normal SQL database that had access to a daily snapshot of inventory taken from a mainframe that always had the up to date data. With the mainframe taking a while to process queries, we used the less current SQL database for the majority of the UI, but took the time to query the mainframe once a customer was in the shopping cart. Customers might see a change during the flow, but it would at least let them see the most current data prior to committing to a purchase.

The mainframe query itself was implemented by someone else as a COBOL job that produced the required inventory numbers. From my point of view, it was just a limited sort of query conducted over a specialized JDBC driver. (Not necessarily the weirdest aspect of that design.... for a variety of reasons, we did the UI in ASP/VBScript, the back end using Microsoft's JVM invoked via COM Automation, and the SQL database link was via a dubious use of a JDBC/ODBC bridge to connect to SQL Server. It all worked, but not the most solid architecture.)

==

My only other mainframe experience was working as an intern for a utility company a few years prior (1991-1992). They used CDC Cyber mainframes to run the power grid, using something like 4MM lines of FORTRAN code. The dispatchers themselves interfaced to the system using consoles with 4 19" color displays running at 1280x1024. Heady stuff for 1991. (The real time weather radar screen was cool too, in an age before the internet made it common place.)

andrelaszlo

I met a dev who's mom had been working on legacy banking systems her whole career. She had started in the eighties and she still did some urgent jobs at a crazy rate despite officially having retired.

nmcfarl

My stepmom who retired five years ago, did COBOL dev as part of her banking job until 2002ish and then she was full-time management track. In her bank, most of the work had been integrated with Java, and the Java was done by outsourced Indian teams. At the time she retired she felt the Indian teams had been failing for years to meet objectives, and finally management was seeing it. Additionally everybody who knew the COBOL side of things was retiring at the same time as she was and she did not want to know what the system would look like in five years.

iammrpayments

My mother used to teach Cobol back in the 80’s in Brazil but later she transitioned into management and haven’t touched a line of code for more than 30 years, she can’t even speak english wtf

dasil003

Credo!