TL;DR: If you want to pay to think and (maybe) make a lot of money now, do an M.Eng. If you want to get paid to think, do an M.Sc or Ph.D.

The question whether to do a Master's or a Ph.D. completely depends on what you want out of your graduate studies. One on hand, if you are interested in going to industry or getting a higher starting salary, getting a master's is a great choice. On the other hand, for most jobs as professors in academia or research labs at major companies, a Ph.D is generally required. Because a Ph.D is a 4-6 year commitment, I briefly describe the three main options available based on your interests.

First, for students with little interest in conducting research, a good alternative is a Master's of Engineering (M.Eng). An M.Eng simply entails taking more classes, possibly with a capstone project at the end, to graduate in approximately 1 year. Easy right? Keep in mind that you may have to pay out of pocket.

Second, for students who are interested in conducting research, but are unsure of doing a Ph.D, a Master's of Science (M.Sc) is a good option. Generally, the M.Sc takes 2 years and requires taking classes and completing a research thesis, with the option to continue on the Ph.D. Depending on the institution, the M.Sc maybe paid for by the university if the student works as a Teaching Assistant for the duration of their studies.

Lastly, the Doctor of Philosophy (Ph.D) is suitable for individuals who are certain that they want to conduct research and to become professors or work in labs at places like Microsoft or Facebook Research. Remember this is a commitment of 4-6 years. For most programs in CS, the Ph.D is completely paid for with the exceptions of minimal fees.
I recommend checking out the funding tab if you are a prospective or current graduate student, but you are unsure of how you will pay for it.

Welcome undergrads! If you're here, it is likely because you want to obtain a graduate degree, or, at least, get some research experience to decide whether a graduate degree is the best path for your career. To start, I cannot emphasize it enough that a graduate degree, with the exception of an M.Eng, is not similar to your undergraduate journey. Unlike undergrad where you simply absorb knowledge and get tested on your understanding, you are expected to conduct research with the goal of creating new knowledge.
If you are not sold that you want to get a graduate degree, no worries! I provide below links to opportunities for summer research and workshops where you can sort of "test drive" life as a graduate student in Computer Science.

Program Application Deadline Elibility Where?
Ronald E. McNair Scholars Program Varies by Institution U.S Citizen or Permanent Resident All over the U.S
Summer Research - Early Identification Program (SR-EIP) November 1 U.S Citizen or Permanent Resident 30 research sites
SoNIC Summer Research Workshop Late March All Underrepresented Minorities in CS Cornell University
The Cornell, Maryland, Max Plack Pre-doctoral Research School Late March Everyone Max Planck Institute for Software Systems

Funding

Coming soon: fellowships, scholarships, workshops, grants, e.t.c. You name it, I will have it! :).

Got questions? I got answers! If your question is not answered below, email me, and I can either answer it or at least point you to someone or some resources that can answer it.

🤔 Should I do a Ph.D?

  • If, going through undergraduate courses, you felt like there was always a curiosity itch that you could not scratch, then the Ph.D might be right for you.
  • If you get excited by developing and presenting new ideas, then the Ph.D might be right for you.
  • If you are okay with failing and bouncing back from it, then the Ph.D might be right for you.
  • If you have ever woken up from a deep sleep at 3 a.m. because you figured out where the bug in your code is, then the Ph.D might be right for you.
  • If you are passionate and get excited about teaching other people new concepts, then the Ph.D might be right for you.
  • If you are okay with taking a 50%+ pay cut and scaling back your lavish lifestyle from an industry salary, then the Ph.D might be right for you.

🤭 Wrong reasons to do a Ph.D

  • I want to get a higher starting salary.
  • I like the sound of Doctor Jane/John Doe.
  • My dad, mom, family, girlfriend, boyfriend wants me to do one.
  • I don't know what else to do after my undergrad.
  • I am not ready for the "real world".

🤓 I am going into my sophomore/junior year in undergrad, is it too early to start thinking about graduate school?

Look at you! I am so proud of you! It is never too early. Start by getting some research under your belt so that, by the time graduate school application season rolls around, you will have enough experience and recommenders to apply for your dream graduate school. Be sure to check out the Undergrad resources tab on this page.

🌍 I am an international student, what do I do about visas/employment authorization?

If you get admitted to a graduate program, the university will work with you to get all the documents you need to pursue your studies in the U.S.

🎓 Can I get a master's on the way to the Ph.D?

At most institutions, the short answer is Yes. But, I would advise against applying to a Ph.D program when you really want a master's (See tab on Master's or Ph.D).

📜 What is the application process?

Graduate applications take a good amount of planning and grit. Generally, the process involves writing research statements, optionally a personal statement, taking and sending GRE scores (now optional at some institutions like Cornell), TOEFL scores (for international students that did not do undergrad in the U.S), at least three letters of recommendations, and your official transcripts. Make sure to start early because the earliest deadlines are usually December 1. That's when the early bird gets the worm. In other words, the earlier you submit, the more likely you will be considered for the best funding package and fellowships.

✍ What is the recommendation process?

In most cases, you need to take classes, do research, or work in industry to get a letter of recommendation (LOR) from professors and supervisors. An alternative way to get an LOR is to be a Teaching or Lab Assistant for a professor. The point is graduate schools want to hear from people (outside your family who love you) that can speak to your research potential. Therefore, you want the professors/supervisors to write you a strong LOR. Repeat that with me, you want a strong LOR! If the professor/supervisor is not comfortable giving you a strong recommendation, then it's best to find another recommender.

😎 I've been admitted. What should I expect for the first few years?

First of all, congratulations! Second, get ready for exciting times ahead. In the first and second year, you can expect to be mostly taking classes and doing some research. You get flexibility in which classes you take. At most institutions, you are given the first year to explore your options (sort of like dating 😁) before settling on one or two advisor(s). More advice to come after I finish my second year. Cheers.

💸 Is it possible to do internships in graduate school?

The answer is a resounding YES! But, make sure that you've secured an advisor and a research agenda before going for an internship in industry. In other words, refrain from doing an internship the summer after your first year. However, please take my advice with a grain of salt because this wildly varies by advisor and field in CS.

Disclaimer: any opinions contained herein are those of the author, and they do not necessarily reflect the views or beliefs of his Ph.D funding sources, advisors, or institution.