MathJax

Sunday, 18 September 2022

Applying to top Masters programs in Computer Science (MSCS)

Hi everyone,

Today I'm presenting a short guide to putting together an application for the top MS programs in Computer Science! This will be a lengthy post, so feel free to jump to the sections you are most interested in. I've tried to keep this blog post to contain general tips as far as possible, but it might be helpful to note that this is from the perspective of an Indian student applying abroad.

 Without further ado, let's get into it!

The opinions expressed below (this blog post will be full of them) are solely my own. They do not represent the views or opinions of any organizations or institutions I work for or with.

Sections

  • Materials to be submitted
  • Timeline
  • GRE/TOEFL - How to go about it?
  • Letters of Recommendation
  • Statement of Purpose
  • Resume
  • Selecting universities
  • Other miscellaneous tips
  • References
Materials to be submitted

For MS applications, usually the following materials need to be submitted:
  1. GRE/TOEFL scores
  2. Letters of Recommendation
  3. Statement of Purpose/Personal Statement
  4. Resume/CV
Timeline

If you are applying for admission in the Fall (August/September), programs usually have deadlines starting December 1 of the previous year. Therefore you should plan to finish everything by the beginning of November, so you have enough time to review your materials and make any changes. For reference, I took the GRE and TOEFL at the end of September/early October and had my other materials ready by mid-October.

GRE/TOEFL

The GRE and TOEFL are the standardized exams you must submit for grad school applications (though now the GRE is no longer a requirement in some schools). Good general tips for the GRE/TOEFL are given in this link; in this blog, I'll keep it to a brief overview and small tips.

GRE description:

The GRE (Graduate Record Examinations) is a ~3-hour 45-minute test that is roughly divided into three halves:


  • Quantitative Reasoning (Logical/Math skills, Scores range from 130-170 in 1-point increments)
  • Verbal Skills (English vocabulary, Scores range from 130-170 in 1-point increments)
  • Analytical Writing (Scores range from 1-6 in 0.5 point increments)


You can read more details of the exam online; here, I'll focus on what's essential for MSCS programs. Generally, top MSCS program applicants have a near-perfect score in the Quantitative Reasoning section (167+, say) and a reasonably good score in verbal skills (155+). A target score for the GRE should be 325-330 or above. 


Top MSCS programs are a bit lax on verbal scores, but you need an excellent quantitative score to stand a chance. Based on what I've heard (and what was said here), GRE is more of a rejection filter than a selection filter; having a 340/340 GRE will not guarantee admission, but having a 310/340 GRE will likely get you rejected. 


For analytical writing, targets should be 3.5+ on a scale of 6, with 4+ being ideal. 


Preparing for the GRE:

If you have a strong computer science background, then the quant portion of the GRE should not require too much practice (since it is primarily 12th-grade math). The verbal section requires a lot of reading and flashcards, especially if you haven't been reading novels regularly. Most people recommend downloading the Magoosh app for GRE prep, which I've found helpful. 

For the analytical writing section, I think checking out the book "Official GRE Verbal Reasoning Practice Questions" helps a lot; you'll find sample essays that scored 3/4/5/6, which will help you judge your writing skills in exam conditions. I asked a friend, and we graded each other's pieces based on the sample essays (i.e., how well-written they were compared to the ones given). A few tips for analytical writing are: You generally want to be nuanced, provide arguments for both sides of the issue, point out why the topic is not as straightforward as it looks, and give examples from real-life. Rehash your points in your closing argument to summarize your stance.

How long you should prepare for the GRE depends a lot on how you perform on a couple of practice tests; I always ask juniors to take one or two practice tests and then decide how much time is required. Some people score 330+ on their first attempt, and for them, I advise spending at most 1-2 weeks preparing, whereas, for those who require a significant brush-up of verbal skills (most common), it could be anywhere from 1-3 months. Start early; try to get this out of the way in the summer.

I want to note that more and more departments are making the GRE optional nowadays. I'm not sure if adding the GRE helps your application anymore, but if you are from a relatively lesser-known institution, having a high GRE score can help your case. You can take the GRE multiple times, so you shouldn't stress too much about the exam being a ride-or-die! (though the exam is somewhat expensive to take.)

TOEFL description:

The TOEFL test tests the ability to read/write/speak in English. It has four sections; each scored from 0-30 in 1-point increments: Reading, Writing, Speaking, and Listening. 

For TOEFL, target scores are a bit more complicated to set since some programs have some hard constraints on TOEFL scores that you need to consider, depending on where you apply. For example, some programs with TA requirements need you to score at least 27/30 in the speaking section; I believe the max cutoff I've come across is Cornell's, requiring at least 28/30 in speaking and 24/30 in the other three units.

Preparing for the TOEFL:

The Reading and Listening parts of the TOEFL are more straightforward, and practicing enough tests should be enough practice for the exam. For Writing, if you've done GRE before TOEFL (which is recommended), the TOEFL writing should be a walk in the park with a couple of caveats. Unlike the GRE writing section, you want to be more one-sided in your TOEFL essay (i.e., no need to be too nuanced). Since the TOEFL writing is graded more on the correctness of your grammar (compared to the GRE, which is more about providing a brief technical analysis of various topics), it is better to use language and vocabulary you are comfortable with. Another thing I found helpful is to vary my sentence structure, lengths, and overall paragraph styles to bring some color to my TOEFL essay.

Coming to the most challenging section of the TOEFL, Speaking, you generally want to take the version of the TOEFL test, which allows you to concentrate on your test and talk without your mask on (or, if this is impossible, practice with your mask on). Additionally, I didn't realize how much noise the center would have (because everyone is taking the speaking test around you). Once I realized this, I started rushing through my exam a little to reach the Listening and Speaking section first to avoid disturbances, which paid off.

Letters of Recommendation

When applying to MSCS programs, you'll have to ask for 3 Letters of Recommendation from people you have worked with professionally or academically. The prevailing thought is that the ideal LoRs come from Professors you've worked with on a research project, who can go into detail about your work and how impressive it was. Slightly less preferred is industry LoRs (especially if your manager does not have a PhD or MS). The last resort should be Professors you've taken a course with and done well in; generally, such letters should be avoided.


Asking for LoRs: Ideally, you should inform your LoR writers that you will be applying for grad school and would like a letter from them around the beginning of October. After they confirm that they would be happy to write you an LoR, send them a mail with the following:


  • List of schools that you will be applying to, with their corresponding deadlines
  • A copy of your resume
  • A copy of your statement of purpose
  • A copy of your transcript
  • GRE/TOEFL scores

Usually, application sites have an interface that allows you to ask for an LoR from someone via email (applicants are not sent copies of their LoRs). I strongly advise sending all emails together simultaneously for all the schools you're applying to. Professors are busy, and often they'll write/send LoRs day of, and you don't want them to miss a school because you sent it in a 17th email addendum...


Statement of Purpose

The Statement of Purpose is generally a 1-2 page document that elucidates why the school should accept you and why the school is a good fit for you. I like the tips given on this page for SOP tips; in general, I think the following structure worked quite well for me:


  • I began with my background, research interests, and why I wanted to join the program.
  • I discussed my academic background in-depth—research projects, papers, internships, etc.
  • I followed this up with a paragraph demonstrating how I gave back to society: this mostly involved teaching high school students, mentorship programs I was a part of, etc. 
  • I added a paragraph that showed I read about the department, noting 3-4 professors whose research areas and interests match mine.

One thing that I noted is that it helped me to have the following structure when talking about projects: I tried to answer the following questions in order:


  • Why was this project interesting to me? Why did I choose to do this wrt all the other opportunities?
  • What did I achieve? (This is the core of the research work)
  • What did I take away from this work? How did this change the path I was on?

Using the above prompts, I converted a mechanical list of projects into a more enticing and human story. I went through my journey and explained to the reader why I think I would be a good fit for the program based on my self-reflections while also going into some technical nitty-gritties demonstrating knowledge and understanding. I also tailored content a bit for each school; for Stanford, I added a line or two on my involvement in some entrepreneurship events. For Georgia Tech, I tried to focus less on my theory research and more on the AI side (since I saw that Georgia Tech theory track was only for PhD students), etc.


Another tip is to NOT read anyone's SoP (seniors, ones you found online, etc.) before writing your own!


Resume/CV

Generally, I recommend using Latex for grad school Resumes/CVs; you can find my CV (Last updated December 2021) here. About length - I think a 2-page resume is a sweet spot, but I decided to go with a CV, so I didn't have to worry about length too much. 


Please get your resume reviewed by seniors/people studying at your target schools since this is a crucial part of your application! 


Selecting universities

To select universities, people seem to generally follow a rough 3/3/3 rule: apply to 3 universities that are ambitious to get in, 3 universities that are a match, and 3 universities that are "safe": where you think you'll likely get in. 

This seems to certainly be valid if you are looking to study in the US in the current year for sure; as an alternate perspective, I decided to apply exclusively to programs that I would be excited to attend, because I already had a job offer that I would consider over any other programs.

While ranking universities from best to worst is a subjective process, it is definitely helpful to have some rough sense of how specific departments of universities rank against each other. For this, the most helpful website for me has been Drafty CS Rankings. Note, of course, that rankings are not everything: though I was admitted to both CMU (Rank 1 in AI) and Stanford (Rank 2 in AI), I decided to take Stanford due to other considerations, such as significantly better graduate funding (assistantships at Stanford cover 100% tuition, along with providing a generous stipend).

As a tentative list, I applied to: Stanford, CMU, UIUC, UCLA, UCSD, UMich, UT Austin, Columbia, Georgia Tech.

Some of my friends also applied to: Cornell, Princeton, UC Berkeley, Caltech, UW Madison.

Other miscellaneous tips
  • Use Grammarly to check your resume/SoP for spelling and grammatical errors! After all, language errors are a Kiss of Death for grad school applications...
  • If you have a couple of semesters before applications, it might be worth spending time pushing your GPA up. GPA definitely matters for MS programs!
  • You'll have noticed I wrote multiple times to ask people to help review your application. Sometimes, people think the quality of application materials doesn't matter if you're a great applicant. To them, I say that I've had brilliant friends who didn't get in because they made mistakes like writing that they wanted to work with a faculty member who turned out to be retired or dead - it turns out that dead people don't often take new grad students...
  • Grad school applications are an expensive process. If this is a potential financial strain for you, most schools seem to provide some financial aid, such as a subsidized application fee based on need - I'd encourage looking into this early on!
  • In keeping with the previous tip, CMU has previously had an early admission deadline of mid-November which allows you to submit your application for a reduced fee; you might want to look into such deadlines early on, to give yourself enough time to meet them!
  • When going for your GRE/TOEFL, you'll get to send scores to up to 4 schools for free, but you must do it right after the exam ends. You'll be shown your score first - go in with a threshold score in mind above which you'll send scores, and shortlist the schools you'll be sending them to. Also, remember the states these schools are in - I spent a lot of time looking for the schools because I couldn't remember US states... 🤡
  • Lastly, remember that grad school applications are a crapshoot; don't stress too much about them. I remember thinking that I'd get in nowhere, got rejected from my 2 safety schools, and then got into my top 2 choices... 
References

Most grad school references below are for PhD programs, so take them with a grain of salt. However, they are still useful, especially if you're applying from the perspective of completing a thesis in your MS.