About me: Assistant Professor in the School of Computer Science at Carnegie Mellon University, primarily affiliated with the Institute for Software Research. My research interests span software engineering and programming languages, and especially in how to construct, maintain, evolve, improve/debug, and assure high-quality software systems. My group of brilliant students and collaborators is called squaresLab. I teach software engineering and program analysis at the undergraduate, masters, and PhD levels; direct the CMU undergraduate minor in Software Engineering; and co-direct the REUSE@CMU summer program.
Quick professional bio: Ph.D. and M.S. degrees, Computer Science, from the University of Virginia; B.A., Computer Science, from Harvard College. Before grad school, I spent a year and a half employed as a Software Engineer at IBM in Cambridge, MA, where I specialized in rapid XML processing. My brief time in the Real World substantively impacted the types of research problems I find interesting.
A notably incomplete list of my recent international service includes: DARPA ISAT Working Group (2017-present); PB member, ICSE 2019. PC member, ASE (2015, 2016, 2018), ICSE (2016-2018), ESEC/FSE (2017), ISSTA (2016). Review board member, IEEE TSE; reviewer for TOSEM, SPE, JSS. Local Chair for SPLASH 2015; co-PC Chair ESEC/FSE NIER 2018, SSBSE 2014; SSBSE Student/Short paper track chair, 2017; SSBSE steering committee member (2014-2017).
Relevant trivia: My last name is pronounced “Le-Gwess.”
Coverage, links of interest:
Talk: Fall 2017, O’Reilly’s Velocity NYC, on Automated Program Repair: Video (on Youtube)