Below is the culmination of information that I received from various Professors when I was trying to write my statement of purpose. Like this entire process, for every piece of advice I received someone else has an equally valid, but opposite, piece of advice. The content of this post contain only what I found useful for me and should be taken with a grain of salt.

This post is part of my series on getting into CS PhD programs from the perspective of a current (AY: 2020-2021) college senior. You can find the master post here.

Statement of Purpose (SOP) Overview

I view the SOP as three questions you’re trying to answer for the admissions committee:

  • Why am I doing this?
  • What have I already done?
  • Who at school X do I want to work with?

The length of these essays should be between 1-2 pages. Anything longer than two pages no one will read. Let’s break down each of these questions:

Why am I doing this?

It’s important for you to get across why you want a PhD. What you don’t want is to look like someone who likes school, doesn’t know what to do with their life and so they go and get a PhD. Undertaking a CS PhD is (typically) a 4-6 year commitment. You should have a good reason for doing it and and idea of what you want to get out of it in the long run and short run.

What have I already done?

This is the most important section. During your PhD you will be spending most of your time working independently on long term open ended research projects. Thus, you want to demonstrate that you have done that, done that successfully, and have enjoyed it–because at its core this is what you’ll be doing for your PhD.

Additionally, this section is where you demonstrate that you can write well for technical topics. If you can signal to a potential advisor that you don’t need extensive coaching to write a technical paper this is a big plus (i.e., write in a way which shows that it won’t take much hands on work for the advisor to edit or have to teach you how to write technical material clearly for an audience). In short, you want to come across as someone who a PhD advisor can see themselves authoring papers with.

Who at $SCHOOL do I want to work with?

This section is a bit of a balancing act. On the on hand, You don’t want to identify one sole professor because:

  • That sole professor may not be taking students this year.
  • That professor’s lab may be moving in a different direction and what you’re interested in doesn’t line up.
  • This tactic shows that you’re inflexible and signals that your application should be rejected if that sole professor doesn’t want you because you gave the application committee no other reason to come to their school.

On the other hand, you also don’t want to say “I’ll work with anyone. I’m just happy to be here” because:

  • This shows that you haven’t thought about what you want to do in grad school.
  • Or, this shows that you haven’t done your research on the school and have failed to answer the question who *at this school* do you want to work with.

Now that I’ve laid out what you shouldn’t do, here is what you should do: Identify a few people in their program that you want to work with that would be good matches for you. Now the application will be routed to the professors you mentioned in your application and, if one of them latches on to your application, you have a greater chance of someone advocating for you.1

Q: How Many Professors Should I Identify?

Many professors only take one or two new students each application cycle so identifying more professors – like three or four instead of one or two – is better. However, quality over quantity should take precedence. You should have good, narratively cogent, reasons for working with a given faculty member.

Reduce, Reuse, Recycle

Once you’ve written your SOP a good chunk of it – the why am I doing this? and what have I already done? sections – can be reused on the SOP for the next school. Thus, reducing the amount of work that you need to do.

A word of cation, however, be sure that your recycled content is narratively consistent with why you want to go to $SCHOOL and who at $SCHOOL you want to work with. If your why am I doing this? and what have I already done? sections are focused on your interests in OS, yet you’re applying at $SCHOOL to work on PL problems then you can’t wholesale reuse what you’ve written before because the two parts don’t line up.

  1. Note: this isn’t true of all programs