So the crux of this article is that kids shouldn't go to college because they feel like they are meant to but they should go because it makes sense for their personal goals and I agree. I have long held the belief that America needs more apprenticeships and technical schools.
That being said, this is one of those things where people are instead going to want to debate the value of college itself(because they didn't actually read the article).
I'm an American that didn't go to college. And as I've said, college is far less than ideal but here are some reasons why I personally wish I got my degree
1. I have a harder time getting jobs than people with degrees. Not people with CS degrees, people with any degrees. Despite having job experience, I have a rougher time getting interviews and emails back than my friends with degrees. I have worked at the same companies as my peers and they have recruiters beating down their doors while I barely get emails back.
2. If you want to move to another country, a degree will more than likely be part of your visa requirements. Even if it isn't, it would absolutely help in a points based system.
3. I still get imposter syndrome because I can barely solve leetcode questions in interviews and feel like I'm missing something. Would a degree resolve that issue? No idea. But fact or fiction there is a part of me that believes it would've at least given me a bit more confidence in my abilities.
I have my masters in computer science and work on the Linux kernel at a company you know for a product that you know. I often miss the point of leetcode questions and lose points because I don't use some certain tricky thing that they specifically want me to study for before the interview. I personally think it's just a handy way to build ageism into the interview process, because it's all this academic-style stuff that I've used maybe twice since I graduated 5 years ago. And for people like you, you've probably only really heard about these things in passing because they're not part of most people's workflow.
Kind of like applying for a job restoring Native American artifacts and being asked tricky questions about artifacts discovered in Egypt 5 years ago. Sure, you might have noticed the story or even read a lot about it 5 years ago, but it's not going to be a part of your daily work. Different procedures, different materials, and different local laws? I guess you should get studying if you want this job! And really, I just wanted to see your problem solving style when I ask irrelevant questions!
But ya, I think it's fair to say that my degree helps me not take that sort of thing as a rejection of my intelligence or qualifications though. I don't feel lesser than. I just feel belittled by someone who doesn't put effort into their interviews, which is useful information if you're considering working with them.
I have trouble with leet code problems because I'm 100% used to teasing requirements out of real people, whereas leet code has a skill of exactly reading and understanding the exact implementation requirement the question is asking. That and well real debugging tools in real life versus the sometimes broken web versions (I spent 45 minutes on an 'friendly' interview debugging the debugger in an online testing system which was truncating output and having threading issues).
Which is funny because I was prepping my Daughter for leet code for interviews, she only practiced leet code all summer despite me pushing her to do some open source or pet projects (aka real code). She's much better at LC than me despite barely being able to code in real life. What's really funny is that she got completely owned when I and some friends asked her the same leet code questions verbally but leaving ambiguity in and not specifically calling out all edge cases. We did about 10 practice verbal questions before she actually interviewed so she got better at it... and then she got asked one leet code question read off of the site.
It's fun watching how fast she picks things up esp with the ability to ask me and her mentors questions. She calls that "powerleveling"
I see it more as a sign of reviewing incompetence. Or perhaps lazyness, or wanting to haze the incoming devs the same way they were? Either way you slice it though, it's unrelated to the actual job we do and should be done away with.
A more boring answer is probably risk management. You don't want to be the radical that introduced a new innovative interview process and produced false positives for your company.
It's like how everybody knows IBM sucks but nobody gets fired for choosing IBM (TM)
If you want change, it has to start at the top of the management
One has to admit, there's also a certain elegance to the l33tcode thing. It's all about easy-to-survey "code katas" taken to an extreme level, which is pretty much what you'd want if your problem was to cheaply select the most likely capable 1% or so out of some huge amount of applicants. But most real-world code problems look nothing like those clean whiteboard examples.
> I personally think it's just a handy way to build ageism into the interview process, because it's all this academic-style stuff that I've used maybe twice since I graduated 5 years ago.
I'd argue it's time-ist in that it works against those who don't have time to prepare for a leetcode interview. Candidates of any age can grind leetcode, but I concede college students have more time on their hands, compared to someone with 3 kids and a demanding job.
IMO, interviewing at big tech is like the Spelling Bee competition; asking people to spell 4 or 5 letter words is hardly a filter; so you start giving increasingly longer and unusual words and it becomes a feedback loop with kids have to getting coaches and spending an inordinate amount of time studying, which raises the bar further. The end result is only those who invest a lot of time can get anywhere (and sometimes still fail), and those who don't prepare barely get off the ground unless they are geniuses.
I think the issue is that you're not taught how to interview people. So usually you'll notice that you need to do an interview in a few hours and scramble to think of what to ask and leetcode is the easiest thing that comes to mind.
I'm in the same boat as you (American, no degree), and I mostly agree (though I think that a debate around the value of college itself should be had, because I think there are too many cases where it isn't as high as people think it is).
1. The way I handled this was to insinuate on the resume that I had a degree. I went to a university for a couple years (before flunking out) and before that I did a couple summer classes at an extension program. Those add up to four years, and I point out that I studied computer science (which is true). If they don't outright ask that's not my problem. And if they do then I explain that something personal came up, and not completing it is one of my biggest regrets in life, but at this point I don't see how a degree would help my career blah blah blah.
This has only actually affected me once, and it's for a role I'm starting this week. The net effect is that my software engineering title can't have "Engineer" in it because I don't have an "Engineering degree".
3. A degree doesn't resolve that. I interview people every week for a role at my MAGMA company, most of whom have degrees, and most of whom act like they have impostor syndrome. Practice it. Do interviews for companies you don't expect to join just for the interview practice in a low-stakes setting. You'll get over it.
"The net effect is that my software engineering title can't have "Engineer" in it"
Where is this? There are plenty of people in Software Engineering (with Engineer as their title) without engineering degrees (or college degrees at all), even at large companies like Facebook/Google etc.
Without being super cagey, let's just say I understand their rationale, and it's not entirely un-legit. I found the role via a Hacker News "Who's Hiring" post. My title is going to be "IT Consultant", and it will have zero impact on my compensation. I don't really have a problem with it.
This is the rule in Canada, at least. I wouldn’t be able to call myself an Engineer here with my CS degree, despite having had several such roles in the US.
You wouldn't be able to be call yourself and engineer even if you had an engineering degree.
You need the professional accreditation. Which you can incidentally get without having done an engineering degree, but it requires passing a lot of exams.
That sounds like some weird company/person specific thing.
have heard this come up with respect to professional engineering certifications in some states. But I believe those don't even exist in the US for software at this point--and even in some states where there are supposedly restrictions on using the term, those seem to be pretty widely ignored.
It's a weird company-specific thing. I think part of it is that the company does a significant amount of traditional engineering under the same contracts.
It’s about the political pecking order at a company.
If you’re working at a law firm, non-attorneys are often a lesser stratum of human. Likewise, engineers in some engineering company will see IT people as pretenders to the engineering throne.
Some people gain joy in finding creative ways to be assholes. It’s just how humans are wired.
And certainly at least Big Law (at least up to the point where you become a real rainmaker--which you probably won't make without the other things) has a lot of fixation on schools, law review, and clerkships.
In most other Anglo countries you can get engineer in your title as a developer (and it is beneficial as it tends to be higher compensated than programmer or developer titles in my experience).
>3. I still get imposter syndrome because I can barely solve leetcode questions in interviews and feel like I'm missing something. Would a degree resolve that issue? No idea. But fact or fiction there is a part of me that believes it would've at least give me a bit more confidence in my abilities.
It likely wouldn't. What would help you with solving leetcode questions is just grinding leetcode questions. Taking an algorithm class years ago wouldn't help beyond your first attempt at the problems.
That said for all the other reasons you listed, getting a college degree is usually a good idea.
Even grinding the questions is pointless imo. Look at the solutions and determine the patterns that are present. Once you've seen the answer to a category it's trivial to ID and reproduce the solution.
This approach will save you hours if not days and you can still do more practice problems later if you really feel like that's important.
Sure. True. However you do need to get good at thinking about these things.
For instance, practicing by knowing the type of problem (e.g. two pointer) then thinking, “alright, how do I apply a two pointer algorithm to this?” Not just looking at the answer and copy+pasting. You’re gonna end up having a bad time doing that. It won’t get committed to memory.
AFAICT you need to go through the physical exercise of typing things out and not typing them out as a computer but typing them out with mental thoughts involved.
This is the key - they're repackaging a bunch of the same exercises with slightly different language. Once you have a collection of the tools they expect you to have (or did, in the 70's!) and can recognize where they're called for, you're good to go. And the set of tools isn't really _that_ expansive, and they're often very old school techniques.
I'm sure some of those tools would be useful in industry, it's just I haven't really seen that in 23 years ... but you never know! It's got an acedemic curiosity that I appreciate, it's just its utility is so low generally.
It's bizarre the roadbumps we put in front of new devs. I'd rather see:
- someone hack on a big but unknown piece of code. Open source even, and map out what it would take to add a feature, what tests they would write, where the touchpoints are, etc.
- pair with someone - are they able to work with people?
- fix a bug: go through methodically, especially on non-deterministic failures
- lay out a system using objects / functionally / whathaveyou
Or just have me implement towers of hanoi again, ick.
I agree on this approach. It's essentially the same strategy that was touted for scoring high on the LSAT back when I took. The key was being able to identify the solution strategy from the finite set of problem types then quickly apply it with muscle memory.
Can confirm. I started messing with leetcode and brushing up on some algorithm stuff lately. It's been about 4-5 years since I took an algorithm class and I've lost nearly all of my knowledge because it's just not something used in the kind of programming I do. I do feel myself regaining those skills, but I don't know if having a degree is exactly the reason why I am regaining those skills, because it has still been difficult reacclimating myself.
If it's any condolence to yourself, I have a college degree and I am always incredibly impressed by people who are able to be software developers without one. The perseverance required to not only learn the subject matter without structure, but get through the gatekeepers without a degree is immense.
And everyone gets imposter syndrome, so I doubt college would help with that.
The gatekeepers are the only meaningful barrier. The amount of content I learned in my CS degree that ended up being useful to my software development career could fit in a one-month course. Lots of writing Java out on paper (or, marginally better, in a shitty online code editor without access to docs), not a lot of debugging other people's code.
There was a time I thought most of what I learned in university courses was useless--a lot of the material seemed to be either esoteric (e.g., automata theory) or obvious (e.g., databases). And then I was talking with a colleague about some design stuff, and he turns to me and says "the great thing about you, jcranmer, is that you've actually gone to school and learned all of this stuff." Since then, I have been continuously more surprised than I should be when I talk to other people and realize how much they haven't picked up on that I was taught in school courses.
I actually went back through my school notes and looked through all of the CS classes I took to see how many of those courses turned out to not be useful to me at some point in my career. The answer is "Natural Language Processing" and maybe some of the algorithms courses (although interestingly enough, not Advanced Algorithms [1]). Admittedly, this is probably partially due to working in compilers--which ends up being at the intersection of a lot of different fields--but I've still found reasons to apply learnings from ML, information visualization, or cryptography in my work.
So even if I would have been a good programmer without going to university, it's definitely the case that the CS degree has given me even more knowledge to become a better programmer.
[1] I've had to use Chernoff bounds once to bound a probability distribution.
Every time I read something like this, I feel grateful for my university.
I wrote out code on paper in one class. Other than that, every single CS course was project-based on some level (even the theory courses) and once you got past the theory-heavy Sophomore-level courses most classes were 100% project-based. In the required classes alone I built web apps, android apps, interpreters, DNS clients and servers, static analysis tools, and dozens of other practical/educational projects in C, C++, Java, Python, and JavaScript. We finished off the program with a capstone project, working on a year-long real-world project sponsored by a local company.
Point being: which school you went to seems to make a big difference in your perception of the value of a degree, and some schools' diplomas will have higher signal-to-noise ratio on a resume than others.
I think it also matters what your university considers computer science to be. The more fundamental theory it is, the less immediately applicable it will seem to your day job. What you're describing sounds more like a programming degree and not like a traditional CS degree. For better or worse.
I doubt the professors would want it characterized that way--it's still very much a research university, and the professors are very invested in the theory. As far as I'm aware we covered every theory topic that is widely taught in CS programs nationally, and I've never found my ability to reason about the theory or to read CS papers to be weaker than my peers from other schools.
From what I've observed, the main difference seems to be that we were writing code to apply the theory in every single course, where it sounds like a lot of people didn't touch a keyboard during those classes.
I'd rather not share the school (I'm writing under a pseudonym and don't want to leave more hints than I already have), but it was a Computer Science degree.
Everyone at the top of our class in undergrad were the people who got internships early. I went from being the confused guy who still had decent grades to being one of the people who could go above and beyond. Debugging is weirdly under-taught in school
Practical experience is such a good teacher. I've been doing LeetCode problems lately, and (re-)learning about things like trees is so much faster when you see and play with code rather than taking notes while a prof explains everything algebraically on a whiteboard.
I'm an American that finished university later than most. I was 40 by the time I finished my degree, working full time as a software engineer. After I got my degree, I found out a lot of my peers that I thought held degrees do not.
For me, I've found that my course-related knowledge provides a little more context than before, but ultimately I'm not really better at solving leet-code style questions. It hasn't resolved any imposter syndrome. I haven't noticed any difference in recruiting efforts.
I am very happy I completed my degree, it was an important goal for me. I think college is important because it results in more well-rounded individuals, with broader perspectives.
I don't think college should be viewed as a means for job-training. We are not our jobs, and I really think we need to find a way to stop treating people like their role in society is exclusively to work for 50 years and then go away.
This is excellent and taking lessons from the Swiss apprenticeship programs. Typically working with local companies to provide training, in return they get excellent labor, and the labor pool is far better off without any student loans or burden of spending 5 years in college.
Michigan has a program where students can earn an associates degree (or something equivalent) by doing a 5th year after high school. I expect many of the participants could do it in 4, and I bet that the reason they can't is because of squabbling over funding.
We need to make a commitment to considerably expanding the opportunities available to 14-15 year olds in the public school system, not slightly expand their options after graduation.
3 tracks would be great (roughly, wants to finish high school, wants to finish high school with some skills and wants to finish high school on a trajectory for a 4 year degree).
Washington State has had a program called Running Start for years. You can graduate high school with your Associates degree, and it costs you nothing. You're now 2 years ahead of your class. But guess what, that FTE (Full Time Enrolled) money is diverted from the high school to the college. So guess which school doesn't promote Running Start...
Oh and I forgot about the "Skills Center" we had nearby, which actually had all the really cool classes that I didn't know we could take. There were actual game programming classes, electronics, and lots of vocational training, stuff that I didn't know you could take in high school. We got keyboarding classes and photography as the closest thing to any kind of computer classes. The only time students got to go over there is when they were "problematic," students with bad grades. So it ended up with this reputation. Again, the student funding ends up getting diverted away from the high school (as it should, IMO).
Basically anything that gov does can be boiled down to: “That’s just $X/capita”, IMO wrong way to think about it.
This funding can kickstart more things. More is good but should first measure the outcomes whether it works or not, how well is the funding used and understand it’s impact.
Yes. Speaking for the US, if your personal goals include having things like PTO and health insurance you're going to want the degree. Most white collar jobs are off limits without a degree in something, even if entirely unrelated to the job itself.
Not that there aren't other paths, or non-degree-gatekept jobs with those things. But they are harder and fewer and becoming increasingly so.
Programming is one of the few prestigious, highly paid jobs left that doesn't have a pretty hard req on having a degree to get into. That's why I do it. But yes I've also run into all the things you mention.
> if your personal goals include having things like PTO and health insurance you're going to want the degree.
Only ~40% of Americans have completed some level of post-secondary schooling, and only ~30% have a college degree. ~60-70% of jobs do not offer PTO and health insurance? That seems a little hard to believe. The BLS indicates that 79% of jobs offer PTO.
Sure, but that PTO is pretty... not great outside of salaried careers. For instance, for 5 years of work at Starbucks, you can get a maximum of ~2 weeks paid vacation across those 5 years in California (which has specifically friendly legislation to encourage this).
4. There are companies that will not even consider an applicant w/o BA degree, no matter what experience (HR filters).
Anyway, in large measure, we are only talking how college is not for everyone because it's so expensive. It's fine to have alternatives but education needs to be more accessible to those that want it.
In way way those are two sides of the same coin. College has become so expensive because it's so indispensable. You earn more money with it than without it.
It's become almost a Veblen good -- the more expensive it is, the more desirable it is. And that pushes all colleges to be more expensive.
Having people treat non-college experience as valuable would decrease the necessity of college, and hopefully lower the price. The prestige factor would still exist, but hopefully it would reduce the costs on the lower end that more people can afford the education (if not the networking and prestige benefits).
> It's fine to have alternatives but education needs to be more accessible to those that want it.
As long as funding for college is a lifetime of debt, college as a delivery vehicle for education may not be a very good choice. There are many alternatives to college.
Networking and collaboration is hard to substitute though. As to the costs, looking for a substitute to college because it's expensive it's like treating a symptom rather than the cause.
How many years of experience do you have? I don't have a degree but it's literally never come up, and I've been working as a software engineer for two decades.
I don't have a degree but it's literally never come up, and I've been working as a software engineer for two decades.
How do you know it has "never come up"? Because you've never been asked about it?
If people have passed on your profile completely for that reason -- then it has still "come up" on their side, even though of course never know that's the reason.
That's fair, but the comment I replied to said "my peers [...] have recruiters beating down their doors while I barely get emails back," and that hasn't been my experience; my teammates and I seem to to get about the same number of recruiter calls/emails a day, very often from the same companies.
Besides, the vast, vast majority of job listings say "CS degree or comparable experience."
> If people have passed on your profile completely for that reason
Arguably this is a good built-in filter for the candidate. In my experience for SE roles specifically, companies with such credentialism often have many other structural/corporate issues.
Companies with such credentialism often have many other structural/corporate issues.
Reasonable people can disagree on this (i.e. there are people who do see value in college degrees, and that this is not automatically "credentialism"). But I do see the broader point you're making.
Likely he means in terms of being asked for the documentation once you get an offer. I've only been asked once, in the German speaking world. My wife was asked the same, from another German speaking with.
In the Anglo world I've literally never been asked. Not by employers, not by investors doing due diligence, nobody.
Of course it's still true that it might have an effect on some recruiter looking for a degree. Can't say I've ever made a decision to interview or not based on whether the person had a degree.
Definitely give it some time. I didn't start feeling competent (and have a somewhat full linkedin inbox) until 5-6 years or so. Won't help with the visa situation though - I had a sweet opportunity to go work at a drone startup in Tokyo that I had to give up on because the Japanese government wouldn't let me. I could go for it (or something similar) now, but we'll see where my life is when I'm done at my current job.
I joined games (arguably harder in some ways to join than robotics), got real good at C++, then got word from a former manager about a self driving car company needing someone who knew games engines to do their 3D simulation.
Don’t worry :) I’m a game engine developer and they’ve been pinging me every so often for the past year or so. Speaking of which, what are your impressions of working there? (You may email me if you’re inclined or would rather.)
Regarding #3 I think it's a completely broken industry practice and I would not take it on me, but I would try to find companies with different hiring practices. As you described, this whole Leetcode industry is demoralizing and hurts almost everyone for very small benefit in general.
In our company (and my previous too BTW) I was strongly advocating working on real problems during the interview. I find it really troubling that the industry still sticks to this outdated way of interviewing (I refer to Leetcode) instead of:
A. Having accreditation which would require renewal after X years
B. Having other types of competency checks
I really don't understand how Leetcode is superior to let's say Coderpad or Codeinterview.io (I am not affiliated with either of them).
These tools actually pretty much allow you to set up a relevant coding exercise in the candidate's preferred language and framework, and it only takes a few minutes to customize their templates to the candidate's experience and the interviewer's imagined coding problem.
Just yesterday I set up a React coding problem in just below an hour, which allowed me to ask relevant questions about: language syntax, state management, routing, code organization, system performance, error handling, and data organization among others.
Isn't that the end goal here? To ask relevant questions from the candidate so that we make sure his skills match the imagined role and/or project?
Based on all this above, if I would be back to interviewing now, I would generally take it as a signal of a broken organization, lack of clarity about the role/project in the company, if they would shove a Leetcode/Codility/Hackerrank coding problem first in my face without asking.
Given the voting divide based on education, people in the U.S. are getting something else out of college education. I have no issue with shoehorning more liberal education into primary education, but a liberal democracy cannot survive if blue-collar workers have no historical context and vote for authoritarians who are intent on destroying democracy.
In addition to what gruez said, this is disgustingly elitist. "They're too uneducated to know how they should vote! They need to get an education, so we can tell them how to vote!"
Do you wonder why Democrats are having trouble connecting with blue-collar voters? Attitudes like this are a big part of it.
I'm not sure what's more authoritarian, the "authoritarians" that you decry, or the implication that we should educate people so they vote on the correct side of the "voting divide".
I think what GP meant to say is that educated people are more likely to bother to vote at all, which suggests that they might be putting some thinking behind their voting choices and not be totally driven by short-sighted ideological thinking.
> 1. I have a harder time getting jobs than people with degrees. Not people with CS degrees, people with any degrees. Despite having job experience, I have a rougher time getting interviews and emails back than my friends with degrees. I have worked at the same companies as my peers and they have recruiters beating down their doors while I barely get emails back.
I'm not discrediting your experience but I've never had any issues on this front. I went to college for ~3 years before dropping out because I didn't see the point in continuing and I've never had any issues getting a job in tech. I've also far outpaced my peers (geographically and friends) when it comes to salary so I'm struggling to figure out what the difference is. Potentially we are going after different jobs or want different jobs. On the recruiter-front, I have recruiters in my inbox 24/7 pestering me. I don't see recruiters reaching out as a measure of how good of a developer someone is (also almost every external recruiter is trash), it just means you got put on a mailing list at some point. I believe you when you say your friends with similar/same experience get asked back more than you do but I'm hesitant to automatically assume it's because of college (due to my lived experience). I have only interviewed at 1 place that I can remember that I actually was interested in getting a job at which ended in them saying they weren't interested (though I've only worked at 4 companies over 11+ years and interviewed about 6-8 times total, the other offers weren't ones I was interested in taking).
For #2 yes, I could see that being an issue but it's not something I'm looking to do so I don't really care
For #3, everyone feels this and college doesn't change it. Interviews are notoriously terrible on the whole and serve as an ego boost to the interviewer more often than they actually tell you if someone would be a good developer.
Counteranecdata from someone who did go to college in Europe and didn't graduate:
> 1. /../ they have recruiters beating down their doors while I barely get emails back.
I have recruiters beating down my doors. Because of job experience. Unless they assume I finished college just because linkedin says I went for N years.
> 2. If you want to move to another country, a degree will more than likely be part of your visa requirements. Even if it isn't, it would absolutely help in a points based system.
I was able to get multiple O-1 (special ability) visas in USA without a college degree.
> 3. I still get imposter syndrome
Me too. But if you were hired then the company thinks you can do the thing. Just do the thing.
edit: It is very likely the things that enabled me to do #2 also unlock #1. To this I can't offer much more than "Do interesting things and make sure people know about them"
>I have long held the belief that America needs more apprenticeships and technical schools.
These exist, but the problem is the jobs are not the good and neither is the pay. You need a lot of certification and training, which is time consuming and costs money.
Many low-skilled young and middle-aged men are more content with an easy retail job or just living with parents or with friends or with girlfriend than going down the apprentice route. It's sad that America is going down this route, but I don't see any way out of it.
The degree wont help with leetcode unless you did it in the last year or so. Leetcode is about practice. Doing a degree and revising for an exam is a similar kind of practice.
Natural aptitude to a certain extent is required, but if you are coding you probably have it. Then it is practice: there is nothing easier than a question you already answered in practice and you recognise the shape.
I don’t remember where I heard it, but someone said degrees, certifications, etc, are good because they show you have understanding of $topic to someone who doesn’t have an understanding of said $topic. You aren’t always interviewing with engineers themselves, and a piece of paper is an easy way to communicate your skills to non-technical people.
The funny thing is, most universities are accredited institutions in their own country. Which means that whoever gets their diploma is accredited too to work in any company in the field of their accreditation.
And this is the norm in many industries to signal your competence (plus the renewal in every X years).
Would you ask a surgeon to do a surgery before you hire him? So why do we put up with all this bullshit that low-IQ HR departments impose on us?
I would rather take the effort to pass accreditation each X years and then let me join a company with a simplified process (background check, personal interview, etc), than putting effort into practicing before each and every interview.
You should be very happy you didn't go to college for precisely these same three reasons.
So for the purposes of points 1 and 2, college degrees are bullshit harmful things. So having a harder time getting jobs and visas are identical. Yes, you get little brownie points for a college degree, but you used to get the exact same little brownie points for a high school degree. What happened? It's a filter, nobody gives a shit about what degree you have in an ultimate sense, plenty of places see college-degree only as insufficient, guys saying what you just said but about a master's, or a PhD, or a post-doc.
What this is is a rat race. They want you to be a rat, and race. To do so, they say they'll only take the rats with under a certain time. But if many rats make that time, the time is reduced. Then as the rats really race more and more the times they individually have to make to make the cut keep falling and falling. Also, keep in mind you get paid for working but nothing for studying, in fact you pay for studying, or parents pay (same thing, the benevolence that is for you is spent). So the rats racing means the guys setting up the rat race--the rats who won in the past, often--get more work all the time from the racing rats in exchange for less and less cheese of their own. So by demanding college degrees and being shitty to people who don't have them--all the things you describe are vulgar fuck-yous from employers for not having raced hard enough as a rat. What do you get for racing harder? Well if you do well enough, you get a "chapita". A chapita means badge, like you get badges in bags of fried crisps sometimes if you're very lucky because only a third contain them. These badges are very powerful, superhero badges that give you magical powers of invisibility and flying through the air, but superpowers. Real superpowers, or they better be, because these chapitas are morally equivalent to college degrees, and those
They both say you're special, now it's true the college degree is letter-sized, so they take up more area, and they have more letters in them, everyone but me says they're prettier than the chapita, but I say WAIT, that chapita is printed in color, good drawing of real art, it's got a metal back, it's got plastic on the front so it doesn't look shitty if it gets wet, and you can attach it to your clothes! You can go around with that chapita everywhere you go. And as for the powers, they both have the same superpower granting ability because they both SAY you have that power! And in fact the chapita superpower, invisibility or flying through the air, is a much better power than the college degree, which is that you've got a major, and IMPLIES you have more powers.
Now it's true that perhaps you STOLE your chapita from its true owner! You didn't buy the bag of fried crisps yourself and open it with your own hands, and eat the crisps one by one without any falling to the floor, slowly eating them and enjoying them, until finding the chapita in a moment of beautiful merit! You STOLE the chapita from its true owner, you stole those powers, you do not deserve it, you are stealing someone else's invisibility! Or you bought it, that's just wrong, you're supposed to buy the fried crisps and have GOOD LUCK OF YOUR OWN.
But the college degree is no different because tons of people cheat their asses off, leading to learning literally nothing[1]. And some people just buy college degrees outright, like pay $400 and they email it to you, or OK they fedex it but you pay for the fedex, if you're stupid and pay $400. If you're smart you can ask the fried crisp company what software they use (and pirate it obviously) and design your own letter-sized college degree. Or fuck it, just write COLLEGE DEGREE [YOUR NAME] on a page in a notebook, real big, look at it, be proud of yourself. Now let's turn the page to the real work.
Leetcode? Leetcode sucks. Not leet. So it has a few different functions, so first it's a way to get workers to work for nothing to "apply" to a job where they can earn money. That's good! Gets the boss much better terms ie. more submissive workers more afraid of getting fired because then they have to waste more money to get another job, or "reeducate" to get another chapita wasting more resources, becoming poorer and more indebted and more desperate, good things all around. That's the first part, worker impoverishment.[3] Then, to make you feel stupid. You say, "I can't solve this shit"--it's true you can't, it's very elitist in that regard, I've never met anybody who can solve this kind of problem from nothing. Well there's some math wizzes, like Math Olympiad guys, there's some, but they are gluing together clever things a lot of the time. So what people do is they look it up. Then, to brag by getting lots of internet points, notice leetcode is a point system? You add up the points? Try to get a lot of points on a high score? You can't just solve one problem to get a good leetcode score, you have to solve lots. And there's usually a story in the media at some point about the top leetcoder getting hired due to his leetcode score, like with Github or Kaggle.
Then you have to "grind leetcode" for interviews. Well you do, I don't, but you do. You have to know all the tricks, and sometimes be able to come up with something clever in the moment. And so then they tell you it's meritocratic, FAANG just cares about these tests. Well what this does is produce lots and lots of rejects. This is good, rejects generally maintain a highly positive impression of the places that rejected them, blaming themselves for their failure (you get little brownie points for self-blame like talking about getting fired in suck-uppy terms), and these companies don't have to pay absolutely anything to the rejects. In fact, they tell the rejects to apply again in a few years. Plus--well they're stupid for buying into their own bullshit like this they ought to remember their lies--but the companies then say, oh, we're the absolute best, we're the select few, you're in the club, we're special. Well to be fair these filters do get you clever people in general, in most ways. But on the other hand no true dropouts. So Tesla wouldn't hire Tesla.[2]
So for the same three reasons you gave for being unhappy, contrariwise, be happy, be very happy. I believe people act collectively, if you make a choice others will make the same choice with you, if you had made all those painful sacrifices to get a degree, which toward the end are about proving you submissively do stupid assignments against your own interests, well more people would have done that with you and you would not have gotten ahead. Employers would have asked for more chapitas, visas would have asked for more chapitas, leetcode would be a little easier but you'd also be worse at it, and you'd write the same comment with Master's in place of Bachelor's, you'd actually make lower wages, and you would have done harm to the other rats. You would feel worse about yourself, especially because you would have wasted all that money on tution.
[1] You learn literally nothing. Yeah you remember some words and google and you're good at cheating now and plagiarizing, OK cheating is great for learning to cheat I'll admit that, and at elite colleges the cat-and-mouse game of cheating is hardcore and a great preparation for professional cheating ie finance, consulting and medicine. It's also good prep for catching cheaters, which is important in becoming a teacher that needs to prevent cheating, so cheating in the School of Education makes sense. You could have a cheating class if you wanted. In one class I was the only one who could actually do the work (I actually design and implement algorithms), and I flunked. I learned a lot in that class though, not cheating is the real way of cheating. You fucking learn. I didn't cheat, I saw the assignment they wanted in a document way in the back of one of the class books but I just wasn't going to copy it and hand it in, wasn't going to get a TA to just give me the answers either in "office hours", just wasn't going to cheat because it's not just about the school's rules, it's about my rules too. So basically everyone who passed cheated, and this class was a requirement for the most prestigious major in the world.
[2] I will say I have a remarkably favorable impression of Elon Musk, partly because I view people I do good things for more favorably, like victims I've protected from crime, or in this case, because I acted to protect his capital in a company he funded, where I got a great job by going around their filter and showing up and working my ass off until they took me in long-term. The wage was so high and conditions were so good. So back to protecting his capital, I didn't know it was him funding the company. But, Tesla wouldn't hire Tesla, not through the normal pipeline at any rate. His companies are huge and they care about chapitas.
[3] Every piece of bitchwork (meaning "homework" you do it for free to impress the potential employer, who is assigning it, in order to get hired) reduces your salary by 3%. Always charge for time, not completion, or apply to other places instead with the time you would spend on it.
That being said, this is one of those things where people are instead going to want to debate the value of college itself(because they didn't actually read the article).
I'm an American that didn't go to college. And as I've said, college is far less than ideal but here are some reasons why I personally wish I got my degree
1. I have a harder time getting jobs than people with degrees. Not people with CS degrees, people with any degrees. Despite having job experience, I have a rougher time getting interviews and emails back than my friends with degrees. I have worked at the same companies as my peers and they have recruiters beating down their doors while I barely get emails back.
2. If you want to move to another country, a degree will more than likely be part of your visa requirements. Even if it isn't, it would absolutely help in a points based system.
3. I still get imposter syndrome because I can barely solve leetcode questions in interviews and feel like I'm missing something. Would a degree resolve that issue? No idea. But fact or fiction there is a part of me that believes it would've at least given me a bit more confidence in my abilities.