I am a software engineering PhD student in the Institute of Software Research at Carnegie Mellon University.

I am originally from Calgary Alberta. I completed my undergraduate degree from Queen’s University, in Computer Engineering and Math.

My industry experiences include semidonductor, software, and finance:

  • Machine learning research intern at Microsoft Research Redmond
  • GPU driver developer at AMD on the Display Abstraction Layer team
  • Investment banking analyst at GF Securities, specifically in the IPO industrial team


My research tries to make documentation more accesible for new developers, non-technical stakeholders, and end-users. My goal is to use documentation to help developers automatically write code that is functional and readable. The documentation artifacts I have investigated include requirements documentation (MSR19’), API documentation (ICSE21’), and release documentation (EMSE21’). Specifically, I am interested in:

  • Program synthesis
  • Program analysis
  • Natural Language Processing


I have had the opportunity to be advised by the following list of researchers.