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.
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"
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
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.
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.
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.
You need the professional accreditation. Which you can incidentally get without having done an engineering degree, but it requires passing a lot of exams.
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.
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.
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).
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.
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.
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.
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.
And everyone gets imposter syndrome, so I doubt college would help with that.
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.
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.
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.
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).
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.
This question is meant more generally, not as a jab at Florida's program.
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.
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).
Degree requirements are lazy gatekeeping by organizations too big to hire people that actually care.
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.
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).
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.
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.
Besides, the vast, vast majority of job listings say "CS degree or comparable experience."
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.
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.
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.
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.
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 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.
> 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"
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.
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.
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.
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.
Probably an unpopular take, but you could lie, essentially 0 risk (especially if you’re even a little clever about 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.