In Canada, the Ministry of Health pays colleges to teach kids COBOL and JCL. It’s a steady job, pension, good bennies. I know a handful of people who went that route, rather than the riskier private sector.
Would you happen to know how that compares to saying “Fuck it” and going with a Java career for the relative predictability? I’m not asking for any particular reasons, just curious.
I know some Java folks, but my sampling is biased because I meet them where I work - places that predominantly use the younger languages. Actually, I happen to know that the MoH in particular (and probably lots of other institutions) wrap their COBOL/JCL in a lot of Java, so that most devs never need to dive into the “real backend” if they want to just stay at the Java level.
Java people seem like family people. But from what I’ve observed, their job doesn’t seem any different. You can work in javascript, or python, and still insist on clocking out at 16, 1700. But I only work at startups or seat of your pants kinds of places, so I know about what I hear. 🤷
what i’m gathering from this thread is that i should learn cobol
Once you get into it you’ll wonder how you ever programmed without “divisions”! I mean honestly, just declaring variables anywhere? Who needs that. Give me a nice, defined data division any day 😌
Yeah man, it can’t be worse than JS, right?
From when this has come up in the past, it’s a lucrative career path, but probably tricky to break in to since nobody’s maintaining a COBOL system they can afford to put into the hands of someone inexperienced.
The dudes earning half a million are able to do so because they’ve been at it since before their boss was born.
Yeah, and from what I understand, learning the language itself isn’t the hard part. It actually has rather few concepts. What’s difficult, is learning how to program a computer correctly without all the abstractions and safety measures that modern languages provide.
Even structured programming had to be added to COBOL in a later revision. That’s if/else, loops and similar.
It seems that back in the day, people effectively ran a simple compiler by hand on paper. It could work pretty well; Roller Coaster Tycoon was famously written in assembly.
Well, I only wrote simple exercises in Intel assembly in uni, but there were more of those with AVR assembly.
You can structure things nicely and understandably if you want.
It’s an acquired skill just like many others. Just today writing something big fully in assembly is not in demand, so that skill can usually be encountered among embedded engineers or something like that.
Is there a tutorial you could recommend? I’m actually pretty curious how exactly you would go about that now.
Sorry, I don’t remember what I used then as a tutorial, possibly nothing, and I don’t write assembly often, it was just an opinion based on the experience from the beginning of my comment. That said:
You have call and return, so you can use procedures with return. You have compare and conditional jump instructions. And you have timers and interrupts for scheduling. That allows for basic structure.
You split your program functionally into many files (say, one per procedure) and include those. That allows for basic complexity management.
To use OS syscalls you need to look for the relevant OS ABI reference, but it’s not hard.
So all the usual. Similar to the dumber way of using C.
In general writing (EDIT: whole programs, it’s used all the time in codecs and other DSP, at the very least) in assembly languages is unpopular not because it’s hard, but because it’s very slow.
Cobol is the B-52 of programming languages. Sure there are fancy and expensive new ones or there, but it’ll probably outlast them all.
That’s a pretty good analogy, but it’s Fortran and B-52. Fortran is very good at what it does to this day. Cobol was never good.
Cobol is a Hornet. Still used for production in first-world countries, but basically just because of shitty, slow-moving institutions.
deleted by creator
So move fast and break things, 60s edition.
deleted by creator
$60K doing what and where?
Probably anything outside the US.
That’s what I was thinking. I moved to Europe and my salary was halved. I’m making 70K euros. After three years of scratching this “living in Europe” itch, I’m ready to move back to the U.S. An entry level developer should be making no less than 90K in the land of the free.
Yep. Few people where I live envy the US, but if you’re a developer the money is no joke. You have to expect that eventually all those big American tech companies will start offshoring, given the crazy money they could save.
I moved from Australia to the USA since salaries for developers are so much higher here. I live in Silicon Valley which helps too. If you’re a senior developer (say 5+ years of experience) then a lot of the large companies here pay $200-300k/year salary plus $100-200k/year in company stock plus a bonus that’s 10-20% of salary if you get a good performance review.
Ugh. Holy shit I went into the wrong field 🥲 I was just a kid. I didn’t know better
I got lucky since I’ve been into computers and programming since I was 8 years old (late 90s). My first job when I was at school was a part-time developer at a tiny IT company that did consulting work. Since then, all my jobs have been software development jobs.
The fact that it pays well in places like Silicon Valley was a great bonus. I moved here 10 years ago (when I was 23) after I got a job offer, and the starting salary was literally double what I was getting paid in Australia at the time.
The job changes a bit as you get more senior - there’s more mentoring of junior devs, project planning, deciding what your team should focus on, etc. I still spend a lot of my time writing code though, and still enjoy it. :)
There’s some downsides to living in Silicon Valley. A lot of stuff is expensive (that applies for California in general, but especially here). Housing is extremely expensive too.
That’s what I tell fellow devs around here. Try the U.S. for one or two years, especially if they offer shares. Then move back. Profit!
€70k as a developer? That’s a middled aged EM salary here in Sweden
Unfortunately I have to ask, what’s the meaning of EM?
Engineering manager, the one responsible for a team
I bet. I’m assuming taxes are way higher up there too.
deleted by creator
How many years experience? It took me a few years before I started making a decent wage.
Definitely keep honing your skills and applying around for different jobs, and taking jobs that you can use to “leapfrog” to other, even better jobs.
deleted by creator
Okay that is getting up in years. I was about there when I started to get more aggressive with the salary I was asking. You could probably start on the
developer I -> developer II -> senior developer
career path.Do you look at other jobs much? Do much networking? Talk to other devs about their salary? Even just grabbing a lunch with some workmates from time to time can help get you in the right mindset of recognising your worth.
Hang in there, friend! You’ll make it big sooner rather than later!
Saw this post and all the redditors getting dreamy eyed at the idea of learning COBOL.
https://www.pcmag.com/articles/ibms-plan-to-update-cobol-with-watson
The historic high salary for COBOL Devs etc is also partially due to them mostly being old and extremely experienced senior devs
deleted by creator
Where do you learn this… Cobol?
at university in the 1980s
Wait, so there’s nowhere you can learn it now?
Doubtful, I was just joking about how it’s an older language that has become rare
Probably a few CS programs offer courses in it, if nothing else because it’s historically important. And I’m sure one could teach it to themself via books and documentation
My grandmother could teach you it, but she’s dead.
My cobolences.
RIP
Who would’ve thought a sector with gold flowing through its hands would be so stingy when it comes to updating their backend that they’d end up relying on a dying language, and call upon AI to update it for them rather than just paying a competent team to create and rigorously test a new backend in a modern language
One problem is that they need to put a price tag and therefore a timeline on such a project. Due to the complexity and the many unknown unknowns in theses decades worth of accumulated technical debts, no one can properly estimate that. And so these projects never get off and typically die during planning/evaluation when both numbers (cost and time) climb higher and higher the longer people think about it.
IMO a solution would be to do it iteratively with a small team and just finish whenever. Upside: you have people who know the system inside-out at hand all the time should something come up. Downside of course is that you have effectively no meaningful reporting on when this thing is finished.
Something that maybe a software engineer union could solve.
The thing is, this type of job never needed a union previously. It was niche enough for a long time, that you were sought out and rewarded well. But yes, I think we’re moving into an era where we do need union representation.
Oddly enough, with my experience I am sought out still. Just for bizarre startups who clearly never checked my previous work history. Some of the messages I get on Linkedin for example are just weird requests.
Something that a union would definitely solve. What are the banks gonna do? Fire every veteran and hire a team of underpaid newbs to manage their critical systems? If they were dumb enough to do that, let them save themselves millions a year by facing billions in losses… I’m sure that’ll work out well.
Banks: Hold my beer!
And later blame it on the workers that unionized.
It only needs to work long enough for the current management to cash in on their savings. Then it’s their successors problem.
If only there was one, I wish I had one just so I wouldn’t have to do all the fucking social hoops just to get my resume noticed by an actual human before the HR’s “I don’t want to do my job!” machines filter me out for not going to an Ivy League School like apparently everyone else did.
Nah, they’re going to “solve” it by paying web developers less, not paying cobol developers more
Yes, workers unions are famous for fighting to lower the wages of the workers they represent. Very much. Indeed.
I think the problem is that unions are famous for fighting for equal pay across the board for the workers they represent regardless of individual competency or market demand. For this example they’ll give COBOL developers a raise to 120K and give web developers a pay cut to 120K.
Or best case scenario they give the COBOL developers a short-term raise to 150, then raises across the industry stagnate in coming years to offset the fact that employers feel like they’re overpaying for some people. But sure, a few years later the union can come in to look like a hero arguing for a fraction of the raise the web devs could have already gotten.
Something a union could solve…
I swear to god, companies are nowadays just picking the solution with the most buzzwords. Any compiler engineering student knows how to write a transpiler from one language to another, while getting this right is a cumbersome task, it still completly automated afterwards. Just hire a few compiler engineering phds and the job is done in at least half a year.
Look what i found after a quick google search:
You want to translate COBOL to another language? That exists as a commercial product! The complexity is not the syntax though, it is the environment and subsystems surrounding the code. A lot of COBOL is designed for mainframe systems, and emulating a mainframe is complex.
You also end up with code that is still written as if it were COBOL. The syntax for COBOL is the easy part and that is all you can easily replace. Afterwards you’re still stuck with the way of working and mindset, both of which are quite peculiar.
The company I work for recently looked at all of this, and we decided not to translate our code.
Also, isn’t COBOL extremely fast ? Which is not necessarily true for newer languages
Rust: am i a joke to you?
I think that’s mostly because of the systems COBOL usually runs on, not so much because of the language
You’re probably thinking of Fortran, which is still used for hardcore number crunching in areas like physics.
Just make the devs learn the language if they don’t know it already. What kind of shitty mid to senior dev can’t learn a new language in a reasonable amount of time.
I think it’s a matter of expertise. I am stuck dealing with people who write Javascript/Typescript like it’s C# because they’re C# senior devs. It’s not world-ending until issues of speed, scale, or other “why we use best practices” raise their ugly heads. Then it is world-ending. I can only help with so many design standards when you still see everything show up in a classes-and-subclasses mindset with hard-to-catch concurrency bugs. I actually caught a developer trying to spin up a child process to wait on a socket response.
So in FinTech, I can imagine it becomes a bigger deal faster.
I once applied for a “database admin” job at one of the big credit card companies. The job description was basically “run all our Oracle databases” and the salary was in the mid 2 millions USD, but I assumed that figure was typo’ed or something ( an extra 0 maybe?)
In the interview I learned that there was no typo and it was to be one of the seven people on the planet that run the databases for this credit card processor. They said “if the database goes down then we are losing billions of dollars a minute”.
Anyways I didn’t get the job, but they’re not all underpaid.
Fuck that job I would probably get stomach cancer from all the stress
$2m is enough to pay for chemotherapy
Flipping burgers is enough to pay for chemotherapy. Src: am european
Yeah I had convinced myself that I would only do it for a year and be able to retire much much sooner.
It really wouldn’t be all that bad. If they’re dropping $2m/y on a database admin, then their BCDR plan must be rock solid with crazy fault tolerances. I’d imagine outages are extremely rare.
But, if they’re dropping that kind of money, you’d have to be an expert in the field. Or know someone.
Given how much the shareholders are skimming off the top, $2Mil for a critical database engineer is cheap.
If you labor there’s only two ways you get paid your full worth: you own the means of your production or your boss is a chump. However much the job pays, you are going to have a larger impact than your salary (hopefully).
deleted by creator
90k sounds pretty standard for inexperienced (although maybe not first job) devs in general for most markets. Throw in factors like experience or skills in low supply and that changes pretty fast.
I know that COBOL isn’t going away anytime soon, but most companies have seen the writing on the wall for a long time. Anywhere that COBOL can be replaced with something more modern, it’s already underway. Some places even have a surplus of COBOL devs because of it. But there are countless places where it can’t be replaced, at least not reasonably.
The only way a COBOL dev is making $90k after 5 years is if there are very specific fringe benefits that make them not want to move along, or they are extremely naive about the market.
Anywhere that COBOL can be replaced with something more modern, it’s already underw
Rewrites are extremely risky though, and some companies don’t want to risk it. That COBOL code probably has 40 years worth of bug fixes and patches for every possible edge/corner case. A rewrite essentially restarts everything from scratch.
Do you know of a decent sized company that successfully migrated away from COBOL? I’d be interested in reading a whitepaper about how they did it, if such a thing exists.
Right, you can make that kind of money when you have 40 years of Cobol behind you. But even for new entrants, $90k seems low. There had better be a premium for dealing with old bullshit, especially when you’re probably damaging your resume in the long run.
Yep I know a COBOL programmer and she drives a nice-ass Mercedes SUV and owns 2 houses. Making way more than I do.
Better learn COBOL now.
At what point does the cost of tech migration outweigh the cost of training people on a more and more specialist paid language just to not have to migrate to a memory safe higher level language like C or Go or Rust or Lua.
Didn’t say python because oh sweet Jesus the slowdown alone would grind the global economy to a halt if we were running all our banking software on Python XD
C and memory safety, name a more iconic duo /s
Something something better tools too shoot yourself in the foot with something something
The trick will be reverse engineering a lot of the mechanics. Also some old systems control hardware that still works and will be replaced when the hardware is replaced.
Didn’t say python because oh sweet Jesus the slowdown alone would grind the global economy to a halt if we were running all our banking software on Python XD
ah so we just need to persuade banks to switch to python. Noted
Not how that format works, mate.
Another meme purist. If you guys keep this up you’re going to spawn a new variety of meme.
If it’s constructive then it should be interpreted as good faith.
Is saying “you’re doing it wrong” really constructive?
I didn’t think a step by step guide was really needed to correct it, but maybe I should?
The first step to correction is understanding there is a problem in the first place. This is quite constructive, it may just not feel like it is because it’s framed combatively.
You’re doing it wrong is the phrase that lets teachers teach at one of the most basic levels.
The public is essentially a self teaching teacher, so this is just the process of public correction happening. It may look/feel like public shaming, and it may be if they’re going too far, but that is the mechanism that I think is playing out here.
Does that framing make it any more palatable to you or does it still seem unnecessarily disrespectful?
It’s probably just a definition thing.
To me, constructive criticism means that the criticism doesn’t just point out failure, but that it then also shows how to correct that failure.
By itself, “you’re doing it wrong” is just destructive: it takes something apart, it destroys it. Without a subsequent “and here’s how you would do it right,” it doesn’t become constructive, it doesn’t help in putting things back together in the correct way.
Sure, as a first step, “you’re doing it wrong” is completely justified when something is actually wrong.
But without the second step - the constructive part - it just doesn’t constitute constructive criticism. By itself, it’s just criticism.
Ah I get that, like the frustration of a sociological paper pointing out a societal issue but offering no steps on how to solve it due to fixes being out of scope (utterly infuriating lol).
I still think the criticism is valid, but I do think I agree in that the criticism could be more constructive… But I still think laying the foundation of the argument, so to speak, is still constructive even though it may not go as far as one may need for it to cross the threshold back into polite…
I am still convinced this is a knee jerk feeling issue more than anything truly being amiss, but I have been wrong before. What do you think?
I agree it probably is a definitions thing, I’m very pedantic sometimes and it feels like my definition of constructive is much more optimistic/wider/encompassing than yours. That doesn’t mean that my definition is right or that your position is wrong though, that’s just what I think is going on here.
Misusing meme templates is a long programminghumor tradition.
We need strongly typed memes. This place is chaos.
Possibly better suited for Vanya and Five Drive By Each Other
Works for me.
I think the text should be combined into one sentence, which would be run-on but still give the impression that both images refer to one person, as it should be.
Ah, I understand now
Is the collective noun for COBOL programmers, cobblers?
I would have gone with COBOLLICKERS
You definitely don’t want a blunt force trauma to this delicate area
There is no relationship between what you earn and your skill level. If there were, theoretical physics would be a top paying field. The reason is, this is capitalism and we are horrible negotiators. If you want to earn top money in a technical field, the best you can do is insert yourself in a revenue stream. Roles that are critical to revenue like a billing system or associated with a intrinsically valuable commodity e.g. petrochemical, are more lucrative than other similarly skilled professions.
It feels like blaming everything on capitalism is a Lemmy meme.
EDIT: smh look at all the capitalists smashing the downvote button as if it were a poor.
They’re not really blaming capitalism for anything though? They’re just explaining how it works, and they’re right. In a market driven economy, you are paid for having a skill or some knowledge based on the demand of that skill or knowledge and nothing else. In the same way as the quality of your house has little bearing on it’s value when compared to it’s location. Not a criticism of capitalism.
SIGH. Capitalism is a fringe conspiracy theory. Next you’ll be claiming that billionaires earn their money through “capital gains” instead of salary, or that every corporation answers to a shadowy cabal of “shareholders” who only care about profit.
Well you won’t fool me. Unlike you, I have educated myself by reading newspapers.
TIL repeating the definition of capitalism is blaming capitalism
It wasn’t capitalists, it was the invisible hand of the market.