Computer Science PhD
This page contains all notes on Computer Science PhD's over and above what we put in our career profile. Read the profile first, here.
Contents
Profile type
Exploratory
What is this career path?
What are the people like?
Personal fit
Entry requirements.
Who should especially consider this?
"The answer to that depends on two questions? Do you need one? Do you want one? You need a PhD if you want to go into academia. If you find the process of getting a PhD unenjoyable, that is a strong sign that you are not cut out to be in academia. If a PhD makes you hunger for more, then you are."[1]
"What it boils down to is that this is one of the most intense questions of self-knowledge you will ever face. The answer is simple: you should do a PhD if you really want to. Look into yourself to figure out if you really want to. ... This is what I like to call a clamped decision. If you are not fully convinced that the answer is “yes”, then the answer is “no.”"[2]
What does it take to progress?
Barriers
Career capital
Knowledge and skills
"However, I am really glad I got my PhD rather than just getting a job after finishing my Bachelor's. The number one reason is that I learned a hell of a lot doing the PhD, and most of the things I learned I would never get exposed to in a typical software engineering job. The process of doing a PhD trains you to do research: to read research papers, to run experiments, to write papers, to give talks. It also teaches you how to figure out what problem needs to be solved. You gain a very sophisticated technical background doing the PhD, and having your work subject to the intense scrutiny of the academic peer-review process -- not to mention your thesis committee."[3]
Will it help you if you want to do software engineering after?
"I do think that doing a PhD is useful for software engineers, especially those that are inclined to be technical leaders. There are many things you can only learn "on the job," but doing a PhD, and having to build your own compiler, or design a new operating system, or prove a complex distributed algorithm from scratch is going to give you a much deeper understanding of complex Computer Science topics than following coding examples on StackOverflow." [4]
Common exits
"There used to be certain positions in industry, especially in R&D, that absolutely needed people with PhDs. That has been steadily eroding over the years, and while a PhD is certainly a plus, its necessity has been watered down significantly. Even if you do not formally have a PhD but can make an impact and prove yourself in an industrial research setting, you can perform the exact same job as someone with a PhD."[5]
Culture
Exploration value
Role impact
Direct impact potential
Earnings potential
"But as my PhD advisor was fond of saying, "doing a PhD costs you a house." (In terms of the lost salary during the PhD years - these days it's probably more like several houses.)"[6]
Advocacy potential
Job satisfaction
Alternatives
Software engineering
Past experience
Take action
Learn more
Next steps
Best resources
Remaining issues
Research process
Sources
So, you want to go to grad school?