Computer Science Graduate Program

The University of Virginia's Computer Science graduate program aims to produce well-educated researchers, teachers, and future leaders in Computer Science. Graduate degrees are a certification by the faculty that the student has a broad education in Computer Science and has performed original research in the area.


For Prospective Graduate Students

Welcome and thank your for your interest in the Department of Computer Science at the University of Virginia. Here we offer the degrees of Master of Science (MS), Master of Computer Science (MCS), and Doctor of Philosophy (PhD). The MS degree requires course work plus a formal thesis. The MCS degree is based on courses, but students have the option and indeed are encouraged to conduct a substantial project. In either case, course requirements differ slightly for students applying only for the MS/MCS, versus those accepted for PhD study. Please note that a prior masters degree is not a prerequisite for applying to the PhD program. The PhD degree culminates with the student writing and defending a dissertation based on the result of independent, original research that makes a significant scholarly contribution to the student's field of study. Also note that we only accept applicants for the fall semester. 

The Department of Computer Science also offers graduate degrees in Computer Engineering (in collaboration with the U.Va. Charles L. Brown Department of Electrical and Computer Engineering). Computer Engineering (CpE) offers the degrees of Master of Science (MS), Master of Engineering (ME), and Doctor of Philosophy (PhD).  More information can be found on the CpE website.

  • CS Graduate Degrees

    The University of Virginia's Computer Science graduate program aims to produce well-educated researchers, teachers, and future leaders in Computer Science. Graduate degrees are a certification by the faculty that the student has a broad education in Computer Science and has performed original research in the area.

    Computer Science offers the degrees of Master of Science (MS), Master of Computer Science (MCS), and Doctor of Philosophy (PhD). The MS degree requires course work plus a formal thesis. The MCS degree is based on courses, but students have the option and indeed are encouraged to conduct a substantial project. In either case, course requirements differ slightly for students applying only for the MS/MCS, versus those accepted for PhD study. Please note that a prior masters degree is not a prerequisite for applying to the PhD program. The PhD degree culminates with the student writing and defending a dissertation based on the result of independent, original research that makes a significant scholarly contribution to the student's field of study.

    The Department of Computer Science also offers graduate degrees in Computer Engineering (in collaboration with the U.Va. Charles L. Brown Department of Electrical and Computer Engineering). 

    Computer Engineering (CpE) offers the degrees of Master of Science (MS), Master of Engineering (ME), and Doctor of Philosophy (PhD).  More information can be found ON THE CPE WEBSITE.

  • Admissions

    The Department of Computer Science is seeking highly-qualified PhD candidates and highly-qualified Master's candidates. Visit the UVA Engineering Admissions page for more information on graduate admissions. 

    Apply to UVA CS!

    The deadline for applications (PhD, MS, and MCS) requesting financial aid is December 15th, 2019. For PhD applicants: for full consideration, please apply by December 15, but we will continue to accept PhD applications requesting financial aid until March 1, 2020.

    The deadline for applications (PhD, MS, and MCS) not requesting financial aid is April 1, 2020.

     

  • Application Requirements

    Computer Science Background Requirements

    The Department of Computer Science does not require that applicants hold a bachelor's degree in Computer Science. However, applicants are expected to have a strong background in Computer Science.

    A suitable background would include courses in the following core areas:

    • Data Structures
    • Discrete Mathematics
    • Assembly Language and Computer Organization
    • Programming in a procedural language such as C, C#, C++, or Java.

     

    Applicants are also expected to have taken several (but not necessarily all) courses in specialized areas:

    • Operating Systems
    • Programming Languages
    • Algorithms
    • Compilers
    • Artificial Intelligence
    • Computer Networks
    • Automata and Formal Languages
    • Software Engineering

     

    A year of college-level Calculus is also required. In general, experience gained working is not considered equivalent to successful completion of the courses listed above.

    Grade Point Average

    There is no minimum GPA required for admission. However, most applicants who are offered admission to our program have a GPA of at least 3.3 (out of 4.0). The grades in Computer Science, mathematics and related courses are more important than the overall GPA.

    GRE Scores

    GRE scores are required. The CS subject test GRE is not required (it is no longer even offered).

    GRE Scores Taken on or after August 1, 2011 - Average Scores of Admitted Applicants

    Verbal

    156 on a scale of 130 - 170

    Quantitative

    160 on a scale of 130 - 170

    Analytical Writing

    3.5 on a scale of 0 - 6

     

    Letters of Reference

    If possible, letters of references should be written by faculty at a university previously attended. Letters of reference from Computer Science faculty are preferred, but references from employers are welcome. References should pay particular attention to academic achievements and evidence of independent, creative problem solving.

    TOEFL/IELTS Scores

    • If you are a permanent resident of the U.S., TOEFL is not required

    • If you received a 4-year degree at an English-speaking institution (whether or not the institution is in the U.S.), TOEFL/IELTS is not required.

    • If you received a 4-year degree at a non-English-speaking institution and a Master's degree from an English-speaking institution, TOEFL/IELTS is required. 

    • Note that if you have a solid command of written and spoken English, TOEFL/IELTS waivers are possible! Send email to the UVA School of Engineering Graduate Admissions Coordinator Iva Gillet explaining why you believe TOEFL/IELTS can be waived (include evidence such as verification of duties as a Teaching Assistant that required significant interactions in English, copies of expired TOEFL/IELTS scores, presentations at conferences in English, etc.). 

    A score of at least 90 on the TOEFL iBT is preferred. It is rare that we offer admission to an applicant who scored less than 22 on the Speaking section of TOEFL. Similar statements can be made regarding IELTS. Scores can be sent electronically to UVa at institution code B875. Some students with lower scores may be required to complete the UVA Summer English for Academic Purposes Program prior to admission.

    Application Evaluation

    Applications are evaluated based on the following factors:

    • Background in Computer Science (including project work)

    • Grade Point Average (GPA)

    • Graduate Record Examination (GRE)

    • Letters of reference

    • Personal statement

    • TOEFL/IELTS scores

    Applications are evaluated in their entirety. A weakness in one factor might be mitigated by strength in another.

  • Financial Aid

    We do not offer full financial aid to Masters students, but will often award small financial fellowships. There is no need to submit a separate application to qualify for these fellowships as they will be awarded based on a review of your submitted application materials. If awarded, you will be given details at the time of your notification of acceptance into the Computer Science Masters program.

    PhD students are usually admitted with a financial aid package in the form of a First-Year Research Assistantship that allows students to explore research with various faculty members and find their best match. It is expected that students will join a research group by the end of their first year and then be supported as a Research Assistant (RA). This financial aid package includes a competitive stipend, tuition, fees, and health insurance coverage. Details of this award are given at the time of your notification of acceptance into the Computer Science PhD program.  

    You are encouraged to apply to outside sources for fellowships or you can apply for federal assistance by filling out a Free Application for Federal Student Aid.

     

  • CS Admissions Frequently Asked Questions (FAQs)

    How do I apply?

    Please visit this Web page to apply. All materials, including letters of reference, must be uploaded by December 15, 2019 to be considered for financial aid. If not requesting financial aid, all materials must be uploaded by April 1, 2020.

    When is the application deadline?

    To be considered for financial aid, all materials, including letters of reference, must be uploaded by December 15, 2019. If not requesting financial aid, all materials must be uploaded by April 1, 2020.

    How much does it cost to apply? Can this fee be waived?

    The application fee is $85. Unfortunately, this fee cannot be waived under any circumstances.

    Is the TOEFL/IELTS required?

    International students must have an outstanding command of the English language in order to enroll at the University of Virginia. The TOEFL/IELTS exam is required of all applicants if the language first learned and spoken in the home is not English, and they are not permanent residents. However, TOEFL/IELTS is not required if the applicant has received a 4-year degree at an English-speaking institution (whether or not the institution is in the U.S.). (If the applicant has a 4-year degree from a non-English-speaking institution and a Master's degree from an English-speaking institution, TOEFL/IELTS is still required.) Most students admitted score at least 90 on the TOEFL IBT.

    I scored less than 22 on the Speaking section of TOEFL. Can I still apply?

    We review all applications thoroughly, along a number of dimensions. However, it is rare that we offer admission to an applicant who scored less than 22 on the Speaking section of TOEFL.

    Where do I send my GRE and/or TOEFL/IELTS scores?

    The Institution code for School of Engineering and Applied Science of the University of Virginia for the GRE is 5820. The code for TOEFL is  B875. There is not a specific code for the Department of Computer Science.

    I'm taking TOEFL/IELTS or GRE after your deadline (Dec 15). If I apply will these scores make it into my application and be seen by the admissions committee?

    We will start evaluating applications soon after the Dec 15 deadline. Applicants should submit the most complete application they can, based on the information they have at the time (e.g., current test scores, even if new test scores are anticipated).Those applications that are complete will be considered first. We will continue to evaluate applications into early next year, until we have completed our offers. As we are reviewing applications, we will certainly consider updated scores as the arrive at the University of Virginia. There is no need to email us to tell us that new scores are being sent.

    Should I mail or should I upload my materials with my application?

    We strongly discourage applicants from mailing in any items that can be uploaded to avoid delays in your application review, and we ask that you not send duplicate copies of previously uploaded documents.

    If you still need to mail documents to our office, please send them to:

    For US Postal:

    Graduate School of Engineering and Applied Science Admissions

    P.O. Box 401103

    Charlottesville, VA 22904

    For UPS/FEDEX:

          Graduate School of Engineering and Applied Science Admissions

          1001 Emmet Street North

          Room 209B Carruthers Hall

          Charlottesville, VA 22903

    I’ve submitted my application and all supporting materials. Why does my application status still show as incomplete?

    We will fully review your application with unofficial test scores and unofficial transcripts. Your application will only show as "complete" when your application has been submitted, your official scores and transcripts have been received and all three letters of recommendations have been received. An application is complete for review with unofficial transcripts and self-reported scores, though the checklist will still show incomplete.

    Please note that all official transcripts are received in our main admissions office and scanned or entered into our system manually. If you feel that your materials should have been received by now, but are NOT showing up when you login to your account, please note that the Graduate Admissions Office processes a very large number of applications and it may take longer than expected for your documents/information to appear online (in your account). It is very likely that your materials have been received, but have not been loaded into our application system yet.

    If I email you my information (e.g., GPA, GRE scores, etc.) before I apply, can you tell me the chance of being accepted?

    The graduate admissions committee considers many factors in an application, including more than just GPA and test scores. In particular, letters of reference and your personal statement are extremely important. Therefore, we are unfortunately unable to provide any information before the committee considers your full application.

    I still have other questions. Is there anyone available to help me?

    Yes! For program/degree specific questions, please send an email to Tyler Miller (Graduate Student Coordinator) and he will be able to assist you. For application support and specific questions regarding the application process, please contact: Central Graduate Admissions gseasadmission@virginia.edu 434-243-0209

  • Fifth Year Masters Program

    Why is this sometimes called the "5 year bachelor’s-Master's" (or “5th year Master's”)? Am I guaranteed to receive the MS or MCS degree after one additional year beyond the bachelor’s?

    Many of the UVA students who pursue this track in UVA CS have “free space” in their schedule (e.g., the Spring semester of their final semester as an undergrad) to take 2 or more graduate CS classes. These graduate CS classes will not count toward their bachelor’s (hence the phrase “free space”), so they effectively get a head start toward their Master’s degree. With this head start, they can complete the masters via a challenging-yet-manageable load of 4 graduate classes in each of the Fall and Spring semesters – thus the “5 year Master's” Without this head start, it is unreasonable to expect to complete the Masters in only one additional year. Note that no student is required to complete a Masters in only 1 year – in fact, most students take 1.5 years or 2 years to complete a Masters.

    Once I am in the program, are there special rules or privileges as compared to the “non-5-year Master's”? How do the programs differ?

    Every Masters student has the same rules or privileges. The requirements are the same for all Masters students.

    How do I apply?

    Please visit this Web page to apply. All materials, including letters of reference, must be uploaded by April 1, 2020. Note that students are required to apply.

    When is the application deadline?

    All materials must be uploaded by April 1, 2020.

    How much does it cost to apply? Can this fee be waived?

    The application fee for the UVa Fifth Year Master's is waived for the application cycle that ends April 1, 2020 when you use the code provided to current UVA undergrad BSCS and BACS majors. Contact us if you need this code.

    Is the TOEFL/IELTS required?

    Because you received your BACS or BSCS from UVA, TOEFL/IELTS is not required.

    Is the GRE required?

    The GRE is not required for the UVa Fifth Year Master's application cycle that ends April 1, 2020.

    What is the GPA requirement to apply to the program? Do I have to have above a minimum UVA GPA?

    There is no minimum GPA required. As with all applications received by the department, the application will be evaluated in its entirely, and frequently one aspect of the application can be stronger than another aspect. A lower GPA can often be balanced by strong letters of recommendation, community involvement/leadership, experience/internships, etc.

    Do I need to specify in my application that I am applying for this special program? If so, where do I specify this?

    You do not need to specify in your application that you are interested in this program.

    How many UVA students are you going to offer admission to in this program? How does that compare to the number of students you plan to offer admission to in the “non-5-year” program?

    There is not a specific number given/slotted for each category – the admissions committee treats each application similarly, irrespective of “5 year” or “non-5-year”.

    I still have other questions. Is there anyone available to help me?

    Yes! For program/degree specific questions, please send email to the chair of the Computer Science graduate admissions committee, Prof. Matt Dwyer. For application support and specific questions regarding the application process, please contact: Central Graduate Admissions gseasadmission@virginia.edu 434-243-0209

     

  • Our Research & Faculty

    The computer science department at the University of Virginia attracts federal research support in excess of $6 million annually, with total external research funding of more than $7 million each year. In addition to excelling in traditional research areas within computer science, we believe that many important research challenges lie at the boundary of computer science and other disciplines. With exceptional strength in experimental systems and applied research, our researchers are blazing new trails.

    Computer Science Research >>
  • Computer Science Graduate Courses

    Learn about some of our graduate courses offered. 

    Computer Science Graduate Courses >>

For Current Graduate Students

  • Information for New Graduate Students

    Welcome New Graduate Students!

    Welcome to Computer Science Department at the University of Virginia. Here, you will find information to help with your transition to graduate school and to Charlottesville. Please feel free to contact us and to ask questions!

    Orientation

    When students arrive they will attend an informative orientation led by the department that will help them become familiar with all of the resources we have to offer here in the Department of Computer Science. This is also a time for new students to meet other students as well as faculty. Typically this orientation is held within a week prior to the first day of the fall semester. More information will be posted closer to orientation time. 

    Mandatory International Student ISO Orientation

    All new international students holding all non-immigrant statuses are required to bring their legal documents and proof of the orientation quiz completion to the ISO upon your arrival in Charlottesville.This is required so that the ISO can determine your legal status and make copies for our records as required by U.S. law. You can find all of the information on this on the International Students & Scholars website.

     

    Housing

     

    ID Numbers

    Each student will receive (3) different ID's at the University. The first is your Computer ID which will also be your email address (followed by @virginia.edu). The second ID will be your University ID. This ID number will appear on your ID card and be the one you will use the most on grounds. The third ID number is your SIS ID which the administration will use for your class registration, grading, transcript, and other official functions. You can find all three IDs in your Student Center in SIS. You can obtain your University ID Card after you register at the ID Card Office, Observatory Hill Dining Hall, during normal business hours.

    Activate UVA Email Account & Systems Access

    You will need to follow the procedures listed here to gain access to your email account and other university systems such as UVA Collab and the Student Information System (SIS).

     

    Health

    All UVA students must have health insurance and must complete the Health Insurance Hard Waiver. Students receiving funding will be provided with health insurance through the University. You will need to sign up for this once you arrive and need to sign up each year in August. If you are not receiving funding you may also sign up, but will have to pay for your premium. All students may add dental insurance that can be purchased separately. This premium is not paid by UVA. Visit the following links for more information and to sign up:

     

    MTAs, GTAs, and GRAs.

    In our department, we have three types of positions that are filled by graduate students: MTAs, GTAs, and GRAs.

    MTAs are Masters students who are paid by the hour for tasks such as grading assignments, holding office hours to help students, etc. The current MTA hourly rate is $15. MTAs are scheduled approximately 10-20 hours per week. MTA positions offer no other benefits and do not waive or reduce the tuition costs – so tuition would still need to be paid in full by the MTA student.

    GTAs are typically PhD students who are serving as Teaching Assistants, and GRAs are typically PhD students who are serving as Research Assistants. 

    In each academic year, the department expects to fulfill a significant number of MTA positions. Being an MTA can help a student reduce their overall cost of attendance. Being a MTA is a great way to learn a topic more deeply, and our current MTAs say that helping other students learn is a very fulfilling experience. While Masters students are certainly not required to be an MTA, our UVA CS community relies on this expertise, so Masters students are encouraged to apply. 

    All new PhD students are usually considered GRA's (even if your admission letter says that you are receiving a "CS Fellowship"). So, if you are an international student and expect to receive funding, then one of the first things you need to do when you arrive is to get your social security card. You must be in the country for 10 days and then go to the social security office: 1470 Pantops Mountain Pl, Charlottesville, VA 22911. 

     

    Payroll

    New students who expect to be an MTA, GTA or GRA  must obtain a Social Security Card as soon as possible. If you are a PhD student, then some time after you arrive, you will receive information on your stipend and when you should expect to receive your payments. You will also receive a notification from Workday (the HR system) about completing your I-9 form. Here is more information about the I-9 process and the required documents you will need: https://hr.virginia.edu/compliance/i-9-and-e-verify If you are a Masters student, then you will apply to work and this is an hourly position. Details will be given once you are hired. 

    It may be as late as Oct. 1 before you receive a paycheck so try to bring enough money to last for 6 weeks. If you have questions about your funding you can email cs-office@virginia.edu

    Employment of Non-Citizens

    As soon as possible, you will need to get a social security card by taking their passport to the address below. This will need to be done before you will be allowed to receiving any type of payment. All PhD students will need a social security card.

    Social Security Office
    1470 Pantops Mountain Place
    Charlottesville, VA 22911
    (800) 772-1213
    (434) 295-1144

    U.S. Bank Checking Account

    You need a checking account at a U.S. bank in order to receive your stipend payments. Once you have a bank account, then you will need to set up direct deposit through your SIS account. 

    Direct Deposit directions.

     

    English Language Exams

    All International Students whose first language is not English are required to take the UVELPE test. Note that you cannot fail the UVELPE; based on the results, some students are recommended for writing or spoken English classes, designed to ensure a successful research and teaching career at the University of Virginia.

    If you are going to be a MTA or a GTA in the Fall, you MUST take the SPEAK test. (UVELPE and SPEAK are two separate tests). All of the information on these tests can be found on the Center for American English Language & Culture website.

     

  • Masters Degree Requirements

    **CURRENTLY BEING UPDATED** All Master’s Degrees offered by the CS department require 31 credits covering a number of technical areas. Many students choose to complete an MS or MCS degree while working on a PhD, and some courses and activities can fulfill requirements in both. Although most students finish within two years, the time limit for degree completion after entering the Master’s program is five years for the MS and seven years for the MCS. Degree requirements set by the School of Engineering and Applied Science (SEAS) are given in the SEAS Graduate Record and are additional to the CS Graduate Program requirements.

    Formally, the CS department offers two Master’s degrees: a Master of Science (MS) degree, which requires a thesis, and a Master of Computer Science (MCS) degree, which focuses on coursework or a project. There is no other difference between those degrees.

    In addition, there are special rules for students in a Master’s-only program or students who are terminating their graduate studies with a Master’s degree.

    All graduate degrees offered by the department require a combination of research and coursework. Each student is required to meet both the SEAS-defined minimum number of credits for a graduate degree and the department-defined breadth of instruction. These accountings are performed independently; for example, CS 6161 counts as a course towards the minimum to earn a degree and also satisfies the department’s theory breadth requirement.

    Students must have a minimum number of graded, graduate-level credits. A graduate- level class is any class numbered 5000 or above. No grade lower than a “C” will be accepted towards satisfying this requirement, and the average of all grades in courses uses to satisfy CS graduate degree requirements must be at least a “B”.

    International students must take 12 credits per semester (except for the last semester). International students pursuing a coursework-based Master’s degree thus take as least 12 credits the first semester, 12 credits the second semester, and 6 credits the third and final semester. These credits come from real classes (e.g., graduate electives).

    In addition to graded courses, students are required to take some number of re- search credits for each degree. Students employed as TAs should also register for TA credits (CS 8897 and CS 9897) these do not count toward the requirements of any degree.

    All students must take “Computer Science Perspectives” (CS 6190) during their first Fall semester.

    The minimum number of credits depends on the particular degree sought.

    Masters Degree Requirements

    This subsection describes the official requirements for a Master’s Degree.

     

    The Master’s Degree requires a minimum of 31 graduate-level credits, including:

    • 1 credit of “Computer Science Perspectives” (CS 6190) - can be waived by permission of the graduate program director
    • 3 credits of a graded graduate-level Mathematics Elective
    • Machine Learning” (CS 6316) from Fall 2015 onward is acceptable
    • “Introduction to Machine Learning and Data Mining” (CS 6501) from Spring 2015 or earlier is acceptable
    • other non-CS graduate courses with a significant mathematical component can also satisfy this requirement with the prior written approval of the grad- uate program director

     

    12 credit hours of graded graduate-level Categorized CS Electives

    • 3 credits from “Computer Systems” category
    • 3 credits from “Software Systems” category
    • 3 credits from “Application Systems” category
    • 3 credits from “Theory” category

     

    15 credit hours of graded graduate-level Graduate Electives, following one of three options:

    • Project. Exactly 3 credits of CS 7995 must be used. No credits of CS 8999 may be used to satisfy degree requirements (but CS 8999 may be taken for other purposes, see below). A project presentation must be completed (in the same semester as CS 7995 is taken).
    • Thesis. Exactly 6 credits of CS 8999 must be used. No credits of CS 7995 may be used. A thesis presentation must be completed.
    • Coursework. No credits of CS 7995 or 8999 may be used to satisfy degree requirements (but CS 8999 may be taken for other purposes, see below). No presentation is necessary. You may not continue on to the PhD program.
    • Restrictions on Graduate Electives:
    • no 5000-level CS courses at all
    • no more than 6 transfer credits
    • 3 Assessments forms, chosen from:
    • “Engineering Analysis” assessment form, completed with an instructor from one of your Graduate Electives or your CS advisor
    • “Engineering Design” assessment form, completed with an instructor from one of your Graduate Electives or your CS advisor
    • “Oral Communication” assessment form, completed with an instructor from one of your Graduate Electives of your CS advisor
    • “Plan of Study” assessment form, completed with your CS advisor
    • Note that while CS 8999 only satisfies degree requirements for students pursuing the Thesis option, it can be taken by Coursework or Project students to help qualify for full-time status (12 credits per semester). In that case it helps with full-time status but does not count toward Master’s degree requirements.
    • no TA credits (CS 8897 and CS 9897) count toward the degree
    • no more than 3 credits of Independent Study (CS 6993/7993) can be counted toward the degree

     

    Click here for more information on the Master of Science Degree from the Graduate Record

  • PhD Requirements

    **CURRENTLY BEING UPDATED**

    The PhD degree requires 72 graduate-level credits, including:

    • at least 24 credits of graded graduate-level coursework (of which up to 18 can be transfer credit— see below), containing
      • one graded graduate-level mathematics course (may be satisfied by transfer credit)
        • MATH and APMA courses are acceptable
        • “Introduction to Machine Learning and Data Mining” (CS 6501) is acceptable
        • other non-CS graduate courses with a significant mathematical component can also satisfy this requirement with the prior written approval of the graduate program director
      • no 5000-level CS courses
      • at least 6 credits of graded graduate-level coursework in excess of that required for the Master’s degree (if possessing or obtaining a Master’s degree)
        • these credits traditionally cannot be transferred in, you must actually take at least 6 credits of coursework at UVA to get a UVA PhD
    • CS 8897 and CS 9897 (Graduate Teaching Instruction) cannot be used to satisfy this 24-credit requirement (but see below)
    • 48 graduate-level credits, typically satisfied via research hours such as CS 9999, containing
      • at least 12 credits in any combination of CS 8897 and CS 9897 (Graduate Teaching Instruction), corresponding to two semesters as a full-time, 20 hour per week TA (see Chapter 3.2)
    • Completion of the Qualifying Examination (see Chapter 5)
    • Completion of the PhD Proposal (see Chapter 6.3)
    • Completion of the Oral Defense of the written Dissertation (see Chapter 6.4)
    • Finally, complete the “Graduate Student Leave Request” form (see Section 2.5) to leave the program.

    These requirements have significant overlap with the MCS and MS degree requirements; many students choose to earn one of those Master’s degrees as part of their PhD studies.

The information contained on this website is for informational purposes only.  The Undergraduate Record and Graduate Record represent the official repository for academic program requirements. These publications may be found here - Graduate Record/ Undergraduate Record