Graduate Programs

PhD Program

The Department of Computer Science is a research-oriented department with a distinguished history of contributions in systems, theory, artificial intelligence, and HCI. Over the past decade, a third of its PhD graduates have won tenure-track faculty positions, and its alumni include leaders at major research laboratories such as Google, Microsoft, and IBM.

Program Overview

Applicants with an undergraduate degree are admitted directly into the PhD program. Students receive an MS degree during their second year, and typically complete their PhD in a total of four to five years.

The program includes an option for a student to earn a joint PhD in computer science and another department.

During their first two years, students take courses in all areas of computer science, and complete the qualification requirements for one research area, in order to ensure technical depth.

A Dissertation Advisory Committee is formed during the first term of the third year. Students are required to submit and defend a thesis proposal during the second term of their third year. The committee conducts a formal review of the student's progress every six months. The final step is to write and defend a PhD thesis.

For application and financial support information see the applying to Rochester page.

Summer Internships

The department believes that practical experience in industrial settings is crucial to motivating, guiding, and advancing research in computer science.

Many PhD students spend one or two summers interning at an industrial research laboratory. In recent years our students have interned at Google, Microsoft Research, Intel Research, Cadence, Nuance, and other leading research centers.

Internships can be found by responding to calls for interns distributed in the department, using faculty advisors' networks of personal contacts, and through the University's Career and Internship Center.

Both department support and research internships should be reported in your fall PAS materials.

PhD Program Requirements

The PhD students are required to complete:

Breadth Requirement

Breadth courses are divided into three groups as follows:

AI and HCI

CSC 446: Machine Learning (Required)

Choose one:


CSC 456: Operating Systems (Required)

Choose one:


CSC 484: Advanced Algorithms (Required)
CSC 486: Computational Complexity (Required)

These breadth courses must be taken in the first or second year of graduate study. At least one course in each group must be taken in the first year. Students have the flexibility to complete all of the breadth requirements during their first year, or take fewer courses in order to allow time for research.

PhD students are expected to earn a B or better in all breadth courses. Students who have already taken a course that is equivalent to a breadth courses may petition to substitute an advanced course in the same area.

Some students may be required to take undergraduate courses so that they have the necessary foundational knowledge to complete the breadth courses. This modified course schedule should be created with your advisor and requires faculty approval.

Qualifying Requirements

In addition to the breadth requirements, PhD students will qualify for a research area. All research areas require writing and defending an area paper during the second year of graduate study.

A master’s degree is offered to those PhD-program students passing the area paper with an appropriate level of performance or, in special cases, passing an alternative comprehensive examination given by two or more faculty members appointed by the chair.

Area specific requirements are as follows:

Artificial Intelligence (AI) Qualifying Requirements

AI Dissertation and Exam

The student should form a committee of three or more AI faculty members before the area paper is due, and schedule a time and date for the exam so that all committee members can attend.

The paper should include a survey of a research topic and initial original research.

The defense begins with the student providing a 20 minute overview of the area paper, followed by an hour of intensive questioning by faculty members.

Questions from faculty members will include:

Students are responsible for preparing themselves these questions.

AI Course Requirements

By the end of the fourth year, the student must complete at least two of the following:

Human-Computer Interaction (HCI) Qualifying Requirements

HCI Dissertation

The area paper may be a survey of a research topic, original research, or a combination of both.

Following a public presentation of the paper, the student will answer questions from the committee about the paper and about any topic in HCI that is broadly relevant to the research topic.

HCI Course Requirements

By the end of the fourth year, the student must complete three additional courses as follows:

Systems Qualifying Requirements

Systems Dissertation and Defense

The area paper should be original MS level research and a survey of related research topics.

Following a public presentation of the paper, the student will answer questions from the committee about the area paper and the papers listed in the systems area reading list, which includes subjects in:

Systems Course Requirements

By the end of the fourth year, the student must complete at least two more courses numbered 400 or higher that are in systems areas.

Theory Qualifying Requirements

Theory Dissertation and Defense

The area paper and defense process is organized as follows:

Theory Course Requirements

By the end of the fourth year, the student must complete one additional course:

A more detailed written description of the logistics of this process is available from the graduate coordinator or any theory faculty member.

PhD Proposal

See PhD Thesis Proposal.