Getting a Computer Science PhD in the USA

    1 Context

      1.1 Are you providing standardized information?

      1.2 Why do you keep using the word “school”? I finished school a long time ago!

      1.3 What’s the difference between a master’s and a PhD?

      1.4 Should I apply for a PhD directly?

      1.5 Do I have to be 22 years old?

      1.6 Do I need to go for a PhD to do research? Can I do it in industry?

    2 Before Applying

      2.1 Will I be funded for a PhD?

      2.2 How long does a PhD take?

      2.3 Is a thesis different from a dissertation?

      2.4 How do I know if I’m ready for a PhD?

      2.5 What is the “Valley model”?

      2.6 How do I find the best professors/programs/…?

      2.7 What areas are currently hot?

      2.8 What do I do if I’m interested in multidisciplinary research?

      2.9 Are there services that will evaluate my application’s chances?

      2.10 Are the expectations different for students with a master’s?

      2.11 Do I need to know what area I’m interested in when applying for the PhD?

      2.12 When should I start thinking about applying?

      2.13 Can I do a computer science PhD with prior degrees in a different subject?

      2.14 Can I do a PhD in computer science if I already have one in something else?

    3 PhD Application

      3.1 What is the timeline?

      3.2 What is the “$300,000 model”?

      3.3 Who reads application folders? Is it the “Graduate School”?

      3.4 Is the GRE important?

      3.5 Does the GPA (grade point average) matter?

      3.6 Does prior research experience matter? What if I haven’t any?

      3.7 How do I think about my letters of recommendation?

      3.8 How does industry experience translate?

      3.9 Should I contact professors and, if so, how?

      3.10 What makes for a good and bad statement of purpose?

      3.11 Should I have a backup school?

      3.12 If I’m asked to interview, how do I prepare for it?

    4 After Admission

      4.1 What are the stages of a PhD program?

      4.2 Should I work with a junior or senior faculty member?

      4.3 Wouldn’t it be awesome to enter with a multi-year fellowship?

      4.4 How can I expand the network of people I know in the field?

      4.5 Who can help if I have problems?

      4.6 Is the PhD really as miserable as people make it out to be on Twitter?

(Thanks to: Amy Ko, Ben Shapiro, Chris Bohn, Florian Tramèr, Geoff Langdale, Gopal Kotecha, Kristin Stephens-Martinez, Michael Ekstrand, Michael Greenberg, mikebonnell, Molly Jane Nicholas, Paolo G. Giarrusso, Pierce Darragh, Sam Tobin-Hochstadt, Sreepathi Pai, Talia Ringer, Thomas Dickerson, Titus Barik.)

If you prefer content in video form, you can watch my video from October 31, 2021. Unlike this document, however, it won’t be updated. I would prefer this document over that video.

The following article is written from a purely personal perspective. As of this writing (in 2021), I have read thousands of application folders and participated heavily in admissions. Still, my opinion is heavily influenced by my own environments, experiences, and beliefs. Therefore, these opinions should not be viewed as universal, nor will following them definitely get you into a PhD program of your choice. My main goal is to fill the gap of information, and dispel the significant misinformation, that hurts applicants.

Two things, in particular, can significantly alter some of these answers.

First, there are (to my mind) three to four major “tiers” of universities. There’s the extremely-competitive tier (places like MIT, Stanford, Berkeley, CMU, and perhaps some others) where nothing short of having an absolutely outstanding application will suffice. There’s the highly-competitive tier (which includes places like Brown) where the majority of applicants do not get admitted, but you can get in by having a strong, but not necessarily absolutely outstanding, application. There are competitive places where being a solid applicant will suffice, and in particular, professors in some areas (those that don’t attract very many good applicants) may be willing to admit students who have notable weaknesses. And finally there are probably some not-very-competitive places where many students can get in. To get into the extremely-competitive tier, it’s somewhat obvious you need an outstanding application. I think there’s much more ambiguity about the next two tiers, so that’s where I’m focusing my answers: especially at the highly-competitive places.

Second, at this time, the AI-related fields (such as machine learning) seem to be absolutely flooded with applicants. I think the simplest way to understand it is that faculty in this area are admitting as if they are at an institution one tier up. (The students from Brown I see going to the extremely-competitive tier in AI-related fields seem to be just “off the charts”.) So in some sense, if you’re applying in those areas, what follows still applies: you just have to perform that shift in your head.

1 Context

1.1 Are you providing standardized information?

There is no standardized information. It’s important to understand that the US system is almost completely decentralized.

There are some common rules imposed by government agencies on aspects like funding and visas. But everything else is delegated to the universities, who in turn may delegate things further to individual departments.

Thus, almost any sufficiently unambiguous statement will cough up several counter-examples. I’m doing my best to abstract; in some cases, I am stating a personal opinion (which I will make clear).

1.2 Why do you keep using the word “school”? I finished school a long time ago!

The great thing about English is that there are so many Englishes to choose from. In many parts of the world, “school” is a place where you (typically) finish your education at age 16 or 18. In America, “school” is any place where you get schooling, i.e., an education. Thus you can have “middle school” but also “trade school” and “graduate school”.

1.3 What’s the difference between a master’s and a PhD?

A master’s degree has a clear end in sight: usually you take about eight courses over a period of one to two years.

A PhD does not have a clear end in sight: you only graduate if you complete and successfully defend a dissertation. More below.

The master’s is typically a professional degree: it’s meant to prepare you to work in industry. Some master’s programs have a research option (or perhaps even a research requirement), but the research here is usually rather modest because the student will not stay indefinitely.

A PhD’s main job is research preparation. That takes a while. The goal is that when you graduate, you have the skills to conceive an execute a research project by yourself.

A master’s is typically not funded (see why: How CS Master’s Funding Works).

1.4 Should I apply for a PhD directly?

In many countries, you are expected to have a master’s before you apply for a PhD. Not so in the USA: you can apply directly out of a bachelor’s degree. However, that assumes a four-year bachelor’s degree (which is the standard in the USA). In some countries the bachelor’s is only three years long. It is not standard to transition from that to a US PhD program; in fact, some institutions may even require you to have finished more than three years of undergraduate study.

That said, even if you have a four-year bachelor’s, some reasons to apply for a master’s first are:
  • You have a weak background in computer science and want more preparation.

  • You aren’t sure whether you will like advanced study, and want to test it out first.

  • You want to get a taste of research. (Make sure you apply to a master’s program that has a research track!)

  • You want to strengthen your application to get into a better program.

These are all good reasons to get a master’s first.

One thing a master’s won’t help with much is reducing time spent in your PhD, unless you stay at the same institution. When you switch institutions the requirements change, you have to forge new relationships, etc. So sometimes, a master’s followed by a PhD elsewhere can take just as long and maybe even longer than a PhD at the latter institution from the beginning. Therefore, make sure you apply for a master’s for the right reason.

One thing to note is that you will usually get a master’s along the way to your PhD, in return for meeting some requirements. Of course, to get this master’s you will have to fill out some routine paperwork. I forgot to, so I didn’t get one…

1.5 Do I have to be 22 years old?

No, you can even be 89 years old.

Some people spend time in industry or doing other things before starting a PhD. Some people may also be “grown up” and start later in life. Of course, if you have a family to support, you have to think about how you can do that on a graduate student stipend (somewhat unlikely; you may need a partner who is better paid).

If you have spent a considerable time away from academia (e.g., a long stint in industry), it’s especially important to follow advice in this document on your statement of purpose, etc. At some point your course grades become less and less meaningful, and other things you have done become a stand-in for what you are capable of doing.

1.6 Do I need to go for a PhD to do research? Can I do it in industry?

Most industrial research is done by people who already have a PhD. It’s not a strict rule, and I know a small number of people in industry who do research without having earned a PhD; but the exceptions almost make the rule.

A PhD program also offers you a unique ability to work on a project for many years without worrying about immediate commercial impact and changing corporate priorities. Furthermore, you aren’t subject to a management structure where political and business decisions that have nothing to do with science can significantly alter or even drop your project. For these reasons, I think a PhD program is effectively unparalleled if you want to truly pursue research.

2 Before Applying

2.1 Will I be funded for a PhD?

Yes, you will. There may be some fine-print about having to be doing reasonably well (you can’t do nothing, goof off completely, and expect to be paid indefinitely), but in summary: yes.

As of this writing (2022), you can expect to make about USD 30,000 (before taxes) for the academic year. This amount can vary across institutions, especially with differences in cost-of-living, which can vary quite a bit between different places. During the summer you may work with your research group, or you may take an industrial internship, or do something else. The details of that are something you work out with your advisor.

The funding can take several forms. Typically, it has names like “fellowship”, “research assistantship” (RA), and “teaching assistantship” (TA). A fellowship usually has fewest strings attached; an RA is usually tied to a specific project or grant; and a TA will require you to do some teaching-related work (helping students, grading, and so on). However, the lines between these are not necessarily very sharp, and sometimes money of one kind may be labeled as money of a different kind. Therefore, be sure to ask and make sure you understand what your obligations are irrespective of what name is being used.

If you are offered an unfunded position, you should not take it.

2.2 How long does a PhD take?

In some countries, there’s a pre-defined bound on the length of a PhD. Not so in the US. Your PhD program will expect you to pass various milestones—courses, exams, research qualifiers, etc.—followed by, of course, a thesis, its dissertation, and its defense.

How long all this takes depends on many things: your background, your topic, your progress, and your luck. It is typical for students to finish in about 6 years. In the US, however, it is quite common for students to enter a PhD program directly after a bachelor’s degree. Students who enter with a master’s can quite likely reduce the time they take, but the total time may still be the same (and may even be a bit longer, if they change institutions).

2.3 Is a thesis different from a dissertation?

Even though people use the terms interchangeably, they really are different terms that refer to two related but distinct concepts. Read and understand Olin Shivers’ Dissertation Advice. Re-read it every few years until you finish your PhD.

2.4 How do I know if I’m ready for a PhD?

I can tell you when you should not apply for a PhD: when the only reason is because you don’t know what else to do. A few years into your PhD, when nothing is working and you feel miserable, you need a strong, affirmative reason for having gone there in the first place: that’s what powers you through the negative moments.

You might go to a PhD program because you have an advisor who says that’s the right path for you. There’s nothing wrong with that; I have several students who have gone directly to a PhD.

But the generic advice I give students is to not go directly to a PhD. Instead, go work in industry (or “industry”: anything that isn’t taking more courses). Get your hands dirty. Get some real experience with the world. This has two advantages.

First, you can earn real money. This is in no way financial advice, but you should think about how you want to factor this in. You may use it to help people (e.g., family) or pay off loans. Or you can just save it. As a computer scientist, you know how exponential functions work; the compound interest formula is an exponential function. If you save for retirement at 22, even if you don’t touch your money for 8 years, it has the potential to quietly compound in the background. And some spare cash can make graduate student life more comfortable.

Second, you’ll know why you are applying. I tell students, Wait until you’re frustrated about something. I don’t mean being frustrated at your boss; then you just need a different boss. But if you are frustrated by something technical,I will use the term “technical” repeatedly. This should be interpreted broadly. It does not mean only, say, related to mathematics or systems. It can just as well be related to humans. It just needs to be the kind of problems that computer science departments solve. now you have your motivation. You know what problem you want to solve. You can start to find papers on it. Papers you previously could not have understood will start to make sense. You’ll start probing the purported solutions. You’ll find who else works in this area. You can see which people are doing work that fits your tastes. And now you have: (a) a clear problem area, (b) concrete motivation for working on it, (c) a sense of what kind of solution will and won’t work in the original domain, (d) a list of people to apply to, and (e) a great outline of your statement of purpose.

Let’s say you never get frustrated. That means you’re well-paid and happy. Over 95% of humanity does not reach this state. Revel in it. Skip the PhD.

If you do apply for a PhD program after time spent in industry, look into the US National Science Foundation’s CSGrad4US program (if you are eligible).

2.5 What is the “Valley model”?

When I was a new international student, my foreign student advisor (Ann Quillen) talked to us about the phenomenon of “homesickness”. Right now, she said, you all feel euphoric about your new setting and think it won’t happen to you. Then she drew the following graph:

Her point was that every student goes through a similar swing. They start out euphoric; then reality sets in; then, when things get hard, they start to miss home. But then they eventually work things out, recover, and return to some state well above the trough; whether it’s at the same level as that initial euphoria, lower, or even higher, depends on the student. And of course this cycle could repeat.

That picture always stayed in my mind, especially when I found that it neatly matched my own experiences. (“Around October”, she had said, the decline would begin, and it did. Was it causal? I don’t think so.)

Many years later, I realized, something similar happens in a PhD program as well. You start out euphoric: new program, new people, new-found freedom, a stipend, and so on. Then you get into the rut of courses and projects, and the initial buzz wears off. Then your papers start getting rejected. First it seems program committees don’t care; then that other professors in your department don’t care; then even your advisor; and finally maybe even you.

When you reach this nadir, it’s essential to know why you came to the PhD program in the first place. If you came because it was the default option, this is the point where you decide to leave—except, perhaps, after having squandered a few years of your life. If, on the other hand, you have a clear sense of what you’re trying to accomplish, you can power through this phase. You realize that the problem is not with you but with the world not being able to appreciate what you do, and you redouble your efforts—improving your research, writing, and organization to help them see what you already see. And eventually they do. My guess is that most successful PhD students go through this curve.

2.6 How do I find the best professors/programs/…?

This is the wrong question. Instead, I will give you a surefire way to figure out whom you should apply to.

First, how do you find the people who are doing things that are interesting to you? For that, you crack open conference proceedings. These days you can find just about all (especially recent) publications online, and very often you can get a free copy from an unofficial site. Read lots of papers. See which ones interest you. Of course, make sure what they are doing now still interests you, and check on where they even are today!

(You might wonder which proceedings to crack open. There are lots and lots of bad conferences out there. One simple litmus test is to see the institutional affiliation of the people publishing those papers. Are they from places you aspire to be at? If not, then you may have opened a poor-quality venue, perhaps even a predatory one. Close it, step away, and move on.)

You may, of course, be quite unable to read the technical heart of the paper. But you should be able to read and make some sense of the abstract and introduction. You should also see whether the kind of technical detail the paper has—which you may not understand—is the sort of work you might one day want to do. For instance, if the heart of the paper is about control theory, but you’d rather do purely experimental measurement, or vice versa, then this paper isn’t a good fit for your plans.

Then, once you’ve narrowed down a list of papers, look at who wrote them. Find the professors. Also locate the students, who may now themselves be junior professors.

These are the people you want to apply to.

You can, if you wish, “rank” them by whatever other criterion you want to use (location, prestige of the university, two-body constraints, etc.). How you do that is up to you. But this is the set you want to work from.

Yes, all of this takes a lot of work. But this is the rest of your life we’re talking about. If you’d rather delegate all the work to a rankings site, you’re welcome to, but don’t say you weren’t warned.

2.7 What areas are currently hot?

“Hot” things in computer science—hot areas, hot programming languages, hot platforms, etc.—rarely stay hot for more than five to seven years. This is almost exactly the duration of a PhD program. So if you pursue what is hot right now, you’re almost guaranteed that it will be at best lukewarm—or, cold, or boring, or yawn-inducing—when you graduate.

If you still want to pursue what’s hot, go ahead! You’ll have to find an answer to your question elsewhere.

2.8 What do I do if I’m interested in multidisciplinary research?

It depends on the institution and the particular multidisciplinary perspective.

Given whatever your perspective is, see whether there is an entity at each university of interest that focuses on it. You may find a “Center for” or “Program in” or something of that sort. Sometimes these will admit students directly; quite often they will have a collection of affiliated departments and you will be expected to meet the admissions and PhD process of one of those departments.

The details vary significantly, and there is no shortcut to studying the counterparts at each institution. The advantage to this diversity is that each place is free to have its own program, and will have differences (some big, some subtle) that reflect that institution’s view of the field you’re interested in. You may find some of these programs are much more to your liking than others.

2.9 Are there services that will evaluate my application’s chances?

There may very well be; the question is whether they are any good. I would not trust standard applicant evaluation services. Even if they are good at evaluating undergraduate applications (which is itself a big “if”), they are very unlikely to have the expertise to evaluate graduate applications. If they claim they do, ask them how they are able to anticipate how research university professors would read a dossier.

Even if they can perform a preliminary evaluation, they are unlikely to know about the spatial and temporal peculiarities of particular departments: What kind of applicant does this department like? What is the funding situation like this year? Things like that.

2.10 Are the expectations different for students with a master’s?

Somewhat. Often, applicants may have a bachelor’s degree from a more obscure (to the reader) institution and a master’s from a less obscure one. The performance in the master’s then gives the reader a better sense of quality. In addition, the letters writers may be better known, and may hence be more trust-worthy. Finally, if the applicant did some research during the master’s, then what the research advisors say will matter a lot.

2.11 Do I need to know what area I’m interested in when applying for the PhD?

At many institutions, it really helps. Unless you are somehow an extraordinary generalist, many programs would prefer to see applicants who have at least some idea of what they want to do. If you have no idea about areas, one can also wonder whether you really are ready for a PhD yet. (That’s not entirely fair, but some people might wonder that anyway.)

Of course, you will hopefully be exposed to whole new areas during your PhD, and may find yourself migrating to them. But it still helps to have some clear direction to give your statement of purpose some real purpose. And in many departments, you probably won’t get admitted at all without a clear area.

2.12 When should I start thinking about applying?

Suppose you want to start your PhD in year Y. Then applications will be due late in the year Y - 1.

You should start preparing your application a lot sooner. You should work on your statements starting in the summer of Y - 1. If the universities you are applying to require you to take a standardized test, you’ll need to prepare for that and also set up the logistics of taking it.

You will need recommendation letter writers. Don’t spring requests on them at the last minute—if they do a poor job, the person who loses is not them but you. If you think they might need it and will be responsive to it, consider pointing them to Graduate School Recommendations Advice. Here is the kind of information that I find useful from my students: Recommendation Letter from Me.

You will also have to arrange for the institution to receive other materials, such as your grade transcripts. That may take some time, especially if it requires translation.

2.13 Can I do a computer science PhD with prior degrees in a different subject?

Quite possibly. It depends on a few things:
  • How close your previous degree was to computer science.

  • What you plan to study. The previous degree may actually help you: e.g., if you want to do computational biology and your previous degree is in biology, that can be to your advantage.

  • Whether you demonstrate the ability to do basic computer science. In particular, PhD programs often have coursework and distribution requirements; if you are not going to pass those, that would be problematic. One way you can demonstrate your ability, if you did not take computing courses in your prior degree, is through informal venues such as projects and MOOCs.

2.14 Can I do a PhD in computer science if I already have one in something else?

Quite likely. Some institutions may have rules against a second PhD, so double-check. But many people have done this.

3 PhD Application

3.1 What is the timeline?

There’s a fairly typical timeline for applications:
  • The application deadline will most probably be sometime in the month of December, but some places may have earlier or later deadlines. There is no firm agreement on this, so you need to check each place you are interested in separately.

  • Folders will be read soon after they come in. This means incomplete folders will be at a disadvantage. At institutions with lots of applicants, people may not have time to go back and read a folder several times as each piece comes in. This means you have to make sure your letter writers were informed well enough in advance so that they got their letters in before the deadline!

  • Decisions are usually made in late-January or February. It’s rare for decisions to be announced later than February, but you can expect them to come out at various points during that month.

  • Many institutions have only one round of decisions, but there are cases where there might be a waitlist. However, these seem to be rare.

  • With your admission, you will be given information about financial aid and also be invited to learn more about the department. Often you will be given an offer to fly out to visit (you should be reimbursed at least partially, with the expectation that you combine visits to multiple universities and the collective reimbursement covers all your costs).

  • Usually, when you’re invited to visit, you have already been admitted. Sometimes, you be asked over for an interview instead. Make sure you know which it is; if in doubt, ask! But even if you’ve been admitted, remember that you’re making the first acquaintance with the person who may be your PhD advisor, a relationship for life. Approach it professionally. And remember, now the shoe’s on the other foot: they are trying to convince you to come there!

  • You will be asked to respond by April 15. This is a standard date that has been pledged by all major universities. You should not be pressured by anyone to accept before that date.

  • Once you have accepted an offer from one institution, decline the offers from the others. Don’t try to play games. It rarely ends well.

3.2 What is the “$300,000 model”?

A common mistake applicants make is to ask a potential advisor, “Will you accept me?”, or “Can you fund me?” Here’s why these are not good questions.

I tell students to follow the “$300,000 model”. That is, when you approach a potential advisor about being an advisee, what they see is not only a human being; they also see, floating above that person, a number like this:

$300,000 is’s roughly what it takes to fund one PhD student for about 5 years. (You don’t get all of it, though!) So you’re asking them whether they are willing to raise that much money. You are also asking whether they’re willing to undergo the opportunity cost of having taken you instead of some other student for that duration.

Now, it is extremely easy to read this the wrong way, especially if you are a little low in confidence for any reason. Do not read this as “Am I worth $300,000?” Rather, read it as, “How do I demonstrate that I am worth $300,000?” You do not have to have a perfect response. You just need to be aware of what may go through an advisor’s mind, and craft your approach accordingly.

Most of all, do not read this and talk yourself out of applying! Too often I see people make decisions that it’s others’ job to make. Deciding whether or not to admit you is the job of the PhD admissions committee, not yours! You do your job (apply well); let them do their job. Don’t do their job for them.

3.3 Who reads application folders? Is it the “Graduate School”?

The reality is this. Technically, you are admitted by some formal entity like a Graduate School. However, your admissions decisions are actually made by professors in the department. That is, your folder is usually read by professors who will eventually work with you, not entities abstracted from the day-to-day execution of research. This plays into how you write: you are not writing for administrators, you are communicating directly with your intended advisors and people like them.

Within a department, responsibility is usually divided between an admissions committee and individual faculty members. The details vary a lot between institutions and over time. However, in general, the committee is responsible for general oversight, maintaining standards across the board, managing the number of admits relative to funding, etc. But very often, individual faculty members or groups will make decisions about “their” applicants (though this is not universally true). Those who don’t fall to any particular group or groups will likely be decided on by the admissions committee.

3.4 Is the GRE important?

Universities are increasingly de-emphasizing standardized testing scores like the GRE. Therefore, this question is increasingly moot.

My personal view is that for some students, the GRE cannot help, only hurt; for others, it can help.

If you come with a prior record that we can “understand” (e.g., we recognize the institution, understand its grading standards, etc.), then we already have a ton of information about you. If your grades are poor, one GRE score is not going to reverse that. If your grades are good, a good GRE gives us no new information, while a poor GRE only casts some doubt. So there’s no real point to taking the GRE.

If you come from an unrecognized environment, then we have no calibration for how good you are. The value of a standardized test is that it gives us some calibration. Thus, a good GRE performance can help you (slightly). It’s unlikely on its own to make the difference between admission and rejection, but if you are close to the line and people want reassurance, it can provide them that reassurance.

3.5 Does the GPA (grade point average) matter?

What do you think?

Of course it matters…for the most part.

Your GPA gives us several useful cues. It tells us that you are competent at the relevant disciplines. It tells us that you can do steady work. It tells us that you’ve picked up various skills. A poor GPA can suggest that one or more of these is not true.

However, there are five caveats.

First, we are primarily interested in your grades in relevant courses. If you do well at math and poorly at underwater basket weaving, unless the latter is deeply relevant to your specific academic interest, we don’t care. In that sense we’re more interested in your subject/major GPA than overall GPA, though if you do poorly at all writing-related courses, some professors (like me) would be worried, because ultimately you have to do a fair bit of (paper) writing as a PhD student.

Second, we are interested in your trend. If you start out poorly, then hit your high gear, and end on a high note in your last year or two, that’s great, and that can forgive a lot of poor early grades. If you do the opposite, that’s really worrisome.

Third, we’ve all screwed up now and then. (Please don’t ask me about that semester…) A glitch here and there is unlikely to be a big deal. It’s more worrisome if you flubbed courses that are directly tied to the very thing you seem to be passionate about working on, less so otherwise.

Fourth, we can all suffer from some mishaps. You may have had an illness, had a family member with an illness, had to support someone, etc.

Finally, you may be someone who’s just not very good with the conventional academic system but are actually an outstanding researcher.

Especially in the latter categories, your application needs some explanation: what’s on paper is not the whole story. There are three main sources of explanation.

The first is yourself. You can tell us about it in your statement of purpose. The second is your letter-writers. Especially in the last (“tortured genius”) category, they can tell us to disregard your grades by marshaling other evidence about you. The third is your accomplishments: you may have built projects that better showcase your abilities than your coursework does. These you can document through a dossier and a reference in your statement of purpose.

3.6 Does prior research experience matter? What if I haven’t any?

Yes, it can. The more competitive the university, the more it can matter.

In principle, a PhD program exists to teach you how to do research. But if a professor can get a student who already has some experience doing it, wouldn’t (all else being equal) they prefer such a student? Any skill they can get you with some prior preparation on is a skill they can spend that much less time teaching you, letting you progress farther and deeper.

However, the worst thing you can do in response to this is to rush to “publish a paper”. There are far too many predatory publishers who will gladly let you have “a paper” in return for some money. These papers are not worth the bits they are stored on. They won’t fool any admissions committee. You won’t get in just by publishing at a bunch of no-name conferences: there’s no algorithmic filter that you’re fooling. You’re just wasting your time, enriching scoundrels, and deluding yourself (as you will find out a few months later, when the rejections arrive). Do not fall for this.

If you can get a “real” paper—i.e., a non-trivial result at a serious, peer-reviewed venue—that definitely helps. (How do you know it’s a serious venue? Easy, see who else is publishing at it. Do the other authors seem more like the professors you are applying to or more like applicants like yourself? You want the former, not the latter.) But two things to note:
  1. Publishing as an undergraduate is very hard. You may not have the subject background, you may not know the research methods, and you probably don’t know how to present it even if you get past the other two obstacles. Simply writing up something and sending it to a prestigious venue wastes everyone’s time. Most undergraduates, if they publish major results at all, do so working closely with faculty, PhD students, and post-docs who already know the ropes.

  2. Simply being “published”, even at a legitimate venue, may not mean much. What a professor will want to know is what your role was. Were you an intellectual leader? Or did you simply write some scripts? There is absolutely nothing at all wrong with the latter, but it makes your “publication” count less from the perspective of judging your research abilities.

So, we come to the crux: most undergraduates will not have a meaningful research publication. What else can you do to demonstrate your skill?

Well, ask yourself: what can you do? Perhaps you can create a blog of the papers you have read with good summaries of each paper. Perhaps you can reimplement an algorithm from an interesting paper and benchmark it. Perhaps you can create a neat project that showcases your abilities. Perhaps you can generate interesting follow-up questions on a paper that intrigued you. Perhaps you can even prototype some follow-ups and see where they lead. Perhaps you can complete some MOOCs on subjects you were missing.

In the end, the more competitive the place, the more professors are looking for students to have some “fire in the belly”. A student who simply did well in all their courses but took no further initiative often suggests that they are good at following rules, but may not become a leader. Are you just a rule-follower or do you have a burning passion to advance the field? Demonstrate that passion in a technical way!

3.7 How do I think about my letters of recommendation?

The most important thing to understand is that, collectively, your letters have to tell a story about you. Therefore, think about the different facets you want to highlight and find people who can address each one.

Your letters do not all have to come from professors. Letters from others can also be very useful, and a quality non-professor letter can be much more useful than a perfunctory one from a professor. Others usually includes post-docs you may have done research with or bosses in industry. This comes back to documenting your facets.

Normally, we care about your technical facets, not (for instance) about your volunteer work. However, it depends on what you’re applying for. if you want to do research in villages in the developing world, then time you spent with a non-profit actually making a difference in villages is much more useful than a routine professor letter.

Unfortunately, many people (professors included, but especially non-professors) do not know how to write very good letters. This is true of younger researchers (like post-docs), people in industry (where a letter serves a very different purpose), people in non-profits (ditto), etc. Therefore, if you can, please try to have your letter-writers read Graduate School Recommendations Advice.

Finally, don’t worry if not all of your letter-writers can write about you in depth. We understand that you may not be able to make three deep contacts, especially at large institutions. The more the better, but a primary letter that will talk about you in depth, along with supporting letters, is fine. This is why it’s important to think about the collective story, not focus on each letter independently.

3.8 How does industry experience translate?

Industry experience is virtually never bad. At worst, it’s neutral (unless you did something horrible). Often, it’s a tiny boost: it suggests you have some skills (working with large systems, working in teams, being organized, etc.) that many students coming directly out of an undergrad degree don’t have. Sometimes, it can be a big boost, if your industrial work is directly tied to your application goals. It is then especially important to highlight your industrial work in your statement of purpose.

3.9 Should I contact professors and, if so, how?

Ah yes, a vexing question.

In the grand sum of things, contacting professors will largely make no difference. It can help a little, and it can hurt a little. Professors are busy, and they want to spend their time on the students already at their university. For some professors, if they were to reply to every inquiry, that’s literally all they would do all day, and they wouldn’t be able to do their job. Think of it this way: if you were someone’s PhD student, would you want them spending time on you or on applicants? So don’t get offended if you don’t hear back. Email overload is a real thing.

Why can contacting be helpful? If you get on a professor’s radar—which is a big “if”!—it can save your application from being “lost” in the system. Especially if you have something exciting to offer, you can have the professor pursuing you rather than you pursuing them! This does happen, which is why I would encourage students who have something interesting to say to take a shot at writing.

However, make sure you have something of value to say. Keep in mind the $300,000 model. Keep it short. Be concrete. Don’t tack on lazy questions at the end that you think make you sound inquisitive but are actually really vague and will take a long time to respond to. It’s exciting when someone has clearly read your work and asks hard, probing questions; but if all you do is ask perfunctory questions, you’ll give the impression of either not being able to read the papers or not caring to, and neither is going to elevate you.

In particular: if your message looks like a form letter, it will be ignored. And believe me, professors have gotten very good at spotting (what they think are) form letters. Your one or two lines of customization, using text copied from the Web, won’t fool them. And anyway, it doesn’t matter whether or not they were right: if it looks like a form letter to them, you have failed to meet your objective.

Finally, see whether the professor provides instructions on the Web about contacting them. If they do, follow the instructions! If you don’t, you will certainly not help, and may hurt, your application. Some professors, for instance, have email filters aligned with their instructions, so even how your email is routed depends on whether you followed the instructions.

Ultimately, the extent to which writing can help depends to some extent on two factors: one is the visibility (often aligned with seniority) of the professor and the other is the tier of the institution. The better-known the professor and institution, the more high-quality applicants they have, and the less they need to look for students. (But even renowned professors at very competitive institutions don’t want to miss out on an exceptional applicant!) The less either one is true, the more likely they are to be open to students contacting them. At less competitive places, professors probably get fewer inquiries and student quality may be weaker, so they may be much more interested in hearing from applicants. But keep in mind they too are busy and have lots of email, so the same general principles apply.

It is also perfectly fine to not contact any professors. In principle, just applying should suffice. However, (a) check their page: if they want you to contact them, then you definitely should; (b) the one place it does help, as noted above, is to make sure your application is brought to their attention if there’s a particularly good reason for that.

3.10 What makes for a good and bad statement of purpose?

Who’s reading your folder? Your potential PhD advisor and people like them. So you are writing for a technical audience. They are also busy, reading lots of folders and trying to triage which ones need more attention. Apply the one minute test: if a person spent one minute reading my statement, would they feel intrigued enough to keep reading?

It’s easy to say what you should not do. Here are several tips:
  • Don’t start off with a story about how you got your first computer when you were five. They don’t care. If anything, many of them most certainly did not, so you had a huge head start on them; they would then expect to see you have done a lot more than they did when they applied to graduate school!

  • Don’t tell them about your family’s devotion to education and so forth. It doesn’t matter. If your family are devoted, that’s great. If they are not, kudos to you for aspiring for an education anyway. But either way, it doesn’t help people determine whether you should be admitted.

  • Avoid buzz-words and trendy marketing-speak. You aren’t trying to sell them a database or cloud service. You’re trying to convince them you have enough technical depth to do a PhD.

  • Don’t italicize and bold-face every buzz-word and trendy marketing-speak. It makes the previous problem much worse.

  • Don’t tell them how wonderful their institution or location is. They know! That’s why you’re applying there. But that’s also why lots of other people are applying there. You want to convince them to admit you over the others.

  • Don’t spend a lot of space on personal tales of woe. They do want to understand you the person. But within limits.

Okay, with that out of the way: what should you do?

Open with a clear statement of your interest.

Tell them about relevant background. If you have a mix of academic and non-academic background, summarize both. If you think they wouldn’t have heard of your institution, tell them a bit about it (e.g., does it have any designation of merit in your country?).

Tell them about moments of epiphany. What in computer science sparked joy in you? Why? And what did you do about it?

If you have prior research or project experience (whether published or not), tell them about it. Anything that is interesting, difficult, and compelling can fit here. Focus on what you contributed to it. If it was done under someone’s supervision, they would expect to see a letter from the person who supervised it, and hopefully the letter confirms what you claim—it’s always a bit worrisome when the applicant has a vastly inflated sense of what they did than the supervisor does. But independent projects are also fine, and indeed can be evidence of a real spark!

Most of all, tell them why you’re applying to them and what you want to do there. State your purpose. This is where you describe faculty who you find interesting; tell them why they interest you. The more depth you can provide here, the better. If it looks like you just looked at the Web page and picked off everyone in an area, that is not very persuasive; if you can say something of substance, that makes clear you have actually bothered to understand a person’s work, you are much more likely to get their attention.

Finally, if you have any mitigating issues, you can mention them briefly. For instance, if you had an illness that hurt your performance in one semester, you can tell the reader that. You don’t have to reveal private details; also, keep this portion relatively short. People want to give you a fair chance, but they don’t need to read an entire saga.

3.11 Should I have a backup school?

What’s your goal? If your goal is to get into some PhD program, you may very well be able to. That’s not a very good goal. If your goal is learning, then the notion of a “backup” doesn’t quite make sense. Of course, once you’ve identified professors of interest, they may well be at universities at different levels of competitiveness, and the less competitive ones may feel like a “backup”. Not only is that not a “backup” in the generic sense, you may also be surprised after visiting all the places you get into to find that the “backup” is actually the most pleasant of the lot, and where you want to go!

3.12 If I’m asked to interview, how do I prepare for it?

Interviews don’t seem to be common, but they also aren’t unprecedented. They may be more or less formal: a set of structured questions, or just a call from a professor wanting to chat with you (before they make a final decision).

The reasons to interview could be manifold. They may want to learn more about things that weren’t covered in your application. They may be confirming things you did cover in your application. They may have a specific question about a particular project you did or a skill they want to confirm you have. Or they may just want to confirm that you are indeed as amazing as you seem on paper!

The two things you can do to prepare are:
  1. Remind yourself of what the professor does. If indeed it’s a true interview, coming across as unprepared will not help.

  2. Remind yourself of what you wrote in your application. Sometimes applicants literally just forget what they said: they may have read something recently and been excited about it and said it in their statement, and then forgotten all about it. Your caller should not know more about your application (excepting, of course, the confidential parts, like recommendations) than you!

It goes without saying that if you have been given instructions by the interviewer (e.g., to read some material), make sure you follow them!

4 After Admission

4.1 What are the stages of a PhD program?

Every institution is somewhat different. Once you’re admitted to a program, you can learn more from them directly.

4.2 Should I work with a junior or senior faculty member?

There’s no single good answer to this. Stereotypically, junior faculty may spend more time with you and have more cycles to devote to you; senior faculty may be a little less hungry for success and may have more demands on their time. Which you prefer is up to you. Of course, junior faculty have less job stability; but senior faculty also move voluntarily, so you shouldn’t assume that a person will forever be at the same place. Usually, when people move, they and the current and new departments will work to make arrangements for students.

Ultimately, what matters is not whether a person is junior or senior; it’s the person themself. Ignore superficial markers and stereotypes. Get to know the person.

4.3 Wouldn’t it be awesome to enter with a multi-year fellowship?

Yes…and no.

Let’s say you win a fellowship such as the US National Science Foundation’s Graduate Research Fellowship. This gives you three years of funding. That relieves your advisor of having to find that amount of funding for you. The $300,000 sign vanishes. All good, right?

Yes, it’s good, in three ways. First, there is usually some prestige associated with such fellowships. Second, it may make you attractive to more advisors (in particular, ones who are currently in a funding trough). Third, your advisor can spend more time advising you and less time raising money for you.

However, it comes with a peculiar danger. This is that your advisor may stop thinking about you as much as if they were seeing you on their accounting ledgers all the time. This may enable you to “float” for a while. And then, when your funding runs out, they might look up and realize they have no idea what you have done and have not raised funds for the rest of your program.

Therefore, if you have one of these fellowships, it’s in your interests to keep your advisor just as focused on you as they are on students they are paying for. Also, a healthy period—say a year—before your fellowship expires, make sure you remind your advisor about that. They need to start preparing to fund you out of their own money when that period ends. It’s in your interest to make sure they are kept aware of this. If they have questions about what you have accomplished, better to resolve them a year ahead of time than at the last minute!

4.4 How can I expand the network of people I know in the field?

There are numerous ways to build up your professional network. In a field that I know well, programming languages, here are at least four good ways:
  • Regional conferences like NJPLS and NEPLS. They are very cheap to attend and you’ll form friendships with fellow students at other institutions. Then, when you all attend a major conference for the first time, you won’t know nobody in the room; you’ll at least have each other for moral support!

  • The SIGPLAN-Mentoring program.

  • The Programming Languages Mentoring Workshop.

  • The PLTea student group.

  • Doctoral symposia.

and quite possibly many more. Find similar events in your area.

4.5 Who can help if I have problems?

If it’s internal to your department, you are best off finding support within the university. There are whole support structures available at US universities.

If you have an unfortunate incident at a conference, look to see whether your community has a CARES group, which now exist for many areas. People in CARES can help you navigate the ropes. Technically CARES groups are run by ACM SIGs, so they can be of only limited help at non-ACM events, but CARES members are senior and know a lot of people in the community, so let them try to help you.

4.6 Is the PhD really as miserable as people make it out to be on Twitter?

Not at all. Social media are highly performative. They are also not a representative cross-section of life.

Are there issues with PhD programs? Sure. Are all of them getting the attention they deserve? Probably not. But there are also lots of well-run programs, happy students, and professors and institutions who are doing their best (with various constraints, not always visible on the outside) to run things well and make things better. Don’t let social media destroy your optimism and joy about further learning.