Ask Slashdot: Worth Going For a Graduate Degree In the Middle of Your Career?
spiffmastercow writes "After nearly a decade of professional software development, my desire to work on something more interesting than business applications has pushed me toward looking into going back to school. I'd like to go into a graduate program for Computer Science, but I need to weigh my options very carefully. Is a Ph.D. a near-guarantee of a spot in a skunkworks type of job (Microsoft Research and the like)? Is a M.S. just as good for this? How does the 'letter of recommendation' requirement work if you haven't kept in touch with your professors?"
I don't know about that - the division I'm in (of a large company) hires almost solely PhDs, and we're not exactly "hard core", whatever that means. Also, if he's sure he wants the PhD, it's not like getting the MS will shorten his PhD appreciably, if at all. If I were mid career, I would definitely not waste time on an MS if the PhD is what is desired.
I would decide what the goal is. If it's to attempt to get a higher paying job, don't get the PhD. If it's prestige, don't get the PhD. If it's to focus on interesting problems that might require some fairly deep insights, both during the PhD program and later as a career, then get the PhD.
To answer the submitter's question more directly:
A PhD isn't a guarantee of a job in a skunk-works type of environment. It isn't a guarantee of anything, really. It is an opportunity to focus on a narrowly defined problem for a number of years, and learn the skills and mindset necessary to move what the world knows about a subject. This requires being able to synthesize knowledge and insights from collections of facts, data, theory, etc. These skills are the sorts of things you need to do to work in a skunkworks type of environment, certainly as a major contributor and not just in a support role.
I would say this - if you like to apply skills that you've learned toward your job, get the MS. If you like to figure out things that people don't know yet, get the PhD.
A PhD doesn't really guarantee you anything.
You're correct that a PhD doesn't guarantee anything. My personal experience of working in the software industry in the UK, after getting a PhD in computer science has been mixed. On one hand, employees still have the stupid mind set of looking for X years commercial experience. It didn't matter that I had spent 4 years writing lots of C++ code for complicated machine learning algorithms, and like most on /. had been programming from a very early age before going to university. It still counted as 0 years commercial experience at a lot of places. I gave up trying to figure that one out. A PhD isn't going to automatically give you a high paying job.
On the other hand, having a PhD can open doors. I've found out that clued up start-up founders are desperately keen on hiring PhDs. This isn't strictly down to the area of your research (though it helps obviously). A PhD says that you've spent years working on problems where the solution isn't well defined (buzz word here is "wicked problem"), you're self motivated (no need for management hand holding), you can work with plans that change, you're not fazed by failure and most importantly you persevere and finish the damn job. Big companies tend to be pretty "Meh" about these traits, but start ups know that these traits are absolutely vital to getting off the ground.
TL;DR version: The PhD may not help you in your career in well established organizations, but it may give you a better shot at working at start ups where the skills you picked up over the course of your PhD are better valued.