I am currently a member of the technical staff at Galois, Inc. in Portland, Oregon. I was a Visiting Associate Professor of Computer Science at Harvey Mudd College for the 2013-14 academic year. Previously, I was an undergraduate, graduate student, instructor, and research scientist in the Computer Science department at the California Institute of Technology from September 1992 to August 2006, an Assistant Professor of Computer Science and Systems at the Institute of Technology, University of Washington Tacoma from September 2006 to June 2012, and a Senior Lecturer of Computer Science and Systems at the Institute of Technology from September 2012 to June 2013.

My research is primarily on the application of formal methods to the software development process; I previously led the Applied Formal Methods research group at UW Tacoma. My other research interests include security, distributed and concurrent systems, object-oriented and component-based design (and languages), and computer science theory.

Information about the courses I am teaching/have taught and the papers (and other things) I've written is available on dedicated pages.