Coursework
A combined page featuring all the Ph.D. coursework information, requirements, and classes.
Jump To A Section
Breadth Courses
Time Schedule and Information School Ph.D. Teaching Schedule
The Allen School Ph.D. course requirements are outlined on the Ph.D. Process webpage. The courses listed here count as Breadth for the specific quarter/year. If you have any questions, please email grad-advising@cs and one of the advisers will connect with you.
Breadth Courses: 2025-2026
Click the icon to go to the MyPlan registration page for each course.
Course offerings are subject to change.
Under construction
- Breadth Group 1: Theory
- CSE 501 – Name – Instructor Name
| Course | Instructor | Category |
|---|---|---|
|
CSE 503: Software Engineering |
Michael Ernst | Group 2: System Design & Implementation |
|
CSE 515: Statistical Methods in Computer Science |
Sewoong Oh | Group 1: Theory, Mathematical, & Formal Reasoning OR Group 3: ML/AI, Interacting with Data, & Statistical Applications |
|
CSE 517: Natural Language Processing 517 Course Pitch |
Rob Minnekar | Group 3: ML/AI, Interacting with Data, & Statistical Applications |
|
CSE 527: Computational Biology 527 Course Pitch |
Su-In Lee | Group 3: ML/AI, Interacting with Data, & Statistical Applications |
|
CSE 541: Interactive Learning 541 Course Pitch |
Kevin Jamieson | Group 3: ML/AI, Interacting with Data, & Statistical Applications |
|
CSE 546: Machine Learning 546 Course Pitch |
Matt Golub, Grover | Group 1: Theory, Mathematical, & Formal Reasoning OR Group 3: ML/AI, Interacting with Data, & Statistical Applications |
|
CSE 554: Systems for Machine Learning |
Baris Kasikci | Group 2: System Design & Implementation |
|
CSE 564: Computer Security And Privacy 564 Course Pitch |
David Kohlbrenner | Group 2: System Design & Implementation OR Group 4: Human-facing |
|
CSE 571: AI-based Mobile Robotics 571 Course Pitch |
Dieter Fox | Group 3: ML/AI, Interacting with Data, & Statistical Applications |
|
CSE 581 Computer Ethics 581 Course Pitch |
Katharina Reinecke | Group 4: Human-facing |
| Course | Instructor | Category |
|---|---|---|
|
CSE 510: Human-Computer Interaction 510 Course Pitch |
James Fogarty | Group 4: Human-facing |
|
CSE 512: Data Visualization 512 Course Pitch |
Leilani Battle | Group 3: ML/AI, Interacting with Data, & Statistical Applications OR Group 4: Human-facing |
|
CSE 525: Randomized Algorithms and Probabilistic Analysis 525 Course Pitch |
Shayan Oveis Gharan | Group 1: Theory, Mathematical, & Formal Reasoning |
|
CSE 526: Cryptography 526 Course Pitch |
Nirvan Tyagi | Group 1: Theory, Mathematical, & Formal Reasoning |
|
CSE 531: Computational Complexity I |
Anup Rao | Group 1: Theory, Mathematical, & Formal Reasoning |
|
CSE 542: Reinforcement Learning |
Kevin Jamieson | Group 3: ML/AI, Interacting with Data, & Statistical Applications |
|
CSE 547: Machine Learning for Big Data 547 Course Pitch |
Tim Althoff | Group 3: ML/AI, Interacting with Data, & Statistical Applications |
|
CSE 550: Computer Systems for All |
Kurtis Heimerl | Group 2: System Design & Implementation |
|
CSE 574: Explainable AI |
Su-In Lee | Group 3: ML/AI, Interacting with Data, & Statistical Applications |
|
CSE 576: Computer Vision 576 Course Pitch |
Linda Shapiro | Group 3: ML/AI, Interacting with Data, & Statistical Applications |
|
CSE 579: Intelligent Control through Learning and Optimization |
Abhishek Gupta | Group 3: ML/AI, Interacting with Data, & Statistical Applications |
All Breadth Courses by Group
Group 1: Theory, Mathematical, & Formal Reasoning
- CSE 505: Programming Languages
- CSE 507: Computer-aided Reasoning
- CSE 515: Statistical Methods
- CSE 521: Algorithms for all
- CSE 525: Randomized Algorithms
- CSE 526: Cryptography
- CSE 531: Complexity
- CSE 534: Quantum Information and Computation
- CSE 535: Theory of Optimization and Continuous Algorithms
- CSE 546: Machine Learning
- CSE 552: Distributed Systems
Group 2: System Design & Implementation
- CSE 501: Compilers
- CSE 503: Software Engineering
- CSE 544: Databases
- CSE 548: Computer Architecture
- CSE 549: High-performance Computer Architecture
- CSE 550: Systems for All
- CSE 551: Operating Systems
- CSE 552: Distributed Systems
- CSE 553: Data Centers
- CSE 554: Systems for Machine Learning
- CSE 561: Networks
- CSE 562: Mobile Systems & Applications
- CSE 564: Security
- CSE 567: Principles of Digital System Design
Group 3: ML/AI, Interacting with Data, & Statistical Applications
- CSE 512: Data Visualization
- CSE 515: Statistical Methods
- CSE 517: Natural Language Processing
- CSE 527: Computational Biology
- CSE 528: Computational Neuroscience
- CSE 529: Computational Genomics
- CSE 541: Interactive Learning
- CSE 542: Reinforcement Learning
- CSE 543: Deep Learning
- CSE 546: Machine Learning
- CSE 547/STAT 548: Machine Learning for Big Data
- CSE 556: Fabrication
- CSE 557: Graphics
- CSE 562: Mobile Systems & Applications
- CSE 571: Robotics
- CSE 573: Artificial Intelligence
- CSE 574: Explainable Artificial Intelligence
- CSE 576: Vision
- CSE 579: Intelligent Control through Learning and Optimization
- CSE 582: Ethics in Artificial Intelligence,
- Genome 540: Computational Molecular Biology
- INSC 571: Quantitative Methods in Information Science
Group 4: Human-facing
- CSE 510: Human-Computer Interaction
- CSE 512: Data Visualization
- CSE 513: Disability Inclusion for Technologists
- CSE 556: Fabrication
- CSE 557: Graphics
- CSE 564: Security
- CSE 580: Computer Science for Social Good
- CSE 581: Computing Ethics
- CSE 582: Ethics in Artificial Intelligence
- EDCI 582: Design Experimentation & Implementation in Context
- HCDE 544: Experimental & Quasi-Experimental Research Methods
- HCDE 545: Qualitative Research Methods
- INSC 570: Research Design
- INSC 571: Quantitative Methods in Information Science
- INSC 572: Qualitative Methods in Information Science
CSE++ Courses
In addition to the 5 Breadth courses, in order to complete the required coursework for the Ph.D., students must take 2 courses from the CSE++ list if they haven’t already done so. CSE++ courses include:
- Graded Ph.D.-level courses numbered 500 and above in CSE (including additional Breadth courses).
- Graded Ph.D.-level courses numbered 500 and above in related disciplines such as EE, MATH, A MATH, HCDE, INSC (Information School Ph.D.), STAT, LINGUISTICS, and GENOME.
- Additional pre-approved CSE++ courses from disciplines not included in the options above are: EDCI 510, EDCI 581, ME 564, ME 565, BIME 532, and NEURO 545.
Courses not on the CSE++ list may be approved on a case-by-case basis. Students who wish to request approval for additional courses should send the Director of Graduate Student Services a document including the course name and description, a syllabus or course website, a paragraph explaining why the course should be approved, and proof of faculty advisor endorsement.
These final courses can be completed at any time during the Ph.D. program.
CSE 590/591 seminars do not count toward this requirement.
Note:
HCDE 544 and INSC 571 cannot both be used toward the CSE Ph.D.
HCDE 545 and INSC 572 cannot both be used toward the CSE Ph.D.
Graduate Special Topics Courses
If you have any concerns or questions, feel free to reach out to the Instructor listed (for course content questions) or grad-advising@cs (for general registration troubleshooting). You can also schedule an appointment with a grad adviser if needed. If you are interested in taking a CSE 500-level course and need an add code (any non-major), then please review the enrollment petition information on the CSE Non-Major Registration page under “Ph.D./Doctoral Courses (CSE 500 level)”.
Each section has a field designated Non-major Enrollment that provides information on whether the course allows for students outside the Allen School Ph.D. program and how to apply if it does. If you are an Allen School student (Ph.D. or 5th-year), you typically will not need an add code or to apply for enrollment. You can contact grad-advising@cs for registration assistance if needed.
The section marked with an Mailing List: is the mailing list for the course. You’re welcome to use it to contact the instructors for questions.
599s – Special Topics in Computer Science
CSE 599 (TBD): TBD
- Instructor: Mitali Bafna
- Non-major Enrollment: Process Info || CSE Doctoral Course Enrollment Petition
- Time & Location: TBD || TBD || TBD
Description: TBD
Prerequisites: TBD
CSE 599 (TBD): Social Reinforcement Learning
- Instructor: Natasha Jaques
- Non-major Enrollment: Process Info || CSE Doctoral Course Enrollment Petition
- Time & Location: TBA || TBA
Description: How can we accelerate AI when learning in an environment with other intelligent agents? This course focuses on Social Reinforcement Learning in multi-agent and human-AI interactions. After reviewing the basics of deep reinforcement learning (RL), we will cover RL fine-tuning of large language models (LLMs), including RL from human feedback, and multi-turn RL. We will then turn our attention to multi-agent RL, examining the complexities of modeling, learning from, and coordinating with other agents. Topics will include zero-shot coordination with humans, learning from human feedback, and emergent complexity. The course will then link these two perspectives, and show how techniques developed for learning from other agents can provide a new path for training safer and more effective language models.
The course is designed to be a research project course, and help students learn how to successfully complete a research paper on these topics. In addition to reading and discussing relevant research papers, students will submit a team-based final project in the form of a research paper. Although we will cover a brief introduction to reinforcement learning (RL), familiarity with RL and deep learning is encouraged.
Prerequisites: Machine Learning (e.g. CSE 446 or 546) or Deep Learning
TBD
TBD
Collaborative Course Offerings
Collaborative course offerings for 25-26 will be updated as information becomes available.
590s – Research Seminar
CSE 590 (C): Computational Biology
- Instructor:Su-In Lee (she/her)
- 590C Course Website
Description: A taste of current research in Computational Biology (local and non-) + critical reading of literature + presentation skills. Students, with faculty advice, pick and present CompBio papers from recent journals/conferences. Students & faculty also present their own research (mostly in Spring, but may be sprinkled throughout, depending on schedules). Background knowledge of biology is not assumed; come learn!
Non-major Enrollment: The seminar is interdisciplinary, and non-majors are welcome. Email instructor for permission and forward confirmation to grad-advising@cs.washington.edu in order to receive an add code.
Mailing List: See Webpage
CSE 590 (C1): Change Seminar
- Instructor:Kurtis Heimerl (he/him)
- 590C1 Course Website
Description: Change is a group of faculty, students, and staff at the UW who are exploring the role of information and communication technologies (ICT) in improving the lives of underserved populations, particularly in the developing world (though domestically as well). We cover topics such as global health, education, micro finance, agricultural development, and general communication, and look at how technology can be used to improve each of these areas.
Non-major Enrollment: The seminar is interdisciplinary, and non-majors are welcome. Email instructor for permission and forward confirmation to grad-advising@cs.washington.edu in order to receive an add code.
Mailing List: http://changemm.cs.washington.edu/mailman/listinfo/change
CSE 590 (D): Creativity and Computing
- Instructor:Steve Tanimoto (he/him)
- 590D Course Website
Description: Computer scientists ask what it means for a work or process to be “creative” seriously, seeking formal models and tools to help humans and computers define, explore, and augment solution spaces together. We will cover foundational work on computational approaches to creativity as well as modern applications of this work to fields including the visual arts, music, mathematics, and the sciences.
The seminar will consist of weekly discussions of readings that help us understand creative processes more formally and computationally. Participants are asked to take one hour a week for reading preparation, and to co-lead one discussion. We have background readings prepared, and are looking forward to selecting additional readings based on everyone’s research and hobbies. It should be a fun time!
Non-major Enrollment: The seminar is available for all UW students and the content is designed to be widely accessible. Email instructor for permission and forward confirmation to grad-advising@cs.washington.edu in order to receive an add code.
Mailing List: N/A
CSE 590 (E): Computer Science Education Seminar
- Instructor:Ruth Anderson (she/her)
- Course Website: TBA
Description: Are you interested in discussing different approaches to teaching Computer Science? Are you wondering what kind of research people do in CS education? Are you thinking about a career that involves a lot of CS teaching?<br.
A seminar for people interested in discussing topics related to Computer Science education. The format for this quarter will be a weekly discussion of readings from a variety of sources such as CS education conferences (e.g. SIGCSE, ITiCSE, ICER), journal articles on teaching approaches, or excerpts from books on teaching. Participants will be expected to do the readings, participate in weekly discussions, and co-lead one of the discussions.
Non-major Enrollment:Complete the 590E enrollment request form.
CSE 590 (F): Computing And The Developing World
- Instructor:Richard Anderson (he/him)
- Course Website: TBA
Description: The seminar will consist of weekly discussions of readings that help us understand creative processes more formally and computationally. Participants are asked to take one hour a week for reading preparation, and to co-lead one discussion. We have background readings prepared, and are looking forward to selecting additional readings based on everyone’s research and hobbies. It should be a fun time!
- Non-major Enrollment: Email instructor for permission and forward confirmation to grad-advising@cs.washington.edu in order to receive an add code.
CSE 590 (H): HCI/Interactive System Seminar
- Instructor:James Fogarty (he/him)
- Course Website: TBA
Description: A weekly seminar held on Fridays at noon, run by HCI PhD students, where we gather informally to discuss new and foundational HCI literature, get to know one another, and learn together. Typically, it’s a mixture of guest speakers, paper discussions, and informal conversations about HCI research. HCI Seminar is intended primarily for graduate students who do HCI research with CSE faculty members.
Non-major Enrollment: Open to students who are research-active with relevant CSE faculty. Email grad-advising@cs.washington.edu with your request, specifying who you are research-active with, in order to receive an add code.
CSE 590 (J): Dub Seminar
- Instructor:James Fogarty (he/him)
- Course Website: TBA
Description: DUB is a grassroots alliance of faculty, students, researchers, and industry partners interested in Human Computer Interaction & Design at the University of Washington.
Our mission is to bring together an interdisciplinary group of people to share ideas, collaborate on research, and advance teaching related to the interaction between design, people, and technology.
Non-major Enrollment: Student researchers can email instructor for permission and forward confirmation to grad-advising@cs.washington.edu in order to receive an add code.
Mailing List: Dubs Mailing List
CSE 590 (L): Networks
- Instructor:Tom Anderson ()
- Course Website: TBA
Description: TBA
CSE 590 (N): Software Engineering
- Instructor:Rene Just (he/him)
- Course Website: TBA
Description: TBA
Non-major Enrollment: Email instructor for permission and forward confirmation to grad-advising@cs.washington.edu in order to receive an add code.
CSE 590 (P): Programming Languages
- Instructors:Zack Tatlock (he/him), Gilbert Bernstein (he/him),
- Course Website: TBA
Description: TBA
Non-major Enrollment: Email instructor for permission and forward confirmation to grad-advising@cs.washington.edu in order to receive an add code.
CSE 590 (Q): Database Seminar
- Instructor:Magdalena Balazinska (she/her)
- Course Website: TBA
Description: Weekly seminar organized by database faculty and students where we read papers on exciting topics related to data management.
Non-major Enrollment: The seminar is available for all UW students and the content is designed to be widely accessible. Email instructor for permission and forward confirmation to grad-advising@cs.washington.edu in order to receive an add code.
Mailing List: data-science-seminars@cs.washington.edu
CSE 590 (R): Robotics Colloquium
- Instructor:Maya Cakmak (she/her)
- 590R Course Website
Description:
- The Robotics Colloquium features talks by invited and local researchers on all aspects of robotics, including control, perception, machine learning, mechanical design, and interaction. The colloquium is held Fridays between 1:30-2:30pm.
Non-major Enrollment: Email instructor for permission and forward confirmation to grad-advising@cs.washington.edu in order to receive an add code.
CSE 590 (V): Vision
- Instructor:Linda Shapiro (she/her)
- Course Website: TBA
Description: Only for Linda Shapiro’s research students in CSE, ECE and BIME.
Non-major Enrollment: Only students who are doing research with Linda Shapiro.
CSE 590 (W): Create Accessibility Seminar
- Instructor:Jennifer Mankoff (she/her)
- 590W Course Website
Description: The seminar is for students and faculty members to explore research in accessible computing for people with disabilities in the context of human-computer interaction (HCI). The seminar consists of short student presentations of current research results, followed by discussion and critical evaluations the research.
CSE 590 (X):How to PhD II
- Instructor:Anna Karlin (she/her)
- Course Website: N/A
Description: A seminar for first year PhD students focused on enriching students’ sense of belonging, camaraderie and purpose in their first year in the program. The seminar also addresses advising, choosing research problems, and the core skills needed to thrive in the Ph.D. program and beyond, including making engaging presentations and writing clearly, time management and work-life balance. Meets 3-4 times per quarter.
CSE 590 (Y): Computer Security And Privacy Seminar
- Instructors:Franziska Roesner (she/her), Tadayoshi Kohno (he/him), David Kohlbrenner (he/him)
- 590Y Course Website
Description: The focus of this quarter is on papers (to be selected by participants) appearing in recent computer security & privacy or security & privacy-adjacent venues. All enrolled participants are expected to present at least one paper and to attend the rest of the presentations.
Non-major Enrollment: Email instructor for permission and forward confirmation to grad-advising@cs.washington.edu in order to receive an add code.
Mailing List: https://mailman.cs.washington.edu/mailman/listinfo/uw-security-research
CSE 590 (Z): Theory
- Instructor:James R Lee (he/him)
- Course Website: TBA
Description:
591 – Group Projects
CSE 590 (A): Programming Systems
- Instructor: Dan Grossma (he/him)
- Course Website: TBA
Description: TBA
CSE 590 (B): TBA
- Instructor: Rajesh Rao (he/him)
- Course Website: TBA
Description: TBA
CSE 590 (D): Database
- Instructor: Dan Suciu
- Course Website: TBA
Description: TBA
CSE 590 (O): TBA
- Instructor: Luis Ceze
- Course Website: TBA
Description: TBA
CSE 590 (P): TBA
- Instructor: Linda Shapiro
- Course Website: TBA
Description:
CSE 590 (Q): TBA
- Instructor: Luke Zettlemoyer
- Course Website: TBA
Description: TBA