Programming Languages & Software Engineering


Ras Bodik
Programming languages, computer architecture
Luis Ceze

Computer architecture, programming languages, parallel computing, operating systems, energy-efficient computing. 

Alvin Cheung
Data management, programming systems

Software engineering, programming languages

Dan Grossman

Programming languages

Prof. Zachary Tatlock
Formal verification, compilers, security.
Emina Torlak
Software engineering, programming languages, formal methods
Xi Wang
Computer systems, security, and programming languages

Adjunct Faculty

Information School

HCI, software engineering, computing education, end-user programming

Graduate Students
Darioush Jalali
John A Toman
Programming languages, applications of PL techniques to systems
William A Zorn

Affiliate Faculty

Gail Alverson
Cray, Inc.

Software Engineering, Parallel Systems and Programming Environments, Instructor Spring 2007

Microsoft Research

Empirical software engineering, Open Source Software communities, social networks, communication
and collaboration in software engineering, software tools

Preston Briggs
Cray, Inc.

Compilers, language design, and algorithms, especially with respect to parallel computing


programming languages, compilers

Manuvir Das

Programming languages and compilers

Microsoft Research

User interfaces, software engineering and type theory.

Microsoft Research

End-user programming, education, program synthesis, program analysis, formal methods

Simon Kahan
Pacific Northwest National Lab

parallel computing

Microsoft Research

Programming languages and compilers

Microsoft Research

Program verification, programming languages, concurrency, parallel computing

Microsoft Research

Practical application of formal methods in software engineering

Microsoft Research


  • Dan Brown
  • Jonathan Burke
  • David McArthur
  • Suzanne Millstein
  • Mark Roberts