Is a PhD in Computer Science Worth It?
March 18, 2021
A pioneer! You enjoy conquering and solving important problems that few, if any, have previously considered.
Each year, the Association for Computing Machinery (ACM) confers the AM Turing Award for “contributions of lasting and major technical importance to the computer field." Sometimes referred to as “the Nobel Prize in computing," the Turing Award sets the benchmark for groundbreaking work in the field of computer science. Recent winners include scientists who invented the World Wide Web, advanced cryptography, pioneered practices in database systems, and contributed to the advancement of artificial intelligence.
Not all computer science research is as accomplished or glamorous as the work done by Turing Award winners, admittedly. Those who undertake this research, however, aspire to discover something groundbreaking and significant, innovations that will substantially alter the way computers do their work and, in so doing, change the world. Frequently, that research is pursued through a university PhD program.
Why pursue a PhD in computer science?
If you majored in computer science as an undergraduate, you probably spent a lot of time programming and writing code. You may imagine that a computer science PhD is a lot more of the same. You would be wrong: a PhD program primarily teaches you to be a scientist, not a super-programmer.
What you will learn as a PhD is: how to manage experiments, interpret results, and survive peer review; how to read and evaluate others’ research; how to develop expertise in a field; and how to focus on a very narrow (but hopefully significant) area of computer science. You will spend one to two years in PhD-level courses (with an additional two years earning a master’s, if you do not already have one). Coursework may include classes in algorithms, combinatorics, and optimization; human-computer interaction; software engineering; computational biology; language and information technologies; machine learning; robotics; forensic science; biochemistry; and nanotechnology.
You will then dedicate a substantial amount of time (anywhere from two to six years, typically) to your doctoral dissertation, likely on an extremely specialized subject. What if your field of expertise becomes obsolete? Fortunately, your PhD also trains you to identify emerging fields of interest and to develop expertise through research and experimentation. You will be well positioned to pivot.
By digging deep into your specialization, you will develop an awareness and understanding of the deepest problems confronting computer science today, not only in your field but in all impacted areas. You will enjoy the satisfaction of attacking and perhaps solving important problems that few, if any, have previously considered: you will be on the cutting edge of a very important field. And you will get to do all this in the company of like-minded peers and mentors who are among the few people in the world who will understand your work. If all this sounds appealing, a PhD could be the right choice for you.
Who is a good candidate for a computer science PhD?
Obviously, candidates need an uncommon interest in, and aptitude for, computers, particularly on the highly theoretical level. This is a degree for people who want to solve new problems, not execute old solutions.
There are downsides to pursuing a PhD, and a good candidate for the degree must be comfortable with them. First, the process involves a massive time commitment. While most PhDs take four to six years to complete, more than a few extend beyond a decade’s work. Your dissertation work will likely be in a very specific area, so you’ll need the perseverance to continue when your work inevitably gets boring and the endurance to complete a long and extraordinarily challenging task.
Graduate research requires a great deal of self-discipline. PhD programs are basically unstructured; you’ll be doing most of your work independently, chasing bad leads and extricating yourself from dead ends. A professor of computer science at Carnegie Mellon University warns, “Research can be very rewarding and very frustrating. Most students describe graduate school as a roller-coaster with tremendous highs and tremendous lows." Those who require close guidance will likely struggle.
What can you do with a PhD in computer science?
We generally think of PhDs—in any field—teaching and conducting research at a university, and in fact there are academic positions available to computer science PhDs. The majority wind up elsewhere, however; according to 80000hours.org, only about 30 percent of computer science PhDs wind up working at a university, and fewer than 10 percent ultimately find tenure-track positions.
Thankfully there are other options in business, government, and nongovernmental organizations. Your first step may actually be post-doctoral study, in order to accrue further expertise to bolster your CV. In many instances, research will continue to be an important, if not the sole, focus of your work, but that’s not universally the case: according to the most recent Taulbee Study of computer science degrees, just over half of new PhDs found work in research. Job titles include faculty, research scientist, computer network architect, security architect, data modeler, database administrator, software developer, computer hardware engineer, and computer systems administrator.
The good news is, these jobs are well compensated. The Bureau of Labor Statistics reports the following 2017 median salaries and growth rate between 2016 and 2026 for the following professions:
| Job Title | Median Pay (2017) | Number of Jobs, 2016 | Job Outlook 2016-2026 | | ---------- | ---------- | ---------- | ---------- | | Computer Hardware Engineer | $115,120 | 73,600 | 5% | | Computer and Information Research Scientist | $114,520 | 27,900 | 19% | | Computer Network Architect | $104,650 | 162,700 | 6% | | Software Developers | $103,560 | 1,256,200 | 24% | | Database Administrator | $87,020 | 119,500 | 11% | | Network and Computer Systems Administrator | $81,100 | 391,300 | 6% |
So… is a PhD in computer science worth it?
Let’s consider the arguments against a PhD in computer science. First, there’s all the lost income. Depending on whether you have already earned a master’s, you can spend three to 10 years earning your PhD; that’s 10 years of low stipends and serious debt accrual. Second, there’s the job market. Plum computer science positions on university faculties open rarely, and there’s a lot of competition for them. Your PhD may actually over-qualify you for some jobs in the private sector.
Finally, there’s this warning from Dittach CEO Daniel Gelertner: “University computer science departments are in miserable shape: ten years behind in a field that changes every ten minutes. Computer science departments prepare their students for academic or research careers and spurn jobs that actually pay money."
So why pursue the PhD? Because you love computer science, love doing research, and need to be at the cutting edge of the field. You may also end up with a high-paying job as a result, but if that’s your primary goal, you may want to reconsider your plans. There are lots of easier and more reliable ways to earn a lot of money.
- Applying to PhD Programs in Computer Science, Mor Harchol-Balter, Carnegie Mellon University. Retrieved February 13, 2019
- Computer Research Association 2016 Taulbee Study, May 2017. Retrieved February 13, 2019
- Computer Science PhD, computerscience.org. Retrieved February 13, 2019
- Computer Science PhD, 80,000 hours.org. Retrieved February 13, 2019
- Department of Computer Science, Dartmouth College. Retrieved February 13, 2019
- Occupational Outlook Handbook, Computer and Information Research Scientists, Bureau of Labor Statistics. Retrieved February 13, 2019
- Is a PhD in Computer Science Worth It?, Study.com. Retrieved February 13, 2019
- Is a Science PhD a Waste of Time? Slate, August 21, 2012. Retrieved February 13, 2019
- What Do Computer Science PhD Programs Teach? Forbes, May 31, 2018.