Santa Clara University
Department of Mathematics
and Computer Science

Computer Science
Graduate School Information

Types of Degree Programs

Graduate degrees related to Computer Science and Computing are of many "flavors." In addition to the traditional Ph.D. from a Department of Computer Science (e.g., programs at Stanford or the University of Illinois at Urbana-Champaign), various types of master's degrees exist, and many of them are interdisciplinary.
The Master of Science in Computer Science (or Computer Engineering) typically provides further breadth and depth in several areas and can be completed by a full time student in about two years. Some programs require a thesis, others do not. Courses in some programs may be used as part of a Ph.D. programs, but other programs assume that this is a "terminal" degree.

The Master of Computer Science (cf. U. of Illinois program) is usually a "terminal" degree and often designed for those whose undergraduate degree has not been in mathematics, computer science, or engineering. Some programs are specifically designed for those wishing to teach CS in high schools or community colleges.

The Master of Science in Software Engineering (cf. SCU's program) is a degree focusing on the software development process and on engineering and design questions related to large software projects. Some programs require that students have a minimum of one or two years work experience before entering such a program.

There are also computer-related programs focusing on what is commonly called "scientific computation" or "computational science" whose "home" may or may not be in a Department of Computer Science. Such programs (both on the master's and doctoral levels) focus specifically on numerical computations and questions of speed and accuracy related to numerical problems. One such programs is the Scientific Computing and Computational Mathematics Program at Stanford which is a program independent of the Computer Science Department.

Some schools also offer graduate degrees in "Computer (Computational) Science and Engineering" which are also independent of "Computer Science" degrees at the same school and are often interdisciplinary. For one example, such program is housed in the Department of Electrical and Computer Engineering at the Univ. of Illinois and is called the Computational Science and Engineering Option.

Although Ph.D.s in Computer Science often find a career in academia (cf. Association for Computing Machinery "Career Opportunities" Website), some Ph.D.s find employment doing research in non-academic environments, such as at national labs (cf. Lawrence Livermore National Laboratory).

"Computing" Departments

Since there is often no clear distinction between "computer science" and "computer engineering," since in some schools, "computing" is part of a unified department (with Mathematics or with Electrical Engineering) and since graduate programs tend to be flexible, students interested in graduate work related to computer science should look at programs offered in a variety of departments and, as noted above, even independent of formal academic departments.

The more common departmental names are:

As noted above, some schools also sponsor interdisciplinary programs under the name of "Computational Science and Engineering" or "Scientific Computing" that are listed independent of departmental degree programs. Note also that some schools (e.g, Stanford, Univ of Illinois, UC San Diego) may have several graduate programs related to computing, each housed in a different department.

Undergraduate Preparation

For the Ph.D. program, many schools require or strongly encourage candidates to take the GRE area exam in Computer Science. A sample exam is available for downloading from the web site for the GRE and information about what is typically covered in the exam is available at that website. Note that the exam usually covers topics found in Math 161 (Automata) or COEN 175 (Compilers) in addition to foundational topics in software, algorithms, logic design, computer systems. For masters programs, often the GRE is recommended rather than required, but students should check the requirements of a specific program.

Many graduate schools design their graduate programs assuming that some students will have come from their own undergraduate programs and have the same breadth of knowledge. Some Ph.D. programs permit or require students to demonstrate proficiency in several areas and some master's programs require students to take courses in such areas (or test out via an exam). The typical areas include:

and, sometimes, hardware (cf. Physics 70) and artificial intelligence.

At some schools, software is further subdivided into programming languages, operating systems, networking, and compilers.

Students are encouraged to take courses in the major foundational areas of computer science to prepare themselves better for graduate study. Students are also encouraged to take "support" mathematics courses appropriate to computing courses (e.g., Math 122 [Prob and Stats] for COEN 146 [Networks]). Academic advisors can help determine courses that best correspond to the foundational and other areas.

Since the uses for computers is constantly expanding, areas linked with computer science are evolving and multiplying. Newer areas that are rapidly developing include bioinformatics and genetic programming and computation (sometimes listed under artifical intelligence).

Graduate Assistantships and Fellowships

Many graduate schools provide some sort of financial support for full-time students.
Most common are teaching assistantships in which a graduate student holds office hours for an introductory level course and perhaps conducts a problem solving session once a week as part of the course lecture schedule. The stipend covers university fees and is enough to cover room and board expenses as well. Many new graduate students find the network of TAs in their department to be a good source of support and information.

Research assistantships are positions in which a student works for a faculty member in a research capacity, often in conjunction with a project for which the faculty member has received a grant from industry, NSF, NASA, or another funding agency. The research done by the RA can sometimes be incorporated into the student's master's thesis or even a Ph.D. dissertation.

Fellowships are competitive grants given to a student which demands no specific work on the part of the student.

Tuition waivers are sometimes given to advanced graduate students who have already served as TAs or RAs and are completing their degree.

Typically, students apply for such funding in the process of applying for admission to a program, but in most cases the deadline for such applications is significantly earlier than applying without any expectation of funding.

Types of Schools

There is no school that is perfect for everyone. Some are very high-powered with an international reputation (e.g., MIT, Stanford, Carnegie-Mellon, Univ. of Illinois, UC Berkeley). Some are noted for certain specialities (Univ. of North Carolina for Graphics, MIT and Univ. of Texas at Austin for Artificial Intelligence). Some are noted in a local area because of links to local industry and the service they offer in providing a sort of "continuing education" for younger employees on a master's level (e.g., SCU, LMU).

For those students interested in broadening and deepening their knowledge yet not immediately interested in doctoral work or who are attracted to industry, there are excellent graduate programs which provide a quality education at smaller schools, often near their places of employment (e.g., San José State, Santa Clara). Such programs (such as the one at Santa Clara) are designed for students who might be employed full-time and are often subsidized by employers.

Other Recommendations

It can be very helpful to visit a campus, either before applying or after acceptance (and before making a final decision). There is no substitute for first-hand contact with faculty, staff, campus ambience, and especially other graduate students. Current graduate students can provide answers to questions in ways that cannot be found via any other source!

Resources found on the general "Math/CS Department WWW Resources" web page under the "Resources in Computer Science" listing regarding "Graduate School Information" should be examined. Of particular usefulness can be the various rankings of graduate programs and the "Graduate Assistantship Directory" from the Association for Computing Machinery (ACM) which lists, in addition to information about graduate student financial support, other useful data about departments (including number of faculty, specializations of faculty, number of graduate students, etc.). (Unfortunately, not all major schools submit the information for web publishing via this medium.)

Information found on the "WWW Resources" web site regarding preparation for graduate studies in Mathematics may also be useful (with appropriate modification) for those interested in studying Computer Science. Of particular usefulness is the advice given about letter of recommendation and personal statements.


This page maintained by Dennis C. Smolarski, SJ.
My email address is dsmolarski@math.scu.edu
This information page last updated 22 April 2002.