Interesting that the government continues to peddle credentialism for software developers. I personally think a CS degree is still a strong positive signal but it’s hardly a requirement anymore
Interesting that the government continues to peddle credentialism for software developers. I personally think a CS degree is still a strong positive signal but it’s hardly a requirement anymore
Not saying that not having a degree is somehow a more-positive indicator, just that I agree with your sentiment that it's hardly a requirement, and that it's just one signal among many.
FWIW, I have an inclination to believe the reason why node+express+react stacks are so popular among startups (at least in the NY scene) is because all the full stack bootcamps use that stack, so it makes it easier to hire. I also decided to use a similar stack that only used JS for the same reason. I feel as though some aspects of "software development" are closer to to a trade skill. Certainly there are far more complicated directions, and that's where degrees and advanced education are meaningful, but if you just need a simple CRUD app you probably don't need a masters in anything.
It's not unique to any one thing / field / area.
And you think that a degree helps with that? I've had coworkers with MS in comp-sci who had no idea how to implement stuff in a practical, efficient manner, and other coworkers with no degree who were able to grasp the best practices from the get-go. I don't think the degrees are the problem. The problem is that the demand for software engineers has wildly outpaced our society's ability to produce quality ones, regardless of their educational path.
The fact of the matter is that the vast majority (80%) of professional software developers already have a bachelor's degree or higher: https://insights.stackoverflow.com/survey/2021/#education-ed...
Similarly with software engineering. Memorising good practice and following it is not difficult. Understanding why it is good practice and why it can be challenged is. A lot of the self taught folks stare at you like a brick the moment you step out of their knowledge area.
I dont want to sound patronising. I also met plenty of great developers without a degree, some even high school drop outs. But they rarely understood whats beneath the bonnet. They were absolutely able to deliver work and architect systems but it was always obvious that knowledge was based on what some popular dude wrote on a blog instead of actual knowledge.
The survey you posted doesnt show a breakdown per language.
Again, nothing wrong with not having a degree but saying that having a degree is a negative thing is just silly.
>saying that having a degree is a negative thing is just silly.
Don't put words in my mouth. I never said having a degree was a negative. I made an example of why I don't think it's relevant in the first place
That being said the gatekeeping of jobs to only people with degrees (especially considering how expensive it is in the modern world) is absolutely a problem. But I think that is more down to the cost of education (in an ideal world higher education would be free just as high school is). My bachelors degree is not at all related to the field I work in now but it gives me a huge leg up compared to pre college me.
I think the flaw here is in the question framing. It implies from the get-go there is a definitive qualitative difference between having CS degree and not AND that it is the determinate factor of quality or risk mitigation when the reality is both of these candidate are going to have behavioral differences you discover conducting proper interviews.
I don't think this is strictly related to software engineering, though. I think most people doing horizontal career transfers use some form of the above to achieve success.
"Our engineering is backed by MIT graduates"
"Our engineering is backed by the best engineers"
One sounds a LOT better to a client. It's a lot easier to sell a product when you can lean on an actual credential than a vague superlative. Even if your vague superlative is absolutely true.
Unless it’s crypto. Then I’m still “yeah but nah tho”.
However, government jobs almost always have a hard degree requirement. I'm not sure why this is. I wouldn't take government jobs as representative of the industry.
There are a surprising number of loopholes. For example, many federal engineering jobs require any one of the following:
1) A bachelors degree in engineering
2) Sufficient college coursework without a degree with relevant experience
3) A non-engineering degree with sufficient engineering coursework
4) passing the engineers in training (EIT) exam with relevant experience (which doesn't necessarily require a degree to sit for)
5) A professional engineer (PE) license (which, in some cases, doesn't require any college)
I do think HR is biased towards just looking for degrees. Probably out of either laziness or risk-aversion.
I'm not sure if this is still the case for people, but I faced a lot of discrimination from management over my lack of degree. Especially managers who "inherited" me. Some of it was petty too, like all the other devs on my team were software "engineers" but since I lacked a degree, I was a software "developer". AFAIK, it wasn't a salary thing either.
It's not difficult to get a degree, especially if you have experience in the field. So I would say that it's worth it.
can you elaborate on what you mean by this?
To me an engineer has a degree in engineering (including software engineering, which focuses on large-scale infrastructure, not algorithms). In many countries engineers are legally liable for what they implement.
I tell him alot since I want to be honest, I don't know how much longer extremely basic, low end website/api development will stick around. With Github Copilot currently I can see it almost replaced, but with what we get into in the future, I don't think we'll need people who at best call an api and display the data on a website with no other thought or architecture.
I guess I've never seen a position which only did API calls from JS and formatted data. That's always been wrapped up with develop/implement parts of the API as well. Maybe I've not worked in enough "enterprise" shops?
You can teach yourself pretty much all of a CS curriculum by buying a stack of textbooks listed on CS syllabi, and then going to town. Naturally, you’ll build projects while doing this.
Do some LC and prep for interviews.
You don’t need to get a CS degree to get SDE interviews. It helps, but isn’t necessary. And to pass technical rounds, you don’t even need to have read most of that stack of CS textbooks. You need some bits and pieces from that stack of books, and be quick on your feet with LC medium.
If your friend is good at standardized tests, then LC is right up their alley.
If the job listing on the BLS didn't specify that it needed a degree, then the software developer wouldn't fall under the H-1B or the TN visa. Instead of the H-1B (which is a specialist worker) it software developer would fall under the H-2B and anyone (degree or not) could get a visa because no skills are required... however that also means that it would fall into the "one time occurrence", "seasonal need", "peak load need" or "intermittent need" for people working on the H-2B visa.
Another "this makes things interesting" with a switch from a specialist worker to a non-specialist one, is that there is a list of countries that may apply to work on a H-2B visa... and it doesn't include India.
---
The job listing defined by one agency BLS has impacts on the way people can get visas and which visas.
Removing the degree requirement would effectively make it so that there are no even marginally qualified applications with a visa.
There are absolutely places with more progressive hiring practices, but this is not the norm. If you apply to XYZ Corp in any random city or town, they will have “bachelors in computer science or related degree” in the requirements section of the job posting.
Of course, the purpose of a job advertisement is to compel workers to apply. Companies don't write "bachelors degree" because they expect you to have a bachelors degree, they make note it because if you have a bachelors degree it will pique your interest: "Wait, I have a bachelors degree! I should apply."
One of those fun marketing tricks.
Other parts are real indicators of what they’ll filter incoming applications by. Education and experience are absolutely quantifiable indicators that recruiters or HR will often filter by before that resume lands on the desk of a hiring manager.
That may end up being incidentally true, but not the reason for sharing that information on the job ad. After all, there would be no reason for HR to apply said filters if the posting was prescriptive. It is there merely to grab your attention.
It is kind of like prices on product advertisements. If you fail to successfully barter with the merchant you very well may pay the price listed on the ad, but the price isn't listed as a commandment of what you will pay, but rather it is listed in order to capture your attention. "Huh, that's not a bad price. I should buy that." It's a marketing trick, is all.
That said, these days everyone has transitioned to "Bachelors degree or equivalent experience" so even if HR does hold firm to what the ad says, they aren't filtering by bachelor degrees anyway. That is a long outdated relic of the past that isn't subscribed to anymore as it has been realized that the 'indicator' doesn't actually indicate anything.
HR also doesn't want to spend all day sorting through garbage resumes. Some use resume parsing software (or form fields) to do this sorting for them, in which case, it is effectively prescriptive.
> these days everyone has transitioned to "Bachelors degree or equivalent experience"
Most tech companies hiring rank-and-file software developers, maybe. Definitely not every job. Pick your favorite job posting site and look at mid or upper management positions -- few accept "equivalent experience".
It's not, though. Clearly the resumes which don't meet expectations are arriving, else filtering would be unnecessary. So obviously nobody actually pays attention to the "requirements" as anything more than what they are: A marketing gimmick. And why would they? It's like the price on the product ad. You are still going to try and get a better deal. Just because someone suggested something to grab your attention does not set it in stone.
> Pick your favorite job posting site and look at mid or upper management positions
I'm not well versed in the best places to look, but I gave it a shot. Here are a couple I could find from companies I've heard of before.
* H&R Block - VP of Information Technology: "Bachelor’s degree in Computer Science or related field or equivalent combination of education and work experience."
But maybe we need to look beyond tech.
* World Wildlife Fund (WWF) – Vice President: "Post-secondary degree in science or policy fields relevant to conservation, or comparable work experience."
A similar story for companies I've never heard of held true, but fly-by-nights seem less relevant so I omit them here. Maybe VP isn't upper management enough?
I was job hunting earlier this year and every software development job pretty much had that wording.
> The Occupational Employment and Wage Statistics (OEWS) program produces employment and wage estimates annually for nearly 800 occupations. These estimates are available for the nation as a whole, for individual states, and for metropolitan and nonmetropolitan areas; national occupational estimates for specific industries are also available.
On this page is https://www.bls.gov/oes/mb3-methods.pdf
> Probability sample panels of about 180,000 to 200,000 establishments are selected semiannually. Responses are obtained by mail, Internet or other electronic means, email, telephone, or personal visit. Respondents report their employees’ job titles or occupations across 12 wage ranges. The job titles and descriptions are used to classify workers into occupations in the Standard Occupational Classification (SOC) system.
> Estimates of occupational employment and wage rates are based on six panels of survey data collected over a 3-year cycle. The final in-scope sample size when six panels are combined is approximately 1.2 million establishments. Total 6-panel unweighted employment covers approximately 80 million3 out of the total employment of over 140 million4.
They're not scraping. They are calling up a hundreds of thousands of companies and asking them "how much are you paying people with this classification?"
They occasionally redo the classifications based on industry trends.
Currently, the programmer related job listings https://www.bls.gov/oes/current/oes_stru.htm#15-0000
15-1251 Computer Programmers
15-1252 Software Developers
15-1253 Software Quality Assurance Analysts and Testers
15-1254 Web Developers
15-1255 Web and Digital Interface Designers
(note that the OOH and OES can get out of sync)Go back to 2020 and you'll see https://web.archive.org/web/20200508015238/https://www.bls.g...
15-1251 Computer Programmers
15-1256 Software Developers and Software Quality Assurance Analysts and Testers
15-1257 Web Developers and Digital Interface Designers
And going further back, in 2014 https://web.archive.org/web/20140704000413/http://www.bls.go... 15-1131 Computer Programmers
15-1132 Software Developers, Applications
15-1133 Software Developers, Systems Software
15-1134 Web Developers
And even further back, you won't see the Web Developers https://web.archive.org/web/20060813114102/http://www.bls.go... 15-1021 Computer Programmers
15-1031 Computer Software Engineers, Applications
15-1032 Computer Software Engineers, Systems Software
These classifications are buckets that the BLS creates trying to loosely get a single mode in the wage data (if there is a bimodal distribution of the wage data, then there are two different classifications).When someone applies on a work visa, they have to fit into a bucket somewhere. The definition of that bucket determines which type of visa they may be approved for. If it requires a degree, then its the H-1B. If it doesn't require a degree, its likely a H-2B... and that in turn leads to other implications (the H-1B is dual intent and can lead to a green card while the H-2B isn't).
https://insights.stackoverflow.com/survey/2021#education-ed-...
I have a Master's degree and would say that it was overall a useful experience, given that many of the aspects of software engineering/development that I explored in certain courses I'd have glanced over entirely in a more self taught approach - something like risk analysis and business continuity plans (and how those might affect system design and development), deeper exploration of testing and in-database processing (though also the limitations of testing/debugging DB-side logic became more apparent), model driven development and codegen, as well as a dive into the system analysis aspects and something like 4EM and BPMN (the latter of which actually feels more useful). Note: some of this was probably in my Bachelor's as well.
For most positions, however, I'd suggest that such a degree probably isn't necessary, even though some bootcamps might also be lacking (they'll teach you how to get things up and running, but not necessarily the implications of the implementation, e.g. ORM vs no ORM, aspects of distributed systems and fallible networks, backpressure etc.). Nothing that working as a part of a team on an existing project couldn't fix, though.
> Interesting that the government continues to peddle credentialism for software developers.
At the time, however, I'm studying up for Java certification, which I haven't needed up until now, but there are some governmental projects where they are mandated and you don't get a choice. If you're working for a SaaS company or purely work in private sector projects (outside of consulting), credentialism probably won't be as common, but in other circumstances you'll have to deal with a bit more red tape.
It’s no surprise that almost all boot camp grads I’ve seen in the industry come from Ivy league colleges or are URT.
But, yes, if you're willing to work your way up the ladder - you don't need any school.
You can probably get a good job faster by graduating from a good school, though.
Like xaml live preview somehow disappeared in my visual studio... And everything short of windows reinstall - it is still missing. Without errors or nothing. Please Mr HR that wants people with CS - send one of those to help me.
Kind of like how most boot camp grads will do the specific things they learn in boot camp very well but then fall apart when you change it up on them.
Just that I’m more surprised when I see an awful dev with a degree, because they had years to study.
The thing I see is, either it clicks or it doesn’t. And when it does click, you can go deeper.
A masters degree is probably a negative signal though unless they did something completely unrelated like music for undergrad, in which case it's similar to a BS.