top | item 16653552

The Declining Value of a CS Master's Degree (2013)

199 points| meri_dian | 8 years ago |blog.regehr.org | reply

161 comments

order
[+] CryoLogic|8 years ago|reply
There is very little a MS in CS can teach you that a BS in CS with some free time and books can't pick up. Look at this list from UChicago: https://masters.cs.uchicago.edu/page/12-course-ms-specializa...

Basically your masters program is giving you a choice of 9-12 courses split between:

1. Algorithms .

2. Your choice of a primer in Java, C, Python or Swift .

3. Databases, Compilers, Networking, Comp Arch, Functional Programming OS, Distributed Systems .

4. IoS, Product Management, UX, Intro to Software Engineering, Advanced C++, OOP, Android Dev, Web Dev Etc. etc.

I really don't see anything on that list that is worth paying for a years worth of classes for. Half of that list you already take in undergrad, and the other 40% you should be able to pick up with a book and basic experience and not need a class.

Maybe 10% of those classes you would be at an advantage in the classroom?

[+] esturk|8 years ago|reply
Graduate courses are geared towards research and the generation of knowledge instead of just a consumer. It's probably the biggest difference most students don't get. Yeah, you can look up anything that someone else has done before but what something original that you can add?
[+] FranzFerdiNaN|8 years ago|reply
You people need a European style masters, which require a Bsc in CS (or closely related like math/physics with a CS minor). Such masters are 2 years of study to prepare you to start a 4-year PhD program (so the Bsc-to-PhD route is 3+2+4 years).
[+] mathattack|8 years ago|reply
The program seems aimed at folks without a CS undergrad.
[+] swiley|8 years ago|reply
I intend to start a masters degree a few years after I graduate. My reasoning is that some of the more formal ideas are easier in a classroom setting and it's good to be part of the community that develops around a university. I think there are networking opportunities in places like that which don't exist in the cooperate world.
[+] commandlinefan|8 years ago|reply
> There is very little a MS in CS can teach you that a BS in CS with some free time and books can't pick up

Well... let's be realistic - this is true of undergraduate CS work, too. If you're going to college to learn how to program computers, you're probably going to be disappointed - the point is more access to experts in the topics who can check your work, offer guidance, and help you get unstuck if you get stuck.

[+] oculusthrift|8 years ago|reply
there's a difference between a MS thats aimed at people who have BS in CS vs those that don't.
[+] theparanoid|8 years ago|reply
Regehr is beating around the bush. In my MS it was about 65% Indian BS students and 35% local students (various backgrounds). The local students were working professionals and the Indian students just wanted the credential.

The cause is simple, an MS is very advantageous when applying for an H-1B.

[+] mayankkaizen|8 years ago|reply
Indian here.

I am not sure if you have any idea about the quality of STEM education in India but let me tell you it is far more pathetic than you can even imagine. Even I graduated from such an awful college and I know nothing about any area of CS. Nothing.

I am now 37 year old and working in non-software field but I now sorely miss the opportunity of getting good CS education and I wish I went through a decent college.

While your point may be a valid point (I have never been to US) but I do believe many enroll in those US college for good quality education, at least once. Hell, given a chance, I myself would enroll for such a course just for real education rather than H1B visa.

[+] meri_dian|8 years ago|reply
To be fair, I think saying they all "simply wanted the credential" is a bit dismissive of the Indian students. I'm sure many of them are passionate about computer science, and view an American MS as a path to higher learning and understanding in a subject they care about as much as they see it as a useful credential.
[+] jogjayr|8 years ago|reply
It's true that an MS is advantageous when applying for an H-1B (albeit an advantage that has been steadily eroding over the years). But equally attractive is the vastly better quality of instruction, facilities, and opportunities available at even the median American university compared to some of the top Indian schools.
[+] t1o5|8 years ago|reply
Although the parent is not 100% correct, the majority of MS students from India and China are in the US for improving their odds of getting the H1B visa. These students either missed the H1B boat while they were working in India or they were not competent enough to be hired from their college campus, or their colleges were not good enough for a company to recruit.

H1B is a quota based lottery system. There is extra quota for MS graduates in US. They also have two chances to get an H1B while being in the US under an OPT work visa after studies. (2 years stayback visa)

Now after graduation, these students go to the body shops which are conveniently setup in those college cities. The body shops are usually run by IT managers in fortune 500 companies who is now a US citizen. (most of them came in the Y2K boat). The IT managers bill the body shops at very high billing rate, thus filling their own coffers.

For example: Take ASU, Arizona State University. Check the demographics of MS students there and the body shops around that area.

You get the idea.

More about the faux consulting companies here. https://news.ycombinator.com/item?id=4100451

[+] commandlinefan|8 years ago|reply
> In my MS it was about 65% Indian BS students and 35% local students

I can top that. When I was doing an MS in CS at UT Arlington between 2005 and 2008, I was one of two US citizens in the entire program.

[+] sswaner|8 years ago|reply
I agree with you and Regehr. As a longtime IT hiring manager I have noticed that candidates with a coursework-only MS do no better in screening interviews than those with a BS degree, but applicants with a research-based MS fared much better. It is rare to be able to see the distinction based on resume alone, but it comes out clearly in interviews when we ask about their Master's work and focus.

Our oldest son earned a Master's degree in CS from the same school where Regehr teaches and did the research path. He now works at Google. His program was the most difficult thing he has ever done and it prepared him well for his career.

[+] bradleyjg|8 years ago|reply
Not just in the H1B lottery. There’s also the OPT (2 years for STEM) which allows graduates to work in the US while trying for the lottery.
[+] walshemj|8 years ago|reply
yes its obvious that there is massive gaming going on you can see this by students doing a Bsc the immediately a MBA (which was originally meant for late 20's mid 30's bog standard managers in big companies)
[+] praneshp|8 years ago|reply
> The cause is simple, an MS is very advantageous when applying for an H1-B.

Not really. It's okay, I guess.

[+] toolslive|8 years ago|reply
That's a very US centric view, especially: 'Whereas MS degrees used to be a means for departments to begin vetting future PhD students,...'

This was never the case in Europe, where if you have only a bachelor, people assume something went wrong. The target at university always was a Master's degree. The PhD, something you did for your mother, or if you wanted to pursue an academic career.

[+] besasam|8 years ago|reply
>if you have only a bachelor, people assume something went wrong. The target at university always was a Master's degree.

What? This is definitely not true in Germany, at least not anymore. Unless you want to go into research or teaching, it's commonplace for graduates to start working right away.

I think a much bigger problem that contributes to the devaluation of university degrees is the fact that students that don't really need a degree still get pushed to attend university - and that's definitely because of current recruiting practices where you really have no chance without at least a Bachelor's. I've met so many people in university who only really wanted to code and got no use out of learning things like automata theory, complexity, higher mathematics. Not saying it isn't important to learn these things, but you gotta differentiate between coders and computer scientists. And if coder positions require a computer science degree, well... Of course you're going to end up devaluing those degrees.

Edit: Adding to this, I attended university for 4 years before switching to a more practice-oriented college. In those 4 years I had one programming lecture (which only introduced three different language paradigms and didn't go into depth) and a system programming lab (admittedly, this was really cool). Everything else was mostly theoretical computer science and mathematics. Now, I chose this university because people told me of its good reputation and I felt like I had to attend a prestigeous school to get a good job, but it didn't really teach me any practical skills at all, so even if I had graduated I would've had a hard time landing that "good job" due to complete lack of experience.

[+] sarreph|8 years ago|reply
I don’t understand how the highest voted comment (at this time) in this thread is a user spreading a false notion that ‘if you only have a bachelor [in Europe], people assume something went wrong’.

Do they have sources to back this kind of snooty claim up?

Anecdotally, the only time I’ve come across this attitidude is when individuals heavily-vested in academia are attempting to stake out the moral high ground.

[+] adzicg|8 years ago|reply
This is not my experience in the UK (not sure if you consider UK part of Europe, though :).

If anything, it was the opposite, people I worked with would consider anything better than Bachelors in CS on a candidate’s CV (eg MS or PhD) as a signal that they wasted too much time in their life before starting with real work in the industry.

[edited for clarity]

[+] akerro|8 years ago|reply
>people assume something went wrong.

After I presented my BSc project my supervisor offered me support with PhD in computer vision and AI (area of my work and his specialisation). I had to refuse as during my studies tuition fees for PhD went up over 9x times (and for BSc almost 11x). On my first year I worked with people who paid ~£300 per academic year, on my final year I worked with others who paid almost £10.000 per year. "Something" went wrong.

[+] jrimbault|8 years ago|reply
In the same vein, I suppose in Europe we don't see education as only a mean to an end (a job), but we value education in and of itself.

Also, education itself is much less a business here than in the US.

[+] EnderMB|8 years ago|reply
I guess it depends on where in Europe you're from. This doesn't seem to be the case in the UK, where a lot of employers really couldn't care less if you're got a Masters of not.

Hell, when I was studying for a masters, I felt that it was essentially a half-way course towards getting someone ready for a career in academia. Others also used it as a way to get a good university name on their CV so big companies would look at their applications.

[+] tauntz|8 years ago|reply
> if you have only a bachelor, people assume something went wrong

I'll throw in my 2 cents - this is not true at all for Estonia for example. It might be in some fields of study that I'm not familiar with but definitely not in CS.

[+] stordoff|8 years ago|reply
As far as I am aware, Cambridge didn't even offer a Master's in Computer Science until relatively recently, only the BA (MPhil added in 2009–10, MEng added in 2011–12), so I find it difficult to believe that is the prevailing attitude (at least in the UK).
[+] jk563|8 years ago|reply
> This was never the case in Europe, where if you have only a bachelor, people assume something went wrong.

This was never my impression during my university years, nor in working life (both technical and managerial).

[+] Philipp__|8 years ago|reply
Definitely not true. Depends, if you went with 3 years of studies + 2 on Masters, maybe it is true. But 4 years (and in some cases more) of studies are the "norm".
[+] fergie|8 years ago|reply
James Bond's academic nous was famously demonstrated by his First in Oriental Languages from Cambridge. The most common qualification for a career in British government is an Oxbridge undergraduate degree in PPE. A top grade in an undergraduate course from a top university is, and has always been the most "useful" qualification for people with career ambition in the UK.
[+] seanmcdirmid|8 years ago|reply
Many European universities often have 3 year undergrads with a 1-2 years masters to make up for that. All USA universities have 4 year undergrad programs and many have 1 year master programs now.

It is safe to say that the systems are a bit incomparable, since a 3 year degree in the states would be just as comparable to an associate’s degree.

[+] CalRobert|8 years ago|reply
Or that you understand opportunity cost and wanted to start making stuff instead of burning more life before doing anything useful?

Anyway, I've never had my lack of a Master's come up in Europe. Maybe it's because I'm American.

[+] gota|8 years ago|reply
When I read the title I assumed this was going to be a very different piece, as I've recently been discussing with friends and colleagues about how degrees in general are going to be less and less important over time. This is a digression on the topic of the original post, so I'm sorry if I shouldn't be posting it here.

The reasoning goes: the reasons why we need degrees are certification and reputation. By certification I mean that we only let people who we all trust practice medicine, as that kills people directly otherwise. So we restrict the people who can to those with the appropriate degrees.

The second point is more relevant to most other careers. A degree is nothing but a more reputable institution 'lending' reputation to its graduates. The reason this is necessary is because nobody's got the time to verify whether every person knows Computer Science - we're better off just knowing that people from University of X know CS if UoX says so. Even if you're going to personally interview every candidate for a job opening, still relying on degrees helps you filter candidates.

The thing is our interactions are recorded to the level that we can now reason about individuals in a way that was not possible before. Why do I need to trust UoX if I can mine your entire internet presence with reasonably comparable effort?

I thought from the title that, since CS is the field that is making this shift possible, we'd be the first one to suffer this influence.

[+] paublyrne|8 years ago|reply
I don't think your premise is right. University degrees are not only for certification and reputation. Your specific example of medical practitioners alone goes against it. There is no other practical way for people to learn to practice medicine than in university. You can't really pick it up on your own in your spare time, unlike CS.

As well as being an opportunity for someone to have time and freedom to study for a period of years university also provides a safe world to learn other soft skills and grow as a person. It's not prerequiste to develop those, of course, but it really helps.

[+] wolfgke|8 years ago|reply
> The reasoning goes: the reasons why we need degrees are certification and reputation. By certification I mean that we only let people who we all trust practice medicine, as that kills people directly otherwise. So we restrict the people who can to those with the appropriate degrees.

That is why in Germany such degree programs (medicine, dentistry, veterinary medicine, food chemistry, law, pharmacy, teacher's training certificate, forestry) end with Staatsexamen (state examination), which is a special kind of degree that is much more tightly controlled by the state.

[+] vinay427|8 years ago|reply
Can we get this tagged with a year (2013)? It's especially relevant because the article links to a previous HN discussion about the article.
[+] ronnier|8 years ago|reply
I would only get a masters while working (that’s what I did). I wouldn’t forgo money and experience to get a masters and I wouldn’t go in debt to do it either.
[+] bootsz|8 years ago|reply
> Wilfra mentions “disdain for people who don’t have a BS CS who want to get an MS CS.” It was certainly not my intent to express disdain for people who follow this path! Many people pull it off admirably. However, it is a difficult path to follow because it skips all of the introductory programming classes

As someone who went this path, I'm troubled by the amount of assumptions and generalization being made here.

To my knowledge any legitimate MS program will require that you have completed an appropriate amount of foundational CS courses before starting the program. I obtained an MSCS after getting a bachelor's in a different field, and I had to take 6 CS classes to satisfy the prerequisites. Including the MS the total amount of coursework I completed was slightly greater than the requirements of the university's Bachelor's degree, plus some graduate-level research.

Granted, this is not as much coursework as someone who obtained both a BS and and MS, but from my understanding if you're not planning to pursue a PhD (or need it for immigration purposes) getting both is usually not a good use of time anyway.

It seems he is trying to specifically criticize programs that fall far short of what I went through, which seems valid. But it would be nice to make that distinction instead of writing us all off as inferior.

[+] vikascoder|8 years ago|reply
The moment I started reading the first paragraph the thought in my head went like, "he is pointing to Online Masters By Georgia Tech..it's definitely OMSCS he is now ranting about". Voila. He was indeed. I have a rigorous bachelor's degree in CS. Thee are many many topics which were never covered in that Undergrad course which are done in the Masters. Yeah it's maybe not useful if you are making a quickfire app for the play store but there are tons of work and research areas and jobs around for which you need the aademic rigor of having studied an MS atleast. Can we have this debate to rest? You are doing well with a BS, good for you! Education is expensive in the US? Dont do it!

Now OMSCS is riling up a few heads here and there which it will. At 7000 USD its a fantastic way for a working professional like me to advance my knowledge. You think these kind of MS courses devalue the degree? These courses are not THAT easy to do and this is 2018, there are fresh disruptive ideas in very field , why not Graduate school ? Hey with enough of these courses you will not need the evil H1B sith lords eating up the jobs here right? Its a Win Win. The market will then decide whos the more worthy MS student they wish to hire.

[+] asdlfklei|8 years ago|reply
Stuff like this has me scratching my head.

Here's my situation:

I have a PhD, but in a different, non-CS field.

Due to my research and experience, I have a ton of stats and programming experience across a range of languages, from lisp to C++ to javascript to python, to name just a few. I have published stats papers for example.

However, I kinda find when I'm looking at jobs, there's a heavy focus on CS grads, or people with finance-type degrees, or engineering degrees, or some combination. And to be honest, there are certain things out of a BS in CS that I probably am not that familiar with, especially low-level hardware type stuff, and network stuff.

So, I look at what's out there, and getting a BS in CS seems a little odd, for various reasons, in part because I feel like there's a lot of redundancy with what I have from my career and education already.

A MS in CS, on the other hand, is kinda not so strange to me. I might have to take a couple of preparatory courses, like in OSs, but doesn't seem too grueling to me.

So I read a thing like this, and it comes across as similar to the sort of gatekeeping that I bump into, like if you have a PhD in another field and then get an MS in CS, you aren't a "real" CS grad or something. I've supervised honors CS undergrads, and believe me, I feel pretty confident that my skillset is beyond many of theirs, at least in certain areas. At some point it just seems absurd to me.

I share some of the implicit concerns about cash cow MSs, that seem to be part of the current employment climate, not unique to CS, but a symptom of problems with hiring practices and also contributing to it. But it also seems misguided to me to start arguing that someone who completes a MS in CS isn't as skilled as someone with a BS.

There's just so much gatekeeping and pissing contest stuff that goes on in STEM, and it drives me crazy sometimes. It is maybe possible that that english grad actually understands programming, math, and algorithms at a pretty high level (I'm not an english grad, just making a hypothetical argument).

[+] inieves|8 years ago|reply
I think your coursework-only MS needs to be further broken down into those programs that require a BS in CS and those that don’t. There are at least 3 types of MS in that sense. Without this distinction, your article is short-sighted, not realizing that there are actually many rigorous academic MS programs in CS that would not be doable by someone lacking deep knowledge already.

Erosion of the value of the MS is not isolated to CS.

Forget some universities eroding the MS, entire countries are eroding it. If im not mistaken, Italy is a massive supplier of MS degrees.

[+] booleandilemma|8 years ago|reply
The problem with getting a masters in CS is that people just don’t care.

I’ve had too many technical interviews where the hiring manager will ask me questions about his favorite ORM or dependency injection framework and turn me down if I never used them before.

If I would have known that people in this field are so quick to disregard credentials and previous work experience I would have chosen a different technical subject to major in.

[+] vsd13|8 years ago|reply
While I do get the sentiment, I'm not sure what's the recommendation. I do think there's more to it than gatekeeping, but what does someone who's REALLY interested in the topic and wants to change fields do? Get a second BS? I'm not familiar enough with education, but I'm under the impression that (at least within STEM -> STEM) it doesn't seem popular.
[+] cantankerous|8 years ago|reply
If you're going to put the time into a research MS degree, you shouldn't be paying for it. Period.
[+] siberianbear|8 years ago|reply
I hired software engineers at a big company in Silicon Valley for many years. I interviewed thousands at university career fairs. I hired dozens of summer interns and full-time people.

My take on a master's degree is that I treat it like a year or two of experience: experience that the poor fool didn't get paid for. Of course, a person with an MS is going to be a stronger candidate than one with just a BS, since they've had more experience. But I can take the engineer with the BS and give him the year of experience myself.

Perhaps it's different in Europe: they seem to value high education credentials more. I didn't care about the status of an MS and neither did most of my colleagues.

I think the only reason to do an MS in the USA is if you're a foreigner trying to get residency through an H1B visa. There's a separate quota category for people with an MS degree earned in the USA.

[+] nikanj|8 years ago|reply
It seems like we've grown to dislike any and all indicators of maturity in a developer. Young people are smarter, plus easier to exploit too. And you don't have to pay them as much, as they don't have advanced degrees.
[+] digorithm|8 years ago|reply
As a soon-to-graduate Masters CS student in a top research university, I'd like to share, for what it seems, a different opinion and experience about this matter.

I came here from a 3rd world country that lacks a good education; Most of my CS experience and knowledge, at that time, came from the Internet, books, and personal projects. After working hard, I was accepted to this university as an MSc student.

I have never learned this amount of quality content as I've been learning in these past 2 years in this MSc program. Deep topics and subjects like programming language theory, low-level knowledge in distributed systems and machine learning, all this being taught by excellent researchers in their respective fields.

This was the first year, the course requirements part of the MSc program. Now I'm halfway through my research, and again, I've been learning tons. I've been writing very interesting code, building amazing things, writing papers, and working on my own ideas. I've never been this close to amazing scientists and engineers. This is priceless, in my opinion.

I've worked in the industry (before the MSc. program), it was super great. But I can confidently say that the MSc. program has made me a better engineer and taught me how to do proper research. I'm sure this may vary from university to university, department to department, and most importantly, from advisor to advisor. But that has been my experience!

[+] laichzeit0|8 years ago|reply
I wonder what he would have to say for my example:

I did a 4 year BS CS degree and graduated in 2005. I did calculus, linear algebra, real analysis, mathematical statistics, etc. until 3rd year and then the typical CS curriculum of compilers, distributed systems, programming languages, artificial intelligence, etc.

I've been working in industry for 12 years doing typical systems/software development, but got involved in more "Data Sciency" things in the last 2 years. I liked it so much that I decided I want to change career directions and move away from just "building software" to more "building software that runs on data as the fuel", like machine learning/deep learning/NLP related problems.

So okay, I have no real problem with doing anything that involves manipulating the data, building pipelines, or implementing things in Tensorflow or Gensim, etc it's just programming. Easy, peasy. I also understand most of the mathematics, and what I forgot was not too hard to "re-learn" very quickly.

The problem is it is difficult to apply for jobs as a Data Scientist when you only have a BS CS, even with real world experience. I'm not "formally qualified" as a Data Scientist.

So I enrolled for a 2 year course-based MS (1 year course work, 1 year dissertation). Basically it allows me to slap on my resume that (a) I have done university accredited courses in mathematical optimization, machine and statistical learning, deep learning, ethics, big data, etc. and I suppose the dissertation says that I can do more advanced work on data in an academically rigorous fashion. So basically I'm using the MS to change career trajectories 10 years after doing a BS CS.

I suppose you could do the courses through MOOCs but I appreciate the dissertation part as I am forced to read journal articles and learn how to do things more "rigorously" than I would otherwise in a plain old MOOC.

Isn't this a viable option for pursuing an MS? I don't think it's necessary directly after an undergraduate, but after a decade or so you might want to "specialize" into something that didn't really exist when you did your undergrad. BTW, I did this part time while working (you can kiss away your weekends and evenings).

[+] odammit|8 years ago|reply
My masters was a waste of time and money - except that it’s been a job requirement for multiple jobs.

None of which asked for proof.

I think my bachelors was too besides the social experience of college (I’m from a small town).

Most of what I learned was already familiar to me from developing as a hobby and I learned way more from studying stuff I was interested in than bubble-sorting and SAP case studying my way into boredom for an extra year.

[+] amriksohata|8 years ago|reply
UK based here, I have had a mix of friends that got a Bsc and a few that got Masters. In terms of jobs and salary nearly all are on a equal footing. I agree with the guy that said a Master's is more a route into research as few employers specifically seek it or reward it and if they do it's a very small number.