Top

Applying to graduate school

An undergrad’s guide to applying to graduate school in computer science.

Is graduate school the right choice for me, right now?

In Computer Science, graduate degrees can: 

  • Allow you to explore advanced research in a rapidly changing field. 

  • Expand your career opportunities by helping you build new skills and expertise and qualifying you for additional professional roles.

  • Build life-long social and career networks through your relationships with faculty, peers, and alumni. 

All that being said, even students who are certain that graduate school is right for them can find it very helpful to work for a year or more before applying to graduate school. There are several advantages to this approach:

  • You can explore fields of potential interest, and figure out where to focus your graduate studies, or decide what type of program is right for you.

  • You can build skills or fill in background gaps in your knowledge that will provide you with a solid foundation for graduate studies.

  • You will be applying to graduate programs after completing your degree, and so you will have completed more courses and potentially have more research or professional experience, compared to applying during your final year of studies.

  • Some students enjoy the professional opportunities available to them, and decide that graduate school isn’t a necessary next step at this time.

Types of graduate programs in Computer Science

While there is lots of variation in individual graduate programs, most can be categorized as either research-based (e.g. MSc and PhD) or applied (e.g. MScAC).

Research-based programs (e.g. MSc and PhD)

Research-based programs allow you to explore or conduct academic research in Computer Science. Some master’s programs are entirely course-based, which means that you will take a series of small seminar courses and conduct course projects or assignments, often addressing specific topics related to the instructor’s area of research.

These courses may be similar to some of your upper-level undergraduate courses. PhD programs, and many master’s programs, will also require you to develop and conduct your own research for a thesis or dissertation, often as an assistant in a research group or lab.

Applied programs (e.g. MScAC)

Applied programs are focused on developing advanced skills for a professional context. This is typically attained through a combination of graduate coursework and professional placement or internship opportunities, along with coaching in professional skills (like leadership, communication, entrepreneurship, etc.). While you will be exposed to research through courses and in projects and placements, the focus is on applying your skills and knowledge to a workplace context.

If you are hoping to go on to become a professor, academic researcher, or researcher in industry, an MSc or PhD might be the right choice for you. If you are hoping to advance your skills for the workplace, an MScAC (or other applied program) might be the best choice for you. It can often be possible to complete an applied program after a research-based Masters, or to move on to a PhD or MSc from an applied program. However, there is lots of variation within and between all graduate degrees, so you should choose your program after carefully researching each department and program. 

Choosing a graduate program

Choosing a Graduate Program — Research-based degrees (e.g. MSc and PhD)

When students choose a school for undergraduate studies, they often pay most attention to the overall institutional reputation. For graduate school, your search should focus on the department and even the subfield you’re interested in. Highly-ranked institutions might not have the strongest CS departments, and even a strong CS department might not be strong in all areas. 

To determine whether a department is a good match for your goals, you can:

  • Ask professors working in related areas for advice. 

  • See where faculty publishing research similar to what you’d like to do are working. 

  • Explore faculty research interests at potential institutions: For research degrees, this is particularly important. You will want to research the professors and find someone whose work matches your own interests. Often a program may be excellent, but if there isn’t a faculty member with similar research interests, this will be a bad fit for you, and you likely won’t be admitted to the program for this reason.

  • Check whether the curriculum (e.g., required or optional courses and other opportunities) matches your learning goals. Consider depth of study, breadth of study, interdisciplinarity, and professional or research opportunities — depending on your preferences and goals.

  • Check departmental websites for alumni placement information (where graduates of the program end up working or continuing to further graduate or postdoctoral work).

Choosing a Graduate Program — Applied degrees (e.g. MScAC)

Since an applied program is about preparation for industry, in evaluating potential programs consider whether the program will prepare you for the kinds of professional opportunities you hope to pursue.

To determine whether a department is a good match for your goals, you can:

  • Consider areas of focus or specialization (e.g. biotech, entrepreneurship, etc.) 

  • Check departmental websites for alumni placement information (where graduates of the program end up working or continuing to further graduate or postdoctoral work)

  • Check whether the curriculum (e.g. required or optional courses and other opportunities) matches your learning goals. Consider depth of study, breadth of study, interdisciplinarity, and professional or research opportunities — depending on your preferences and goals. 

  • Ask mentors or faculty working in related areas for advice

You also want to consider whether the program will be a good match for your personal needs and preferences. Some considerations include:

Funding — Research-based degrees (e.g. MSc and PhD)

A quality graduate research degree, especially a PhD, is usually funded. That’s right — you are paid to go to school! But not all funding is the same:

  • Funding can be a combination of a waiver of tuition fees, your salary as a Teaching Assistant or Research Assistant, and a stipend, i.e. “no strings attached” money for your living expenses. 

  • In some programs, such as U of T’s, your funding can be supplemental to any external scholarships for which you may qualify, for example, NSERC, OGS.

  • Be aware of any limitations to potential employment during your studies if you are an international student on a student visa.

Cost and opportunities for income — Applied degrees (e.g. MScAC)

In applied programs, you are often paying tuition that considers the future earnings that may be available to you after completing the program. However, you’ll want to be sure you have a plan — which might include savings, loans, and income earned during your time in the program — to cover your tuition fees. If you’re planning to use internship income to cover some or all of your tuition costs, do some research into what you can expect to earn during work terms, and consider how you’ll cover costs until you receive your first pay cheque. 

Location, Location, Location

Will you be happy living in your new city? Remember that PhDs can take up to five years to complete and that’s a lot of time to commit in one place! Location matters for mental health, and you’ll want to be somewhere where you feel safe, social, and supported. What will your new city have to offer you? Graduate school is a time to grow in all aspects of your life. Especially if you plan to enter the workforce after graduate study, consider that you will be building your academic and industry networks during graduate school. Would you consider permanently moving to your new location after graduation? What sort of employment opportunities will be available to you if you do? 

Preparing for graduate school in years 2, 3 and 4 of undergrad

Whether you’re currently in your 2nd, 3rd or 4th year, there’s lots you can do to explore potential graduate school pathways and strengthen a future application. 

  • Get to know your professors! At the beginning of the term, introduce yourself. Let them know you are considering graduate school in the future. You might want to meet with them to discuss possible graduate programs or pathways. You can also ask them what they would need to see from you during the course to be comfortable writing you a letter of recommendation in the future. 

  • Attend research seminars to explore potential areas of interest. Have a look at the CVs of professors or postdocs doing work that interests you to see where they completed their graduate degrees, who their collaborators are, and what conferences or journals they’ve presented at or published in. You can use this information to identify potential graduate programs or get to know the research and academic landscape.

  • Do research projects with professors through CSC494/CSC495. You may also consider projects through USRA (Undergraduate Research Opportunities Portal). This is a great way to build research experience, see whether you enjoy academic research, AND get to know a professor. 

  • Try to read academic research papers to learn what is happening in the field. 

Application Materials

There are many parts to a graduate school application! Here is a checklist of materials. It will take you several weeks, and sometimes several months, to prepare your application. 

Each institution will require different application materials. Normally these will be listed on the department website, along with application instructions, so once you have identified some potential programs of interest, check their websites for detailed application instructions. It can be helpful to create a spreadsheet or checklist with document types and deadlines to track application components. 

Statement of Purpose — Research-based degrees (e.g. MSc and PhD)

  • normally ~2 pages or 500 words.

  • Your statement explains what you want to do in grad school and why. This document contextualizes who you are to the admissions committee. 

  • Include your accomplishments as an undergrad, especially those relevant to the specific areas you’d like to focus on. This might include, for example, upper-level courses you’ve excelled in, research projects, faculty you may have worked with, etc. 

  • Mention the professors with whom you would want to work in the department that you are applying to, and why you think your interests align. This shows that you’ve done your homework on the department. 

  • Include any special interests you have or anything else that may be relevant to that program or institution. 

  • Do NOT include tales about your childhood and how you’ve always loved computers. This type of information is irrelevant and suggests that you are unfocused or have little to say. 

  • If a page limit is not specified, then two pages is generally a good length for a Statement of Purpose. Less than two pages could suggest to the committee that you don’t have enough to say, while more than two pages could mean that your application materials have not been well edited.

Admission essay(s) or statement of purpose — Applied degrees (e.g. MScAC)

  • Most applied programs will ask you to provide a written statement outlining your goals for completing a particular graduate program, and your relevant academic and professional experience. The format of a written statement might vary from a single longer statement to shorter responses to specific prompts.

  • In responding to your questions, you should be as specific as possible about why a particular program is a good fit with your goals and strengths. Demonstrate that you understand the structure of the program and how different components (courses, placements, projects, etc.) align with your priorities.

  • Include your accomplishments as an undergrad and in professional contexts, especially those relevant to the specific areas you’d like to focus in. Relevant academic experiences might include, for example, upper-level courses you’ve excelled in, research projects, faculty you may have worked with, etc. Relevant professional experience might include contributions to projects, leadership experience, work experience, and information that demonstrates your understanding of trends in your field of interest.

  • Do NOT include tales about your childhood and how you’ve always loved computers. This type of information is irrelevant and suggests that you are unfocused or have little to say. 

Reference Letters (normally 2–3):

  • Read our guide on how to ask for a reference letter!

  • Typically, your letters should be from professors. Unless otherwise specified, one letter can be from an industry professional if you have direct work or intern experience. (Applied programs may request or permit additional professional letters; check the application requirements of each program for details.) 

  • Your program might ask all applicants to provide names of referees when applying and ask only shortlisted candidates to provide letters. 

Transcripts

  • Unofficial copies may be okay when you are applying but be prepared to provide official ones once you are accepted/asked by a program. 

GRE and English language proficiency scores

  • Graduate Record Examination (GRE) scores are not usually needed for Canadian universities, but they can be useful if you have completed any undergraduate studies at an international school or a lesser-known program.

  • English language proficiency (TOEFL or IELTS) scores if applicable. If your first degree was completed in English, you may not need to submit an English language proficiency test score. However, this is not always the case. Check with the programs you will be applying to. 

Academic CV (if required)

  • Look at CVs from current graduate students or professors as examples

  • Review some examples of Computer Science CVs from Smith College and Carnegie Mellon University 

  • For applied degrees, you may alternatively be asked to provide a professional resume. 

Application Fee

  • Expect the application fee to be around C$125 or US$100. If you are experiencing significant financial hardship, it may be possible to request that fees be waived — you can contact the graduate school for more information. You can also contact cs.undergrad@utoronto.ca for advice.

Common student concerns and questions

What if I don’t meet the minimum GPA required for application, or have a term or year with a lower GPA or gap in my studies?

  • If you have extenuating circumstances that have affected your cGPA or your academic history (e.g. if you took some time away from your studies), you can share information about this in your application. You can address this briefly in a Statement of Purpose, and some applications give you an opportunity to share this information in a separate document. If appropriate, it can be helpful to explain that the circumstances that affected your GPA (e.g. an illness, personal circumstances, etc.) have changed or been accommodated so that they are no longer affecting your performance.

  • You can point to an upward trend in your GPA or strong performance in relevant upper-level courses to reassure the admissions committee that you are capable of strong performance in graduate-level coursework.

What if I haven’t completed a CS Major or Specialist, or all the courses that the program indicates are required for application?

  • If you’re hoping to study in an interdisciplinary area, you can describe (in your Statement of Purpose) how your academic or professional background has allowed you to explore additional relevant areas. 

  • If you have developed comparable skills through other courses, projects, or professional experience, you should note this explicitly in your application (typically in your Statement of Purpose). 

  • You might determine that it’s necessary to take some additional courses to strengthen your application. Please reach out to cs.undergrad@utoronto.ca and we can help you explore options to do so, including delaying graduation, taking courses after graduation as a non-degree student, or taking courses at another institution. 

What if I don’t have anyone to ask for a reference letter?

  • If there aren’t enough professors who know you well enough to write a strong reference letter for you, here are some strategies to identify additional letter writers:

    • Are there professors in a related, relevant area (e.g. math) who can speak to your general academic or research skills, or your skills in their field? In your Statement of Purpose, you can explain the relevance of their perspective to the work you hope to do.

    • While letters from faculty are ideal for research-based programs, it can be fine to include one letter from a relevant professional context. They can speak to your technical skills and potentially to your general research or professional skills. 

    • If you need an additional letter writer, you may need to consider taking courses or pursuing an additional research opportunity with this in mind. Connect early with a potential instructor or research advisor and let them know that you need an additional letter for graduate school, and ask what they would need to see from you to be comfortable writing one after the course or research project has concluded.

How is GPA considered? i.e., for the minimum GPA requirement, is it calculated from all courses taken, including non-CS courses, or only 3rd/4th year program courses?

  • Because students come from different academic institutions, graduate school programs have official ways of translating grades for their admission requirements. For e.g. a minimum average for all relevant courses. 

  • Remember: Having good grades in non-CS courses is impressive to the committee. Graduate schools want to see a student that has achieved high grades across different fields of study because ultimately, committees are interested in good researchers, good academics, and students who have shown that they know how to study well. 

When considering GPA, how does a CR/NCR credit look to admission committees? Would it be better to have a slightly lower mark in an elective rather than CR/NCR?

  • This would depend on whether your CR/NCR is a CS elective course or a general breadth requirement from a completely different field. You’ll have to judge how much your GPA would be affected by keeping a CR/NCR on your record.

  • Whether you choose to keep a CR/NCR or not, you will have to feel comfortable explaining any CR/NCR on your transcript because admission committees may want to know why you chose this course of action. 

Would I be disadvantaged if I am taking CSC369 and CSC373 in the Winter term since my grades for those courses won’t appear on my transcript at the time of application review?

  • This is not a problem. Admissions committees will see that you are registered for any required or important courses. This will be true for any courses that you are taking in your final year.

  • All offers are conditional until graduate committees receive your final GPA upon degree completion. Therefore the timing of your courses will not put you at a disadvantage. 

Is undergraduate research experience required for thesis-based MSc?

  • It’s not specifically required, but it helps because the more research you have completed, the more impressive you are to admissions committees. And while some applicants work with professors, some others impress admissions committees with their own personal research projects. Published papers are also advantageous but not typically required.

Is it possible to apply to computer science graduate schools after a few years of working?

  • Absolutely! In fact, a gap year is more likely to be a benefit than a disadvantage. You’ll get valuable experience from working, and this would be especially beneficial if applying to the MScAC program.

Are the internships for the MScAC the same ones available to undergrads? Or are there internships looking exclusively for graduate students?

  • Our industry partners are specifically looking for graduate students and post their internship positions specifically for MScAC students. 

What sort of skills are sought after in the MScAC program?

  • Academics are always very important, but the admissions committee also prefers to see some work experience. Applications are looked at holistically and students are considered from a variety of different perspectives. For example, can this student work as part of a team? Can they think creatively to solve problems? Are they able to lead and own a project?

I’m not in a CS undergraduate program. Can I still apply to CS graduate school?

  • You absolutely can. We expect students to understand the basics of CS: for example, operating systems, CS theory, etc. If you come from related fields, like electrical engineering, math, statistics, or data science, or if you have a CS minor, you can still apply and can be a strong candidate.

  • What committees don’t want to see is minimal preparation, i.e. only introductory CS courses or early-year calculus courses. 

Is having a PhD a disadvantage to working in industry?

  • Absolutely not. In fact, many companies specifically want researchers trained at the PhD level.

Can you apply to multiple programs at the same time?

  • You can, but this will vary depending on the institution. At U of T, you will want to differentiate your applications between research-stream (MSc, PhD) and MScAC. Therefore, for U of T grad school specifically, we would discourage students from applying to both research-stream degrees in the same cycle. It is possible, for example, to apply for an MSc and receive an alternative offer for the PhD from the same institution. However, some institutions prefer that students apply to all programs they are interested in and therefore, it’s a good idea to be sure of the application process for each graduate school beforehand.

Can you transfer graduate courses taken in an undergraduate program towards your graduate degree?

  • Typically, you cannot do so if the graduate course has already been applied towards your undergraduate program completion. The general rule is that a course can only be used in fulfillment of one degree, not two.

Can you finish a graduate degree in a shorter amount of time?

  • For research streams degrees, it’s theoretically possible to finish ahead of schedule but very unusual and unlikely.

Is there an MSc drop-down option for the direct-entry PhD?

  • At U of T there is a drop-down MSc degree for those PhD students who have completed the work equivalent to MSc degree. Many institutions have similar policies, but it is best to check.

Should we contact potential supervisors before applying?

  • Some programs encourage or expect students to reach out to potential supervisors as part of the application process. Others do not. There is no harm in reaching out, but do not be concerned or surprised if you do not hear back.

  • Check faculty websites for information about their current research, and whether or not they are currently accepting new students (if this is not specified, you can assume that they are available for supervision).

  • Keep your inquiry focused on the faculty member’s area of research or expertise. Demonstrate that you have reviewed their research, and describe your interests as they relate to the faculty member’s research.

  • Faculty will not be able to provide an assessment of the likelihood that you will be admitted, so don’t ask about your chances of admission. Decisions are made by an admissions committee and include a holistic assessment of your application materials, so individual faculty members cannot predict the outcome of an application.