Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I have found this comic pic on Steve Hanov's blog: enter image description here

The most of the points are true obviously. What I can't comprehend is, why having Ph.D is considered as a "bad thing"?

enter image description here

Any thoughts?

share|improve this question

closed as not constructive by Ryathal, GrandmasterB, Dynamic, Jim G., gnat Aug 21 '12 at 20:57

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance. If this question can be reworded to fit the rules in the help center, please edit the question.

Its good that you think that HR knows what a compiler is...:) –  Emmad Kareem Aug 21 '12 at 21:11

5 Answers 5

up vote 22 down vote accepted

Joke images aside, this is common in my experience:

  1. A PhD in Computer Science involves writing surprisingly little actual code.
  2. The degree provides no experience with the full lifecycle of software.
  3. PhD candidates demand higher salary.
  4. There is a concern about their ability to fit in with a team of programmers.
share|improve this answer
Note that computer science has (almost) nothing to do with coding. If you have a PhD in computer science and you wrote your thesis about complexity theory, you're a mathematician, not an engineer. –  Patrick Collins Aug 14 '14 at 4:45

The idea is that the the Ph.D spent years in academia, which is radically different from "real" software development in industry. A software engineer who has worked in the industry for years thinks all the academic knowledge is harmful in real environments.

That's the joke anyway. It's accuracy is open to interpretation. Certainly academia and industry are radically different...

share|improve this answer

I didn't get my Ph.D, but I did get my master's degree. I was literally laughed at for getting it at my day job because many things I was learning were "theoretically" awesome, but practically unfeasible for many of the projects I was on. I wrote an entire article on the subject. At the end of the day it's about experience. In general, there is no way that in a classroom setting you can have experience working on year+ long projects with 20+ developers. That experience is invaluable and changes everything.

share|improve this answer
On the other hand, if you're doing graduate studies in a "theoretical" topic that you're interested in, equivalent experience in the real world is very rare indeed. And conversely, if you're planning to work in the real world there is no replacement for real world experience. Depends what your intentions are. –  AerandiR Aug 21 '12 at 21:50

A PhD applying for a software developer job, even a senior dev, is like a neurosurgeon applying at a hospital for the open nurse's spot. A PhD on the resume of an applicant for a coding job (even a senior dev or analyst) at a typical small to medium business tells me the following things:

  • This job was not your first choice; probably not even your top 10. IBM, Intel, Lockheed, Rockwell, three agencies of the U.S. Government, and five universities probably said no before you even considered applying to work here. That means you probably consider yourself above this job and are just looking to pay the bills until some research outfit has a change of heart. That means, in turn, the time I spend training you in our business's applications and codebase will ultimately be wasted and I'll have to start over.
  • You're going to want a lot of money for your level of education. With you coming straight out of graduate school, I might have to offer six figures just to not insult you. I can hire a BS or BBA of the same age, who put the 3 to 4 years into his first job instead of graduate school, for between $50-70k depending on geographic region, market factors and just plain how badly I want this guy to work for me.
  • I'll be paying for your time spent on theory, not practice. If you have no industry experience, I'll be paying you a senior dev's salary or better for entry-level practical knowledge. If you do have industry experience on top of the PhD, I probably can't afford you. By contrast, the baccalaureate candidate with the same experience, who's cheaper, will more than likely be a better fit for my dev team; he'll have been around long enough to know alot about how it happens in the real world, including the fact that he doesn't know everything.

At my last job, we hired a PhD, a former professor, as a mid-level coder during a round of staff augmentation. He lasted two months before his shoddy code, inability to communicate (slight language barrier; he was Russian, though we had a couple other guys with thicker Russian accents who we begged to stay when they found other jobs) and general lack of productivity became intolerable.

The one I find even funnier, because it's even truer? -7 for taking a certification course. First off, you're telling me that if I want to develop you as a good coder, you're going to want me to shell out several grand a pop for cert classes (during which you won't be writing code for anything that makes me money). Second, the coder who replaced me at my first job had a list of certifications a foot long to compensate for no degree. That's admirable, but keep reading; despite an MCTS in C# development, she could not tell me how to define, subscribe to and raise an event in a Windows Form. Despite passing a cert test in ADO.NET, she asked me to explain SQL outer join syntax. I'm not making this up.

share|improve this answer
" -7 for taking a certification course. First off, you're telling me that if I want to develop you as a good coder, you're going to want me to shell out several grand a pop for cert classes" Or I'm telling you that if you need me to get the cert for some reason, I will. (e.g., if you want to get MS Gold Certified Partner status, which has certain software licensing perks). –  Andy Jul 22 '13 at 20:51
I don't think any programmer would flatly refuse to attend a certification course and sit a test if their employer were paying for it. However, my experience is that even employers who want these certifications are not willing to fork over several grand for a seat in an actual instructor-led course to get it; they want to buy you the book, have you learn it (on your own time), then sit the exam. –  KeithS Jul 22 '13 at 20:57
I worked for a company that didn't get enough volunteers just by asking; they had to provide additional incentives for developers to do so. This was in addition to buying CBTs, allowing employees to study on company time, and paying for the exam fee provided the employee passed. If a company wants me to do something that only benefits them, I'm not willing to spend my free time doing so, I expect to be given time on the job. The certs don't really help me in any way; my resume is fine without them. –  Andy Jul 22 '13 at 22:33

I don't belive that the Ph.D it self is bad, because no matter the source of the life experience it's in general a good thing to have people to disagree with.

But the thing is that it could be a sign of something remarked as "bad", like, as mentioned, what are the values of a person with academic background? What skills does he left behind? Academics tend to be not as practical as the market expect.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.