In my experience, generally speaking, CS PhDs
- are used to work hard and put in many hours
- are more motivated than others professionally
- can analyze a problem effectively
- can communicate very well in presentations and reports
Thus, what is the best reason not to hire a PhD on your development team? And how do you recognize this negative trait as a PhD yourself?
UPDATE 2009/22/1 : Thanks for all interesting answers. I use it as a part of self-diagnose, trying to detect weaknesses I may have because of my years as a PhD. I find it positive that so many of you point out that you should consider the individual and not the title. Yet, of course this question only makes sense in general terms.
I find it puzzling that as a CS PhD, you ought to understand very well what optimization means, and thus you ought to understand that in a company, you have to minimize cost/optimize productivity.
Summary of arguments in posts below, generally PhDs shouldn't be hired because
- they put their effort and motivation on the wrong problems
- they lack interest in tedious, productive work like debugging
- you the employer harbor negative feelings towards PhDs (isn't that like discrimation by gender or race? one of the most upvoted arguments)
- they have problems to cooperate with team, lack people skills
- of poor design and coding skills
- you cannot afford to hire a PhD, or their expertise is not valuable to you
- many of them entered the PhD program because they couldn't get a real job
- they can sometimes be bitter or arrogant
- they lack valuable industrial experience
- they are reluctant to use industry standard tools (C#, java)
I wonder which of these traits are actually overrepresented among PhDs. Also, some commenters point out that some PhDs excel in "getting things done". My personal experience is that PhD gave me lots of valuable experience and built character, and I haven't had any problems to adapt and apply my knowledge in the real world. But that may be a biased perspective.