Search | Directories | Reference Tools
UW Home > Discover UW > Student Guide > Degree Programs 

Computer Science and Engineering

Department Overview

AC101 Paul G. Allen Center for Computer Science and Engineering

UW Computer Science & Engineering (CSE) educates students to become leaders in the design and implementation of the computing systems that touch every aspect of modern society. CSE is widely recognized as one of the top programs in the world, with passionate faculty bringing the latest advances into the classroom and the lab.

CSE offers two undergraduate degrees: Computer Science (through the College of Arts & Sciences) and Computer Engineering (through the College of Engineering). While the degree requirements differ in some details, undergraduate majors working toward either degree have the same broad opportunities to take the wide array of courses that CSE offers. Many of our graduates go on to careers at the world's great technology companies, from the largest industry titans to the smallest start-ups. Others join innovative companies and non-profit organizations outside the traditional computing industry to use software, hardware, and data to solve the world's greatest challenges. Still others go on to challenging graduate programs in a variety of fields.

At the graduate level, CSE offers (1) an integrated Master's program for some of our undergraduate majors seeking a deeper education before leaving campus, (2) an evening Master's program for currently employed software professionals, and (3) a PhD program for students seeking a research career.

The field of computing is broad and growing, and CSE's course catalog reflects this breadth. Beyond the popular introductory programming courses taken by thousands of students from every major on campus, our courses cover everything from the mathematical foundations of what computers can and cannot do; to hands-on experiences building software and hardware artifacts with a range of programming languages and tools; to advanced courses in software engineering, human-computer interaction, computer graphics and animation, artificial intelligence, machine learning, large-scale data management, natural language processing, computer networking, computational biology, robotics, computer security and privacy, and much more.

Computers are the most flexible and powerful machines ever created. While the applications of computing continue to grow and change, the core magic of CSE is timeless: computer scientists and engineers combine creative problem-solving, rigorous design, and the creation of algorithms, software, and hardware systems to build solutions that change the world.

Undergraduate Program

Adviser
101 Paul G. Allen Center for Computer Science and Engineering, Box 352350
(206) 543-1695
ugrad-advisor@cs.washington.edu

The Department of Computer Science and Engineering offers the following programs of study:

  • The Bachelor of Science in Computer Engineering degree
  • The Bachelor of Science degree with a major in computer science (see Computer Science in the Arts and Sciences section of this catalog)

The core requirements of the two undergraduate majors are similar. The computer engineering major includes a general foundation in engineering fundamentals to enable interdisciplinary work with other departments in the College of Engineering and the University as a whole. It may be more appropriate for students who are interested in building systems that include both hardware and software components and that must be engineered to meet a variety of cost and performance constraints.

The computer science major may be more appropriate for students who want to earn a double major with another College of Arts and Sciences program, who want the additional flexibility of the computer science requirements (the computer engineering major has more required courses and fewer electives), or who may be more interested in the design of software systems and applications.

Bachelor of Science in Computer Engineering

Suggested First- and Second-Year College Courses: MATH 124, MATH 125, MATH 126; PHYS 121, PHYS 122; CSE 142, CSE 143; English composition.

Department Admission Requirements

Applicants are considered in two groups: Direct Admission and Regular Admission. Admission is competitive. Completion of minimum requirements does not guarantee admission.

  1. Direct Admission: Computer Science and Engineering enrolls up to 30 percent of its incoming class directly out of high school, prior to completion of university-level prerequisites. Freshman applicants to the University listing Computer Science or Computer Engineering as their intended major are automatically considered. Competitive applicants have taken calculus and at least one year of laboratory science (preferably physics) upon entering the University. Admission is for autumn quarter only.
  2. Regular Admission
    1. Minimum 2.0 grade in each of the following courses: MATH 124, MATH 125, MATH 126 (or MATH 134, MATH 135, MATH 136); PHYS 121; CSE 142, CSE 143; and at least five credits of English composition.
    2. Admission is for autumn or spring quarter. Application deadlines are July 1 for autumn quarter and February 1 for spring quarter.
    3. Individual application prerequisites may be waived or substituted with departmental permission for matriculated students who have excelled in CSE introductory courses. Information is available from the department adviser.

Graduation Requirements

180 credits as follows:

General Education Requirements (83 credits)

  1. Written and Oral Communication (12 credits): 5-credit course in English composition from the University-approved list; HCDE 231; 4 credits of UW approved writing (W) or additional UW approved composition (C) courses.
  2. Visual, Literary, & Performing Arts (VLPA) and Individuals & Societies (I&S) (30 credits): Minimum 10 credits required in each area.
  3. Natural World (41 credits):
    1. Mathematics (15-18 credits): MATH 124, MATH 125, MATH 126 (or MATH 134, MATH 135, MATH 136); MATH 308 or MATH 318 (waived if MATH 136 taken)
    2. Science (20 credits): PHYS 121, PHYS 122, and 10 additional credits from the list of approved natural science courses in the CS&E handbook
    3. Mathematics or Science (3-6 credits): 3 to 6 additional credits of math/science (to bring total to 41) chosen from approved natural science courses in the CS&E handbook: STAT 390, STAT 391, STAT 394, MATH 307, MATH 309, MATH 334, MATH 335, AMATH 351, or AMATH 353 (STAT 391 recommended)

Major Requirements (72 credits)

  1. Required Courses (36 credits): CSE 142, CSE 143, CSE 311, CSE 312, CSE 332, CSE 351, CSE 369, CSE 371/E E 371, E E 215 or E E 205
  2. CSE Electives (36 credits):
    1. One course chosen from: CSE 403, CSE 474/E E 474, or CSE 484
    2. Three additional courses chosen from the computer engineering systems electives list in the online CSE handbook
    3. Two additional courses chosen from the CSE core course list in the online CSE handbook
    4. A design capstone course from the approved list in the CSE handbook.
    5. 4 credits of College of Engineering courses from the CSE elective list
    6. Additional (0-5 credits) CSE electives to being total CSE electives to 36 credits
  3. Minimum 2.0 grade for any course applied to the major, Natural World, or Written and Oral Communications requirements. Transfer students must earn a minimum of 24 graded credits toward the major through the UW.
  4. Free Electives (20-25 credits, to bring total for the degree to 180)

Student Outcomes and Opportunities

  • Learning Objectives and Expected Outcomes:

    Engineering Quality: Graduates engage in the productive practice of computer engineering to identify and solve significant problems across a broad range of application areas.

    Leadership: Graduates engage in successful careers in industry, academia, and public service, providing technical leadership for their business, profession, and community.

    Economic Impact: Graduates enhance the economic well-being of Washington State through a combination of technical expertise, leadership, and entrepreneurship.

    Lifelong Learning: Graduates adapt to new technologies, tools, and methodologies to remain at the leading edge of computer engineering practice with the ability to respond to the challenges of a changing environment.

    The computer engineering undergraduate degree is housed in the College of Engineering and is thereby accredited by the Engineering Accreditation Commission of ABET, 111 Market Place, Suite 1050, Baltimore, MD 21202-4012, telephone: (410) 347-7700. The department has adopted the following student outcomes. Upon graduation from the computer engineering program, students have:

    1. An ability to apply knowledge of mathematics, science, and engineering
    2. An ability to design and conduct experiments, as well as to analyze and interpret data
    3. An ability to design a computing system, component, or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability
    4. An ability to function on multi-disciplinary teams
    5. An ability to identify, formulate, and solve computer engineering problems
    6. An understanding of professional and ethical responsibility
    7. An ability to communicate effectively
    8. The broad education necessary to understand the impact of computer engineering solutions in a global, economic, environmental, and societal context
    9. A recognition of the need for, and an ability to engage in life-long learning
    10. Knowledge of contemporary issues
    11. An ability to use the techniques, skills, and modern computer engineering tools necessary for engineering practice.

  • Instructional and Research Facilities: The department is housed in the state-of-the-art Paul G. Allen Center for Computer Science and Engineering. The Allen Center includes more than 20,000 square feet of laboratories, nearly 1,000 computer systems, and more than 50 terabytes of storage. Gigabit connectivity is provided to every desktop by more than 60 miles of data cabling, and wireless access is available throughout the building.

    CSE general-purpose laboratories support the diverse set of hardware and software platforms required for a cutting-edge education in the field. CSE special-purpose laboratories provide tailored support for activities such as mobile robotics, computer graphics, digital design, motion capture, embedded systems, laser scanning, educational technology, networking, and artificial intelligence.

    The Allen Center is one of the finest computer science and computer engineering facilities in the nation. All of its capabilities are available to all CSE students.

  • Honors Options Available: With College Honors (Completion of Honors Core and Departmental Honors requirements). With Honors (Completion of Departmental Honors requirements in the major). See adviser for requirements.

  • Research, Internships, and Service Learning: Internships and co-op opportunities are available for computer science undergraduates. See www.engr.washington.edu/coop and careers.washington.edu for information.

  • Departmental Scholarships: CSE has a limited number of scholarships available to current CSE majors. Scholarship information is listed at www.cs.washington.edu/education/ugradscholars/scholarships.html.

  • Student Organizations/Associations: A student chapter of the Association for Computing Machinery (ACM) operates within CSE. The ACM helps to coordinate new student orientations, research nights, technical talks, and various tutorials.

Graduate Program

Graduate Program Coordinator
AC101 Paul G. Allen Center for Computer Science and Engineering, Box 352350
(206) 543-1695
grad-admissions@cs.washington.edu

The Department of Computer Science and Engineering offers programs of study leading to the degrees of Master of Science and Doctor of Philosophy. Students can pursue full-time graduate study leading to a PhD with an integrated MS. Students can also pursue part-time graduate study in the evening, leading to an MS. Moreover, current undergraduate computer science and computer engineering majors can apply to a full-time MS program integrated with the bachelor's degree. Programs are designed to provide considerable breadth of knowledge, as well as depth in an area of specialization.

CSE has a large faculty, with expertise across the range of modern computing topics and with considerable focus on several interdisciplinary topics. Topics in graduate-level courses and opportunities for independent research reflect this breadth.

Combined Bachelor of Science/Master of Science - 5th year Program

Admission Requirements

Open only to students currently enrolled as computer science or computer engineering majors at the University of Washington. Students must apply and be admitted to be eligible for this master's degree. To apply, students must complete all required 300-level CSE courses for their CS or CE degree. Applications are generally accepted once a year in the spring.

Degree Requirements

40 credits, as follows:

Students complete master's requirements primarily through a combination of approved coursework from the PhD-track master's courses, the Professional Master's Program courses, and 400-level courses.

  1. Minimum 36 credits of approved graded 400-level and 500-level courses except as substituted by research credit:
    1. Minimum 32 credits in computer science and engineering courses. Students who wish to substitute courses in other fields for computer science and engineering courses may petition to do so by presenting a coherent course plan and written justification for this plan to the program adviser for approval by the start of their master's degree program.
    2. Minimum 20 credits from 500-level computer science and engineering 4-credit graded courses or other approved computer science and engineering graded coursework at the 500-level.
  2. Four additional credits of computer science and engineering research colloquia (CSE 519 or CSE 520) or single-credit research seminars (CSE 590).
  3. Students may substitute up to 12 credits of CSE 600, which includes a final written report on research, in place of graded computer science and engineering courses in 1.a. above. Of these, 4 credits of research may be substituted for graded credits in 1.b. above.
  4. Subsequent to admission to the master's program, students must complete:
    1. Either an approved internship/co-op or at least 3 credits of computer science and engineering research.
    2. At least one approved course from the computer science and engineering Integrated Project (capstone) course list. These include new 500-level capstone-style courses to be developed as well as CSE 428, CSE 454, CSE 441, CSE 460, CSE 468, CSE 477, and CSE 481.
  5. Courses taken prior to completion of the bachelor's degree may apply to the master's requirements only if all the following points are met:
    1. Courses numbered 500-level or higher
    2. Courses fulfil master's requirements as outlined above.
    3. Courses taken after a student is admitted to the BS/MS program
    4. Credits do not satisfy any undergraduate requirements, such as departmental requirements or general elective credits.
    5. A maximum of 12 graduate credits taken as an undergrad may apply to the master's degree.

Master of Science

Degree Requirements

40 credits, as follows:

Non-Thesis Option
  1. 20 credits in courses numbered 500 or above; 30 credits in CSE courses. 10 credits may be in one or more supporting fields
  2. MS qualifying evaluation. The faculty assesses whether the student has satisfactorily completed a breadth requirement and an independent project requirement as described below.
  3. A breadth requirement, satisfied through coursework. The required course list may change from time to time. Students may meet requirements in place when they are admitted. Students must take one course in four of five areas below plus two additional courses in any area (18 credits total) for graded credit (a waiver is possible for graduate courses taken elsewhere):
    1. Theory: CSE 521, CSE 525, or CSE 531
    2. Systems: CSE 548, CSE 550, CSE 551, CSE 552, CSE 561, or CSE 567
    3. Programming Systems: CSE 501, CSE 503, CSE 505, CSE 507, or CSE 544
    4. AI: CSE 515, CSE 546, CSE 547/STAT 548, or CSE 573
    5. Applications: CSE 510, CSE 512, CSE 517, CSE 527, CSE 557, CSE 564, CSE 576
    6. Non-CSE: GENOME 540; HCDE 544 or INSC 570 (Non-CSE courses do not belong in any of the five areas above.)
  4. An independent project completed under the supervision of a primary and a secondary faculty adviser. A written summary and an oral presentation are required.
Thesis option
  1. 9 credits CSE 700, master's thesis - a written thesis acceptable to a CSE Supervisory Committee and an oral examination on the thesis work
  2. Of the 31 remaining credits,
    1. 24 credits in CSE courses
    2. At least 16 credits numbered 500 or above
    3. 7 credits may be in one or more supporting fields such as engineering, mathematics, natural sciences, business administration, linguistics, philosophy, psychology, or medicine.

Professional Master's Program

Degree Requirements

40 credits, as follows:

Eight 4-credit PMP (Professional Master's Program) courses (determined in consultation with an adviser) and other courses for 8 additional credits. The additional credits may be earned through participation in the department's colloquium series, which features leading-edge researchers and developers in computer science from around the world. Students who take one course per quarter, plus 1 credit of colloquium, complete the program in two-and-a-half years.

Doctor of Philosophy

Admission Requirements

Most entering students are expected to have a solid background in computer science, including programming, machine organization, data structures, discrete mathematics, automata theory, and programming systems (i.e., the equivalent of CSE 321, CSE 322, CSE 326,, and CSE 378, and either CSE 401 or CSE 451). Some exceptions are made for otherwise promising students. Graduate Record Examination scores are required, earned within the preceding five years. The Computer Science and Engineering Graduate Program home page for prospective students gives full details of application procedures.

Application deadline is December 15 for both U.S. and international students for autumn quarter admission.

Degree Requirements

90 credits, to include:

  1. PhD qualifying evaluation, to include:
    1. A breadth requirement, satisfied through coursework. The required course list may change from time to time. Students may meet requirements in place when they are admitted.
    2. One course in four of five areas below plus two additional courses in any area (18 credits total) for graded credit (a waiver is possible for graduate courses taken elsewhere):
      1. Theory: CSE 521, CSE 525, or CSE 531
      2. Systems: CSE 548, CSE 550, CSE 551, CSE 552, CSE 561, or CSE 567
      3. Programming Systems: CSE 501, CSE 503, CSE 505, CSE 507, or CSE 544
      4. AI: CSE 515, CSE 546, CSE 547/STAT 548, or CSE 573
      5. Applications: CSE 510, CSE 512, CSE 517, CSE 527, CSE 557, CSE 564, CSE 576
      6. Non-CSE: GENOME 540; HCDE 544 or INSC 570. (Non-CSE courses do not belong in any of the five areas above.)
    3. An independent project completed under the supervision of a primary and a secondary faculty adviser. A written summary and an oral presentation are required.
  2. General examination. The applicant must demonstrate depth of knowledge in a principal area acceptable to the PhD Supervisory Committee.
  3. At least 90 credits of coursework, at least 40 of which are numbered 500 or above. 45 credits should be in courses chosen from the computer science course list. At least two CSE courses numbered 500 or above (or approved courses in related disciplines) must be taken for graded credit in addition to courses taken to satisfy the breadth component of the qualifying evaluation. Coursework taken toward the MS degree is applicable toward the PhD degree.
  4. Two quarters of teaching assistantship within the department
  5. Dissertation acceptable to the Supervisory Committee. Students must register for at least 27 credits of CSE 800 (Dissertation).
  6. Oral examination on the dissertation work.

Assistantships

Research and teaching assistantships are allocated on the basis of scholastic excellence and potential. All students accepted are awarded three years of funding. Students applying for assistantships starting in autumn quarter should complete applications to the Graduate School and the department by December 15.