Getting a Computer Science PhD in the USA
(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. 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). 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”. 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). 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. 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. 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… 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. 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. 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. 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— 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). 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. 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). 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— 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— 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. “Hot” things in computer science— If you still want to pursue what’s hot, go ahead! You’ll have to find an answer
to your question elsewhere. 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. 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. 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. 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. 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— 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. 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. Quite likely. Some institutions may have rules against a second PhD, so
double-check. But many people have done this. 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. 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. 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. 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. 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. 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. 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. 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! 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. 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. 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? 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— 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. A portfolio is a range of products. When you apply to an arts program,
for instance, you are often required to submit an impression of
various artwork you have created, to give people an impression of what
you’re capable of. Computer science students, especially PhD applicants, don’t realize
this, but we too (can) have portfolios. Significant course projects. Research projects. Independent projects that you created not because anyone asked
or paid you to, but because you were excited about something. Performance in courses outside conventional education, whether
summer schools or MOOCs or other opportunities. This is a hard question without a good answer. I’m afraid I don’t have
great news here. The thing to understand is that ultimately, the PhD admissions process
is a process of trust. We get grades, letters, and other artifacts,
and we have to know how to evaluate them. If we’ve never heard of your
university, or don’t know the standards of your professors, it’s very
hard to evaluate what they are saying. All transcripts have courses
with similar names, but the same course could be much easier at
one university and much harder at another. When a professor signs off
a letter saying “You would be making a mistake to not accept this
student”, it means much more coming from a peer whose standards we
know to be very similar to our own than from someone whose standards
we can’t judge. Therefore, if you start out with these disadvantages, you likely need
to moderate your reach. You can’t expect extremely competitive
universities, with lots of very strong applicants, to spend much time
over your application. You are probably best off lowering your sights,
perhaps going to a less strong place initially, impressing, and
working your way up. There are many stages on the professional ladder:
master’s, PhD, possibly post-doc, maybe even faculty position
(depending on your plans). If being at very competitive places is what
matters to you (and there’s no reason it should!), you have the
potential to go to progressively more competitive places at each
stage. Of course, there are things you can do to try to counteract your
weakness. Assemble the best portfolio you can! It may give you a
longer look (and perhaps even success) at a much more competitive
department, and it may be the thing that gets you into a less
competitive one. 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— 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. 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! 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! Remind yourself of what the professor does. If indeed it’s a true
interview, coming across as unprepared will not help. 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! Every institution is somewhat different. Once you’re admitted to a program, you
can learn more from them directly. 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. 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— 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. 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. 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.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 What makes for a good and bad statement of purpose?
3.10 What is a “portfolio”?
3.11 What if my prior education isn’t from a well-known university?
3.12 Should I contact professors and, if so, how?
3.13 Should I have a backup school?
3.14 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?