Published earlier this year, but still relevant.
As a Computer science graduate, I have to say:
No shit! The industry is terrible and has no standards (I don’t mean level of quality but there is no agreed accreditation or methodology). If you do end up in a job you will most likely not use even 5% of what whatever school you went to taught you. You will likely work for peanuts as there will always be someone to do it cheaper (not always right, or good, or even usable). You will work with people doing your job that just lied about having any post secondary education. There is almost no ability to move up in any position in the industry, and like everyone I know that stuck with it you will have the same job until you stop working (you will have to take a side move into another department most likely). This is also the industry most likely to get touched by the “good idea fairy” so you will also be exposed to the highest levels of stupid, like 3 layers of outsourcing the NOC to an active warzone sort of stupid.
I should have known it was a bad idea in college when most of my classmates where ACTIVELY WORKING IN THE INDUSTRY TO PAY FOR SCHOOL so they could get a piece of paper that said they could do the thing they where already doing. But I did my 15 plus years and got out, I have my own business now selling drugs and it is way less sketchy.
You know its bad when dude casually drops that he’s a drug dealer and we all collectively shrug, like yeah sounds about right.
I work in pharmacy and casually joke about being a legal drug dealer all of the time.
Not all drugs are street drugs!
Oh you guys have the HARD shit, I don’t even compare.
There is almost no ability to move up in any position in the industry
Change jobs every three years until you find a place that doesn’t suck.
The insanity of the industry is that employers will hire some schmuck with “10 years experience” on their resume for twice what they’re paying the guy who has worked at the firm for ten years.
Eventually, you can get yourself into a position where you’re unfireable, because you are the only one who knows about the secret button that keeps the whole business from falling over.
That’s when you can really squeeze’m
Urgh, yeah it is just so bad. Most places don’t even have a possible job above yours to even potentially move to. Where I was they literally sold us to a competitor (then unsold me as they forgot about a few contracts) and then just removed all the positions above us or related to our department. I lost 3 layers of bosses one day (not that anyone noticed much). And then expect people to just happily go on and on and on.
The fact they could not hire anyone (I was the “new” guy for 10 years on my team) was down to really shitty hiring practices, that automated the requirements in such a way that the only people who could get an interview would have had to lie on their applications. They where desperately trying to say they wanted to hire more people but no one was “qualified”, meanwhile they froze pay for years (really showing that dood that was there for years how much they care).
When android and ios were taking off, I’d see job requirements saying 8 to 10 years experience in Android development.
It hadn’t been out 8 to 10 years.
I’ve been saying that the market is oversaturated for YEARS now but this just enrages tech bros into insulting me personally. It’s very strange.
I always tell me CS/CE/Info students that they should focus on non profits, government agencies, etc. where at least employment will be stable.
I don’t get why they would insult you, but I have been hunted and not had to find jobs since I finished school, sometimes they fight each other. But it may be not quite the same job, i’m a coder turned game designer
Oversaturated?!? Maybe if you’re a plebian bootcamp passionless 0.1x-er who hasn’t even contributed to multiple open source projects or founded at least 3 startups. Maybe you should try internalizing all PhD-worthy algorithms from the last 30 years to reproduce them on the spot from memory like I did, or else do you really even care about the craft??? You need to understand this industry is full of math olympiad prodigy coder geniuses who work 80 hours a week like me so yeah it’s competitive. Nothing oversaturated about that
/s
That was a fantastic impression of reality. Well done.
Well yeah, when the tech industry went through multiple waves of massive layoffs, that’s going to be the case in the short term as things shake out.
And everyone and their dog is trying to get into tech. The industry is bound to get saturated eventually…
I’d it’s already saturated if we’re looking at high unemployment in the sector.
Not necessarily, it might mean it I’d an industry easy to get into, but hard to master. If I was short on people, and inexperienced person might actually make mistakes that require even more work to fix.
Everyone thinks they are Mr Robot after they let ChatGPT create a simple HTML page. No, they are not, and they won’t even pass as a junior. Surprise surprise, you have to know the basics.
Yup. We’re hiring, but the candidate pool is a minefield of utter trash, so it takes a while to hire despite having hundreds of applicants. We don’t expect much beyond basic competency, but apparently that’s too much to ask sometimes.
Same here. It’s popular to rag on leetcode-style technical interviews, and yet it’s astonishing how many CS grads with 3 years experience we get in who can’t seem to get through even the most basic “reverse this array”, “find the longest substring” type questions in the language they claim to be strongest in.
People sign up for CS degrees because they see high salaries, but don’t realize those salaries are for the high achievers who have been coding since the age of 10 and are writing code for fun in the evenings as well. Then they flood the market, only to discover that no companies have need of someone who cheesed their way through college, have never written more than a few hundred lines of code their whole life, and have no useful skills to offer.
I rag on those too.
Our “coding challenges” aren’t all that hard, they’re similar to what you’d do on the job.
For example, we use React on the FE and Python on the BE, and here’s what we do in the first round:
- FE - basic React state use - store input from an input tag, and render in a label
- BE - write a SQL statement to join two simple tables to query something; just a SQL playground, no Python needed
And here’s what the more in depth second round looks like:
- FE junior - array functions (lots of examples with tests) or moving data between multiple components
- BE junior - simple web server (or fake one, just need a function that takes opaque data) with somewhat complex logic; we’re looking for code style (do they separate controller logic from service layer logic?)
- FE/BE senior - structure an app from scratch given very limited requirements; the point is to see what questions they ask to clarify requirements
For BE, we let them use whatever language they want, because Python is simple enough that they can learn on the job. That’s actually why we picked it, our BE requirements are simple enough that the language doesn’t matter, so we went with something familiar to ease hiring (performance-sensitive code is written natively and wrapped).
The first round is designed to take 5 min and we allot 20 min, the second round is designed to take 20 min and we allot an hour. They are asked follow up questions about changes they would’ve made if they had more time, and getting the right answer is secondary to any explanations they make. We’ve hired people who failed the challenge, provided the code was clean and the expansion was reasonable.
We’re not looking for rockstars who nail some complex challenge, we’re looking for competent professionals who can write decent code under pressure, because we will have sev 1 prod bugs and we want people who can diagnose and fix them while feeling confident enough in their fixes to make the call on whether it can go to prod that day. The challenges merely confirm what they’ve given as answers to the questions (most of which are way more complex than needed, we just want to gauge breadth of knowledge).
Yet we keep getting applicants who are surprised that we ask them to do basic coding in a technical interview. Some can’t even write syntactically correct code in a language they picked…
Even in europe there is no workers union for IT. Atleast not that i know of. IG metal and Verdi didnt answer my email about that
What? I’m working in IT and am a member of ver.di. Of course it’s an IT union.
They never emailed me back to my question. But good to hear. Is there a specific subsection that i should message?
Try this page: https://ikt.verdi.de/
Computer science is not IT. IT is about knowing how to use, deploy, and administer existing software solutions, along with a bit of light development to get things to work together when they aren’t necessarily directly compatible.
CS is about creating software solutions and understanding how the pieces fit together (at a low level), as well as how to evaluate algorithms and approach problem solving.
It’s not even coding, though coding is obviously involved. For a coding class, they’ll teach you the language and give problems to help learn that language. For CS classes, they might not care what language you use, or they might tell you to use specific ones and expect you to learn it on your own time. The languages are just tools through which you learn the CS concepts.
An IT professional might know about kernel features and how they relate to overall performance. A coder might be aware that there is a kernel doing OS stuff under the hood. A computer scientist might know the specifics of various parts of what a kernel does and how one is implemented, perhaps they’ve even implemented one themselves for a class (I have, though I was personally interested in that kind of thing and it was for a class notorious for being difficult, so most grads didn’t).
just learn to code
Computer Science is not learning to code.
In fact, most high end University Computer Science departments do not at any point teach a coding language. Coding languages are taught, in Canada, at Community Colleges and such.
Computer Science is all about developing, perfecting, and discovering the algorithms that are then transcribed to computer code by the junior IT technicians (code junkies). Coders are a dime a dozen. It is the Computer Systems Designers, project architects, and project developers that make the big money.
A coder can only make good money if they have mastered a computer language that is not very common, like Kubernetes, [Kubernetes,] (https://kubernetes.io/) And you will not learn that from a 'Kubernetes-for-Dummies book borrowed from the library,
Kubernetes is just yaml
Kubernetes produces yaml using AI techniques from extremely complex procedures. The goal of Kubernetes is to generate the yaml that will allow a teenager to port the entire NASA launch operation system onto the device of her choice so her technophobe brother can completely operate the ISS including all resupply launches and docking procedures from her smart phone.
I feel like I need to point out, just in case anyone is reading this and falling for the smug tone, that the entire content of both these messages is embarrassing bullshit. I have no idea what drives any human to teach others their uneducated guess on topics and dress it up to make it look like they are a mr knowledge professional. When I think about it, it’s not even passable as a troll joke, it’s just feeble attempts to seem relevant… which is kinda sad. Hope you find human connection soon. I don’t imagine you want my advice now, but try to be more honest to the world, you will be automatically more honest to yourself then.
Most of what is written about Computer science by computer scientists is embarrassing bullshit to the uninitiated. But the ones that usually refer to it as bullshit are the ones that have absolutely no idea what the entire field is about, not even an inkling of how the resident gurus think, nor even of what is being talked about. It is the ones who call it ‘bullshit’ that are the ones trying to pretend they understand in depth what it is all about. You do not want us to be honest, you want us to speak in terms that you might have a chance of understanding. Unfortunately, the language of Computer Science, like science in general, has to be absolutely precise so as to not be misinterpreted. It can not be ‘dummed down’ without losing much of its utility to other scientists.
I could have said "Kubernetes defines a set of building blocks (“primitives”) that collectively provide mechanisms that deploy, maintain, and scale applications based on CPU, memory[29] or custom metrics.[30] Kubernetes is loosely coupled and extensible to meet the needs of different workloads. The internal components as well as extensions and containers that run on Kubernetes rely on the Kubernetes API.[31][32]
"The platform exerts its control over compute and storage resources by defining resources as objects, which can then be managed as such.
“Kubernetes follows the primary/replica architecture. The components of Kubernetes can be divided into those that manage an individual node and those that are part of the control plane.” https://en.wikipedia.org/wiki/Kubernetes
But that is just a very fancy way of saying that Kubernetes developers look at a very complex computing environment consisting of many hardware vendors, several operating systems, several architectures, (some incomparable) but one common application outcome, and integrating them all together into one centrally controlled and managed interface using a common instruction set and command structure…
I should clarify that ‘YAML’ is used facetiously and generically to refer to the concept of ‘yet another markup language’ as an allegory, without specifically meaning Kubernetes produces the true implementation of ‘YAML’ the formal system. Maybe we should coin a new term ‘YAMLized’. That is, 'reduced to ‘yet another markup language’.
But no, and it reads like you just read about that (even keeping the references) and then hot swap yaml, which is definitely more than a “concept”, so I kind of don’t understand still why you think that is generated by AI and why it would help anyone deploy nasa architectures, like at all? Do you mean it helps to create the deployment package that the student uses? Among the overwhelming number of assumptions you make, the worst and root of the issue, I think, may be that you think the recipient does not want the truth. They want a dumbed down version so you can change literally everything about it to express the exact opposite and gaslight interested learners on a goose chase? If someone wants to know or understand what you mean, dumbing it down just patronizes them - that is, if you don’t do it in an effort to teach. Like, if the goal is to highlight the complexity of Kubernetes, ok. Just refer to YAML, and remember to be ambiguous with what exactly you meant was not the industrial wide term for what YAML is…?
0% of the fault lays on the students who got the degrees they were told were in demand by every single adult in ther life.
This was a coordinated push by our government and tech sector to drive down the cost of skilled labor by oversaturating the field.
I say this as a CS major that was forced to work fast food for 6 years until I could find a shitty tech support job and work my way up from there, there was never a single opportunity for me to be a programmer like I intended.
There is always free time to self educate. Being a programmer means constantly keeping up with the news, new technologies, and adapting to new standards to keep the code clean, maintainable, extendable, readable, and relatively fast.
This is what we say now instead of expecting training and apprenticeship programs.
It’s propaganda
An unfortunate but completely predictable result of the debt manufacturing industry. Widespread and getting worse.
The industry went to shit after non-nerdy people found out there could be a lot of money in tech. Used to be full of other people like me and I really liked it. Now it’s full of people who are equally as enthused about it as they would be to become lawyers or doctors.
The industry went to shit after non-nerdy people found out there could be a lot of money in tech.
I started my undergrad in the early 90’s, and ran into multiple students who had never even used a computer, but had heard from someone that there was a lot of money to be made in computers so they decided to make that their major.
Mind you, those students tended not to do terribly well and often changed major after the first two years — but this phenomenon certainly isn’t anything particularly new. Having been both a student and a University instructor (teaching primarily 3rd and 4th year Comp.Sci subjects) I’ve seen this over and over and over again.
By way of advice to any new or upcoming graduates who may be reading this from an old guy who has been around for a long time, used to be a University instructor, and is currently a development manager for a big software company — if you’re looking to get a leg-up on your competition while you look for work, start or contribute to an Open Source project that you are passionate about. Create software you love purely for the love of creating software.
It’s got my foot in the door for several jobs I’ve had — both directly (i.e.: “we want to use your software and are hiring you to help us integrate it as our expert”; IBM even once offered a re-badged version to their customers) and indirectly (one Director I worked under once told me the reason they hired me was because of my knowledge and passion talking about my OSS project). And now as a manager who has to do hiring myself it’s also something that I look for in candidates (mind you, I also look for people who use Linux at home — we use a LOT of Linux in our cloud environments, and one of my easiest filters is to take out candidates who show no curiosity or interest in software outside whatever came installed on their PC or what they had to work with at school).
If businesses continue believing they can vibe code some intern into success while drop kicking talent to the curb to save a buck, those CS unemployment numbers will fall off like a lemming!
In case anyone is not aware:
Are you currently employed?
Have you actively sought a job in the last 4 weeks?
If the answer to both of those questions is ‘no’, then congrats, according to the BLS, you are not unemployed!
You just aren’t in the labor force, therefore you do not count as an unemployed worker.
So yeah, if you finally get fed up with applying to 100+ jobs a week or month, getting strung along and then ghosted by all of them…
( because they are fake job openings that are largely posted by companies so that they look like they look like they are expanding and doing well as a business )
… and you just give up?
You are not ‘unemployed’.
https://www.bls.gov/cps/definitions.htm#unemployed
You are likely a ‘discouraged worker’, who is also ‘not in the labor force’.
https://www.bls.gov/cps/definitions.htm#discouraged
…
Also, if you are 5 or 6 or 7 figures in student loan debt, and… you can only find a job as a cashier? waiter/waitress? door dash driver?
Congrats, you too are not unemployed, you are merely ‘underemployed’.
But also, if you have too many simultaneous low paying jobs… you may also be ‘overemployed’.
…
But anyway, none of that really matters if you do not make enough money to actually live.
In 2024, 44% of employed, full time US workers… did not make a living wage.
https://www.dayforce.com/Ceridian/media/documents/2024-Living-Wage-Index-FINAL-1.pdf
(These guys work with MIT to calculate/report this because the BLS doesn’t.)
You’ve also got measures like LISEP…
Which concludes that 24.3% of Americans are ‘functionally unemployed’, by this metric which attempts to account for all the shortcomings of the BLS measures of the employment situation.
Using data compiled by the federal government’s Bureau of Labor Statistics, the True Rate of Unemployment tracks the percentage of the U.S. labor force that does not have a full-time job (35+ hours a week) but wants one, has no job, or does not earn a living wage, conservatively pegged at $25,000 annually before taxes.
So basically this is a way to try to measure ‘doesnt have a job + has a poverty wage job’.
…
A more useful measure of the actual situation for college grads, in terms of ‘did it make any economic/financial sense to get my degree?’ would be ‘are you currently employed in a job that substantially utilizes your specific college education, such that you likely could not perform that job without your specific college education?’
Something like that.
It sure would be neat if higher education in the US did not come with the shackles of student loan debt, then maybe people could get educated simply for the sake of getting educated, but, because it does, this has to be a cost benefit style question.
- sincerely, a not unemployed but technically ‘out of the the labor force’ econometrician.
To the quote in the summary - might be because debugging dozens of layers of bullshit is hard. Anyway, debugging is about sitting for hours and reading logs and looking for weirdness, and looking at dumps, and what not. It’s a very different skill from “being the next Zuckerberg”. Also Zuckerberg is a psychologist most of all, his computing knowledge is not that unique. Network effect is more important than skill and knowledge here.
Give it a minute. Pretty soon, they’re going to need a lot of people to fix all the vibe-code that’s currently being spewed out by AI. That’ll be a monumental task.
Just found out someone in my team has been vibe-coding VBA in Excel that our team is now using. I asked who was going to maintain it and she didn’t know what I meant by maintenance.
Reminds me of web development in the Dotcom days, cleaning up Dreamweaver HTML garbage.
The fairness meter at the bottom of the article is absurd. “Unfair left leaning” like yes, how dare the libtards use statistics to show how broken our economy is
If you are speaking of the needle position on the dial thingy, I believe it’s just the default until you vote, not meant to indicate anything (though it’s misleading). You have to vote to see actual results.
I’m halfway through my bachelor’s CE, but really thinking about dropping and doing a trade instead.
CE is neat because most companies will treat you as if you had a CS or EE degree. Can always pivot to HW or FPGA
I’m probably going to cop a few downvotes for this, but in my whole career the only software engineers I ever met who were worth a damn were people who loved it for its own sake, and would be doing it regardless. So, if your feelings about the field are such that you’re thinking you might be better off doing a trade, you’d definitely be better off doing a trade.
Good luck either way.
I graduated with a degree in Computer Science and Software Engineering from the University of Washington in 2020, during the height of Covid.
After over 3000 handcrafted applications (and many more AI-written ones), I have never been offered a job in the field.
I know of multiple CS graduates who have killed themselves, and so many who are living with their parents and working service/retail.
I think the software engineering rush of the early 2000s will be looked back upon like the San Francisco gold rush in 1949.
…the San Francisco gold rush in 1949.
Classic CS major, making an off-by-one(hundred years) error ;)
I was in a similar boat. Graduated right around the housing crash. If my wife didnt work at the time, we would have been in a terrible spot. It look a good 6 months to get my first job. After that, I haven’t had any issues popping into jobs.
Sounds like you got a raw deal. Our industry has many highs and lows when it comes to jobs and work available.