So I wonder if it's something like manufacturing in China - it's not just cheaper, it's that the expertise has moved.
You can't incentivize American programmers with a lot of experience by throwing money at them, when they retired ~50 years ago.
I signed up for a COBOL course at a state university around 2000, but dropped it without ever attending a class. I think they still had line printers.
At one point I was amused that there seemed to be a standard for object oriented COBOL...
It is not what you specifically are arguing here, but I have read different iterations of the above dozens of times on HN and it is always highly upvoted and almost all comments are in support of this position. I find it interesting that you can just pay more to buy or rent in SF, so by this definition there is no housing shortage in SF.
The problem with this argument (as a native German speaker) is that in German, there do exist two different concepts that are both translated with "shortage" in English:
- [die] Knappheit
- [der] Mangel
"Knappheit" is a sign of an efficient market: if the supply decreases or the demand increases, the prices go up, so only the buyers that are willing to pay most get their share. This makes a market efficient.
"Mangel", on the other hand, means that (nearly) no matter how much you are willing to pay, you cannot get the good. This is a strong sign that the market is broken (often because of regulations).
Of course the media in its agenda loves to confuse these two concepts and writes of "Fachkräftemangel" ("shortage of professionals"; even though "Fachkraft" which I translate with "professional" here, actually literally means "field [field of study] force"), hiding the fact that there are no signs of Mangel, but of Knappheit.
I guess I'm on that side, for the following reasons - the companies that want Cobol are companies that are pretty rich. Yet, Cobol salaries are on the low end for Software developers.
>I find it interesting that you can just pay more to buy or rent in SF, so by this definition there is no housing shortage in SF.
there's no housing shortage in SF for billionaires who are willing to pay whatever is asked. Did I mention my perception that the companies who want Cobol programmers are really rich.
Now, it may be that there is an actual Cobol shortage, I would even agree that it is likely because at the rate offered not very many people would be interested in learning a language generally derided and not much like other languages. But we cannot know that there is an actual Cobol shortage when the rates offered are less than those for Machine Learning experts.
If you offer top rates for Cobol programmers and can't get them, then you have a shortage.
There is another definition of a shortage which basically says that supply doesn't respond to price, i.e. even if people are willing to pay more, the total amount of supply doesn't increase.
If gasoline was suddenly $50/gallon, it wouldn't stay there very long because it would immediately be profitable for new supply to come online, using production methods that aren't economical at lower prices. Supply would increase in response to higher prices.
This is also true of COBOL developers. If they were highly paid (relative to other software developers) then more people would learn COBOL and the supply of COBOL developers would increase in response to the high price.
It isn't really true of housing in SF. The price goes up and the supply remains the same because new construction is constrained by zoning. So there's a shortage.
My mom knew COBOL. She retired in the 1970s. You're going to have a tough time hiring her now.
A shock or major unforeseen event could cause a shortage for a time. But we've been hearing about the dire shortage of COBOL programmers for 30 years or more haven't we? Yet in that time apparently they haven't either migrated their systems off COBOL, started paying people more, or decided they don't need to invest as much effort into it? Doesn't seem all that credible.
There aren't any significant number of people wringing their hands over it for 30 years either.
...but that's if you have "3-5 years of Experience in Cobol, IMS, DB2, JCL".
I imagine an entry-level job might pay ₹7,00,000 or so, if you can show sufficient coursework in COBOL?
edit: I made the mistake of multiplying this by 12 originally since I didn't read carefully.
Some people are surely trying to set expectations low, while others may be exaggerating what you can make with a few years of experience.
However, I've seen quite a few different sources claim an entry level developer makes around 4-10 lakh rupees a year. This makes me think they think their audience considers that good but not unbelievable.
And then when somebody claims you can make 60 lakh or more with 5 years experience, it makes me think that their audience knows roughly what US salaries are, whether or not the figure is realistic.
As such, you will see a massive salary range, anywhere from 3-60 lakhs per year. It’s hard to calculate based on experience - tenure, tech stack, or otherwise.
The lower end is dominated by body shops that take the bulk of offshored projects, since that’s exactly what Western companies want. The higher end is dominated by FAANG and VC funded startups. Moreover, the majority of companies do not have significant yearly raises, and jumping jobs is the often the only solution.
Someone writing COBOL for one such critical systems told me that there are two testers in their company whom they have never met and that no real testing happens(just some basic code review) because their company charges the client every time a bug is found to fix them.
But they did say that their client do call their retired employees to clarify some doubts just like this often shared article states.
Socialize the losses/costs (publicly-funded school), privatize the gains/profits.
That said, there's a different side to the issue, which is that smaller companies do not (and never did) have the resources to train people. There definitely is a shortage of senior management-capable technical people who can lead projects and teams at smaller organizations. This however isn't relevant to big banks and Cobol.
The only signal worth paying attention to is industry salary trends, but reporters rarely have the time or incentives to actually do real reporting.
That's the issue with self-training for mission critical systems. Sure, some people can self-train, but a company doesn't want to pay people to learn on the job, while thwey are counting the beans.
But that's the thing - these companies don't expect to be the ones to invest in these developers over the years, to let them upskill themselves. Neither do other companies. If you look at /r/CSCareerQuestions, you'll find that many of the younger devs are having quite a lot of trouble finding work, very few companies wanting to invest in the start of their careers, since they might as well just look for the more experienced devs out there.
But why is that? Simply because there is no actual guaranteed return on such an investment. A company might as well spend months of their experienced developers' time while making them mentor the more junior devs and invest a lot of resources in this, as well as have more overhead to their development because of needing to spend longer on QA and fixing bugs introduced by these juniors, for them to just turn around and leave when they've gotten the seniority that they desire.
In essence, all of this investment will return this company absolutely nothing and instead will benefit the next company that this developer goes to, which might as well be their direct competitor. Why should companies take this risk, instead of letting other companies do so, train the juniors for them and simply pluck skilled devs from the market when they become available?
I don't condone that approach, but it feels to me like a zero sum game, especially in a competitive market.
I don't have any solutions to offer, since in my eyes preparing devs should be the work of universities AND some other institution after getting their education, that would bring them up to speed to actual industry practices (like bootcamps, but for people with basic knowledge of academia).
Yet, even after getting my Master's, in lieu of such an organization, i simply had to get the practical skills over many evenings and weekends, as well as worked as a developer thanks to one of the companies that did take a risk on me, all while i was also studying. Having to work in the evenings and weekends seems a bit silly when compared with other industries, but with how much churn there is in regards to tech, i don't see alternatives.
There's simple solution to people leaving - just pay them above market rates. In my current company, a manager had this crazy idea, and what do you know - a lot of the key people he hired (most of them were excellent to begin with, as when you advertise above-market pay, you attract some pretty great people) are still with us 5 years later, and are being the pillars of their teams and of entire departments.
Sort of. I dealt with a large smalltalk system with it's own datastore. Finding smalltalk devs was painful. Training new ones? It was a mess. The dev environments didn't seem to port correctly to modern linux systems - mac? forget it, we could never work out contracts with Cincom Systems to get proper licenses - they would demand us pay a portion of revenue with audit rights (wtf), staging environments were layers of hacks, smalltalk could work on port 80 but making it work with apache/nginx/load balancers was always a mess, smalltalk itself was covered in bugs and would crash for no apparent reason. All new devs knew learning smalltalk was a waste of their future job prospects - they also had no good mentors. Good luck finding things on stackoverflow. The smalltalk contractors that could help would just raise their price so high it turned into extortion (one of them even wanted a portion of gross revenue). These contractors would delete histories, use hand written journals, hide documentation, refused to train anyone, not use version control, quit in the middle of meetings -- and they all were friends - it was a total shakedown. "Just pay them more" never really worked out for us.
Then they behaved like Oracle, Terradata and every other "business-sensible" vendor, who manages to get his customer into a technology-based lock-in. The only way Oracle only shakes down customers for tens of millions per year and not for billions is that, if it were billions, companies would just invest into migrating off Oracle.
I know one bank who does an academy thing, where they bring in graduates, train them for up to two years (with salary) for them to be able to work on the systems. So, it’s a problem, but they have knows to get around it.
Also. This problem is not isolated to banks. I saw the same kinds of problems when I was in telecom.
Even if a COBOL job paid a lot you wouldn't expect to hold it forever and there's a fair chance you'll have issues getting the next job if you haven't done something more common.
Say that you have a pair of chickens that people really want chicks from. Pay whatever you want. You cannot really speed up chick production because of that initial bottleneck.
This depends on the culture, how honest those people are being, the greater economic situation of the people in question and many other factors.
For a general overview, the StackOverflow developer survey (n=65'000) seems to suggest that about 70% of the respondents feel like compensation indeed matters a lot, more than any other factor: https://insights.stackoverflow.com/survey/2020#work-job-hunt...
> For the first time, we asked developers what drove them to look for a new job. Better compensation was by far the most common factor for respondents with 70% of them noting that more pay was important. Wanting to work with new technologies was the second most popular factor, which is consistent with what respondents reported as one of the most important priorities when choosing between two jobs.
Curiously, they skipped that question in the 2021 survey, so it's not included at all.
I can personally understand this viewpoint, seeing as i don't receive all that much money either and it would take me about 40 years of constant work to be able to afford my own house with my current earnings and small raises here and there. Plus, with my current salary there's no way i could afford, for example, cancer treatment or to address any of the other serious health issues that can arise in people.
Generally, if it's crucial for the business, the lever you pull is increasing compensation until the market responds. That's how you influence willingness. People are willing to do much dirtier jobs given enough money.
"But we need someone who is not only willing but able," they say, meaning they want someone with many years of experience with the language.
These same companies did not invest the time or money to train future maintainers in the language or make it worth their while to accumulate that experience. Guess what happens when you don't invest that money up front? You pay for it dearly later on.
So it's either an impossible situation of their own making, or those elusive COBOL programmers are out there, but companies significantly underestimate how much they really need to shell out for such a specialized skill set.
Either way, I don't think the problem can be reduced to younger programmers wanting to write code in the hip newer languages.