I'm a senior CS student, I have been wondering what is better? Studying a Masters right after school, or get real world experience before studying a Masters?

Also, how hard is to find a good job, with either a BS or a Masters in CS?

+26  A: 

If you intend to go into academia, then the Masters. Otherwise, real world experience is going to be more useful.

Mitch Wheat
If you intend to go into academia, then masters aiming for the phd. Just a masters will not get you into the good academia
Vinko Vrsalovic
Almost all (if not all) PhD programs for Computer Science in the US require a Masters to apply for the PhD anyways. I just went through the application process at 4 different schools.
I managed to get a job after a masters but it was difficult.
Omar Kooheji
A complement to Vinko's comment. And a Masters by coursework is not suitable for that, IMO.
Adeel Ansari
+12  A: 

Perhaps my experience is skewed because I only have a single data point to go off, but at my University it feels like the Masters CS program is primarily populated (and designed for) students whos undergraduate major was not CS. I found a huge amount of overlap in the Masters program and the Undergraduate program.

So, with all that said I would highly recommend real world experience. I think in our field it will increase your value more.

In the UK. There are two types of masters. By research or by conversion. Conversion course is basically the BSc compressed into a year. The research is a year of your own pure research written up for society.
Martin York
And thats the reason I intend to do a Masters in a different field, but related somehow.
Adeel Ansari
@Martin York There are a lot of taught masters in the UK, aimed specifically at boosting the knowledge of those who have graduated with a degree in CS. A lot of students take these to ensure that they finish their education knowing all the foundations they could need for a successful career in a given subject. A lot of the top 10 universities in the UK churn out Advanced Masters students and they tend to land higher starting salaries or jobs in companies that wouldn't have touched them with their Bachelors (i.e. Google, Microsoft, Oracle, etc).
@EnderMB: In my opinion (and could be wrong) A BSc in computer science from a UK University already teaches you everything you need to know (That is the point of a BSc (in the UK) to teach you everything you need to know to start research). The masters is not going to teach you significantly more (it may fill in gaps (but not in real depth)) in one year (unless you have a non CS degree). Also I think you will find that both Google and MS are more impressed by research than taught candidates (have worked and interviewed at both).
Martin York
In theory, the BSc should be all you need, but as a recent graduate I can safely say that there are huge gaps in the CS curriculum. If it weren't for outside study and internships I would have never touched data structures, algorithms, C, pointers, recursion, and far more. I'll be starting a MSc soon and will be loading up on theory, as well as taking my semester of research (as far as I know nearly all "Taught" masters have a full semester of research).

It's easy to find a job. It's not even very hard to find a good job, or a job at a good time. The hard part is finding a good job at a good time.


I would say it all depends on what you want to do. Certain jobs required an MS but, if you have sufficient knowledge, you can get in w/ just a BS. If you are on the R&D track, especially going for a doctorate, then staying in school may be better.

A lot of places ask for a certain degree or equivalent work experience. Having a few years of work experience is good because 1) you can take a break from school, 2) you get a chance to see the practical side of computing, and 3) you may find a field that you are more interested in, resulting in a change in programs when you do go back to school.

+5  A: 

I have never seen a programming job offered where the employer required a CS Master's degree (as opposed to an undergraduate degree), so I don't think a master's will help you much in the professional programming world.

Many colleges and universities in the US consider a CS Master's degree to be sufficient for faculty positions (even tenure-track). If you want to teach, get a Master's. If you want to program, get a job.

I recall that required >= masters to be considered for employment... but then again, has been limping along now for a number of years.
Average pay for MS degrees is $10K higher than just the BS degree.

Like is illustrated above, experience will trump the Master's, but a Master's will generally increase your pay.

In the ideal situation, you can get your Master's while you are working and gaining your experience.

Working while getting your Master's, is actually what I want to do, but I have heard and read that in some schools, getting a Masters is like a full time job, is this true?
I was able to get my MBA while working full-time. It was difficult, and I didn't have much freetime, but it was far from impossible. Only took about 2 years.
+1  A: 

As someone who has 7 years work experience and is currently studying for a masters. I can only give you reasons why, I am.

A lot of prospective employers use education level as a mechanism to filter out employees and so in some employers' minds, a graduate with a Msc > a Bsc. However the biggest bar you will get as a graduate is lack of experience.

There is a school of thought that new graduates are either a) hapless b) undisciplined in areas such as testing, source control or c) think they know how to solve the world.

Personally I would go for a years experience if you can. Then you can always complete the Msc later.

John Nolan

I was put i the same situation when I just graduated in June. I had an internship organised for a bank in London and then a plae sorted for a masters in Distributed Systems and Networks. When I spoke to various Directors at my internship, I put a simple question to them: "Given two potential employees, one with a masters, one with a years experience, who wuld you employee?"

Most said they would favour experience over a masters. The reason one guy gave me was that all a person with a masters can do is recite out of a text book, not apply it to a given situation.

At the end of the day, I went for a permanent job instead of a masters and it turned out to be a god decision. I've got an excellent job the type of which I wanted after my masters, all without the large expense of completing a master.

+3  A: 

It really depends on the school. In the US, if you can a get a masters from Stanford, Berkeley, UCSD, UIUC, University of Washington, MIT, Carnegie Mellon or some similar high caliber, top 10-15 program, I would say it is worth it (it will open doors). If it is a masers from a random state college (i.e. North Dakota State), then in my opinion it is a gigantic waste of time.
On the other hand, whatever academic education you gain will barely scratch the surface of what you need to know, most of what you need to know, you will learn on your own through experience.

Tony BenBrahim
If you don't have a Master's you are not qualified to say what a waste of time it is. If you consider it equal to a second Bachelors, then you know the student has gained a huge amount more knowledge than they would without it. Same as Bachelors vs no Bachelors. If your goal is quick cash, then by all means get out of school and start working.
@karl: "If you don't have a Master's you are not qualified to say what a waste of time it is." statements like that are universally cop-outs filling the void where a real argument should be.
@karl, i agree
+3  A: 

You might be interested in looking at this related question: Is a masters degree overkill?

Anders Sandvig

I found a masters useful as it was very targeted at something I was interested in. I would not think that a general computing msc after a computing bsc would be of much interest to employers.

If you are trying to move into computing then a computer conversion msc can be very useful.

+1  A: 

A M.Sc. can be very helpful when you are looking for a job. But its only going to increase your chances of getting the interview.

If I was looking at two a fresh graduates one with a B.Sc. and the other with an M.Sc. I would be biased towards the one with the M.Sc.. However, once a candidate has a few years of actual work experience I tend to ignore the level of the qualification. I think

If you want to do a M.Sc. then would recommend too things:

  • Do it as soon as possible. If you do a it part-time you might find it hard to juggle work-life, home-life and university-life. If you want to do it full-time your organization might make it hard for you to take a career break.
  • Go for a research based M.Sc. rather than a taught one.

I tried a taught masters once after 15 years work experience. I started with the first two or three modules were new to me. But my motivation went to zero once I started into the Java for dummies, SQL for dummies, etc. And it just seemed like there were better things that I could do with my time.

+3  A: 

If you ask me, I would tell you that it is much better to work at least two years after getting out with a graduate degree before finally settling for a master's education. Why do I find that much better than, say, going for master's education right after graduating? It is because, as far as I have felt and observed and found, life outside academia -- not least undergraduate study years -- is significantly different from life in academia. When you get out, and get in the industry, you start to realise that the industry works differently, albeit not completely. Since I consider master's education as a means of specialising in one field of your interest, something you would like to see yourself working on down the road, having at least two years of experience in the industry under your belt broadens your perspective on both where the industry is going and what it demands, and what you want to see yourself doing later on in life.

Hence, it will facilitate you with reasons to choose your major, may be different this time. As one of the commenter already said about the "huge amount of overlaps", you might like to consider something else, i.e. Philosophy, Economics, Business, Management, Mathematics etc..
Adeel Ansari
+18  A: 

Everyone gets work experience. Not everyone gets a Master's Degree experience.

It was absolutely worth it to me. It was the first time I had to work independently to accomplish rather large goals (research+thesis, part of other independent projects involving multiple research groups). Many (but not all) of my courses were worthwhile. I wrote a multitasking operating system in one, finally learned and understood topics in algorithms that I didn't quite grasp during undergrad, and lots more. Some classes were redundant and easy, but those fluff classes just let me put more time into the ones that really mattered.

Anyway, I've known lots of people who take 1 class per semester towards a Master's degree because they no longer are willing or able to give up their current lifestyle to return to a full-time student. It was way easier for me to keep living on ramen noodles then it is for these people to go back to it.

If everyone gets it, wouldn't that make your life more difficult if you have none?
Hao Wooi Lim
The point is that you will get it in time, and consider your prospects five years down the road. Sure when you graduate you dont have work experience, but in the long run when you DO have work experience, you will be in that much of a better position.
+5  A: 

My friend and I both finished college the same year. He went on to do a masters degree, I went straight into employment. After finishing his masters, he then spent 2 years on the dole looking for a job, whereas I have always gotten a job within a month of starting to look for a new one. I'm not sure if it is because of the timing involved when we go looking or the fact that I have two more years of industry experience then he does, but going for a masters degree has affected his employability negatively.

If I was to advise someone it would be to get into the industry, and either do a night/weekend masters over a longer period of time, or find a nice employer who will sponser you on your masters.

+2  A: 

Master's and even PhD's are necessary for a small percentage of jobs, usually involving RnD in very large companies, the likes of Google, Microsoft, Oracle, IBM and such. There is no simple answer, it depends on

  • Whether or not you like to do really 'brainy' stuff. Most IT jobs do NOT require hardcore scientific thinking, so you might get really bored at a 'normal' company.
  • As I mentioned above, there are only a few IT companies that would be seeking, and more importantly, utilizing such qualifications. This could mean having to physically relocate. Another option is to get work at an academic institution, but that's a different kind of a work, too.
  • Salary-wise, it probably won't make a big difference. In fact, you can probably earn much more if you specialize as a consultant in certain products. Again, MS/PhD much more about job satisfaction...

To be brutally frank, I'm guessing that the mere fact that you're not sure if you should continue indicates that you're probably not fond enough of the 'brainy' stuff to continue on... If you really were keen to go on, you'd just do it regardless of the job perspective.

Good luck

Andrew from NZSG

There is no hard and fast answer to your question. It really depends what it is that you want to do with your career and where you want to work. At very few places where I have worked and especially at those places where I am involved in hiring developers do we look very strongly at degrees. We know that if a degree is important that we can pay for you to get it in a year or two, but experience takes a lot of time.

Anecdotal evidence has shown me that many good developers who spend a few years in the field find themselves earning enough that they decide to forgo the advanced degree because the time and monetary cost is so high and is unlikely to get them additional advancements.

Getting a Masters prior to gaining work experience is best used when jobs are not plentiful and you are just making yourself more valuable for your first position. If you can get a job it is almost always better to be working than studying. If you can't get a job then studying is far better than waiting around.

Scott Alan Miller
+4  A: 

get a job at a company that will pay for your master's degree - best of both worlds!

[many government agencies and large corporations will do this]

Steven A. Lowe
Huge +1. It's not difficult to do both at once if you take it slowly. Even better if your company pays for it. You can sometimes get that rolled into an offer if you go into a job knowing you want to go to grad school.
Stuart Branham
+4  A: 

Short answer: it depends.

Long answer:

If you study something useful, like virtual machines or compiler theory, then you will get a "good job" doing interesting (read: hard) work. The google guys, the microsoft guys are all doing cutting edge stuff, compiler optimizations, image processing, etc.

If you study something not so useful, like <insert esoteric area of study here > then you will have problems getting work right out of school.

Personally, I was a CS guy with an MS and no experience who started out making 15K less than a guy with "20 years experience" who couldn't program anything other than Yeah it sucked and my ego was stomped and crushed, but Within a year he was fired and after my pay bump and performance bonuses I made more than him despite him having "20 years of experience" and my "zero experience".

Yeah it will suck initially when you get out (it did for me), but if you hustle and bust your butt then you will hit the sweet spot within a year or two.

I really recommend doing it right out of school simply because you won't know how much better life is in the real world and won't dwell on how painful grad work is. Almost all the people I know who went back to school for an MS in CS didn't finish it because they couldn't stand drop in quality of life when they go back to school, whereas I finished just because I never knew what life was like in the real world and to go from < 15k/yr to making ~100K/yr is much, much better than the other way around.


It depends on how deep and geeky you want to get. Most companies which aren't in the software business will most likely value your work experience more than a Master's degree.

If you do want to get into some very deep Computer Science matter, you will most definitely need a Master's degree. Innobase Oy states their general requirements include you have a minimum of a Master's degree.

Christopher Dolan

With a few years experience, I started getting the feeling that my lack of a formal CS education was holding me back career wise, so I've been pursuing a masters. If you have the background in Computer Science, it probably isn't necessary. But I think its' been a great experience, and I'd definitely second getting a masters' while you're working.

+1  A: 

The difference in salary between having an MS and only having a BS is generally not significant enough to justify the cost of the MS program.

My recommendation would be to get a job located somewhere near a university with a decent comp sci master's program, then work on the master's while you're working. Most companies offer to pay for further education, and most MS programs offer lots of evening courses for this exact reason. Usually there are some strings attached (at my company, if you leave, you have to pay the company back for any courses they paid for in the previous 2 years). It will take longer since you can only take 1 or maybe 2 courses per semester, but you won't be racking up student loan debt, and you probably have the spare time (especially if you don't have kids yet).

+1  A: 

In my regard, the masters degree is essential. Most of what i learned in terms of software engineering, I did so during my masters.

Prior to that it was more about programming and algorithms and the like. I'm glad i decided to opt for my masters and would advise like-minded folks to opt for the same too.


I am a Performance Engineer and I really cannot see how a masters degree will help my career. But I would like to get a break from working and go back to University life. I would say if you want to do a masters major in something slighly different that your job is so it is not boring.... Maybe like Bio Informatics or Computations Fincance, etc... And besides in CS you can learn most of the skills yourself, just google it...


Definitely and logically having a masters degree is better since it enhances your knowledge whatever is your major .Also everyone will get experience but not all have the chance to get the masters degree.

@tito: but which employers care about people with Masters? Very, very few. In fact, I'd be less likely to hire someone with a US Masters - I'd wonder if they were incompetent, and so went to school instead of working. Other countries the opposite, as I've seen Masters students who had only just reached a bare minimum of competency.
John Saunders

Work experience is more valuable in the short term, but I would go for the Master degree anyway.

+1  A: 

I don't think we have even begun the shakeout phase where this question would have a clear answer. First, Simucal tells revealing info that backs with my New Team Lead ... what we have being shipped by today's system has definite stripes of tell runoff at the mouth and tell them what they want to hear. I am a dedicated supporter of field experience, which you cannot get if the economy is kabootz ...

Thus one would enroll in school, at which point I would go directly to a deep researching of which schools are what for cs programs's being careful to visit them. If you cannot do that and cannot find work doing cs, then it's burger filppin - I currently hold a job on a production line, just like laverne and shirley except for real - but would not waste time and bucks on any cs program short of something like Renlasser or who knows, major research project. bigbunny has a strong lead-in idea, which I can refine as do a Double-Degree thing, Accounting ( numbers, not the breathless drivel Management stuff ) Joined with a cs degree should get you taken seriously by real companies with real goals. I just saw a few days ago where [ major air carrier ] was awarded billions in stimulus money.

I met a person [ two decades ago ] who holds a Masters in Business and works at that company, I think they could use a double-degreed cs / accounting

That doesn't mean they will hire them.

As another poster states:

get a job located somewhere near a university with a decent comp sci master's program, then work on the master's while you're working.

Nicholas Jordan