G Computer Sci


Click Here for Admission Requirements

The MSCS degree provides a broad background in software development and other core disciplines of computer science. Graduates of the MSCS program are well prepared both for positions in industry, or to continue their studies at a PhD program if desired.

Curriculum Requirements

The 36 unit program requires two years of full-time study. The MSCS program follows a cohort model during the first year; all students take the same set of core courses. During the second year, students may choose from a rotating selection of graduate electives based on their interests and goals. Students develop several large software projects throughout the degree, including a substantial capstone project during their second year.

Core Courses

The program follows a cohort model during the first year. As a result, all students will take the following core courses at the same time:

Course Title Units Semester Prereq
CS 601 Principles of Software Development 4 Fall None
CS 673 Algorithms 4 Fall None
CS 631 Systems Foundations 4 Spring CS 601
CS 652 Programming Languages 4 Spring CS 601

See the Courses page for course descriptions.

Project Course

All students must take CS 690 Master's Project (4 units) during their second year. In this course, students work with an industry or faculty sponsor to complete a substantial capstone project from start to finish. This involves completing the specification, design, development, and testing of a significant software system.

Graduate Electives

Students must take 16 units of 600-level graduate CS electives during their second year. A maximum of 4 units may come from special electives, such as CS 694, CS 695, and CS 698. Some special elective courses include:

  • Practicum Option

    Students may opt to replace an elective with practical work experience at tech companies and startups in the San Francisco Bay Area and Silicon Valley. This option is open to most international students. Visit Practicum for details.

  • Directed Research

    Students may opt to replace an elective with a directed research course, allowing them to work closely with a professor on a research project. This option is ideal for students who wish to continue on to a PhD program.

  • Special Topics

    We offer several special topic courses on the latest topics and technologies in Computer Science. Some recent special topics courses include Data Mining, Computer Graphics, Data Visualization, and Game Engineering.

A rotating selection of graduate electives are available every semester. See the Courses page for detailed course descriptions.

Frequently Asked Questions

Below you can find some frequently asked questions and answers about our MSCS program.

Feel free to contact the graduate director if you have any questions not answered here.