I’m a staff software engineer at Semgrep, where I work on static analysis for code security. Prior to joining Semgrep, I was a PhD student at UT Austin, where I worked on applying formal methods to concurrent and distributed systems. In the distant past, I was lucky enough to live in beautiful Oakland, CA, where I scaled low-level systems and infrastructure at some companies you’ve heard of. Outside of industry, I was a contract developer at Microsoft Research and a computer science instructor at Macewan University and the University of Toronto.
I hold a M.Sc. from the University of British Columbia in rainy Vancouver, BC, where Andy Warfield and I hacked on hypervisor-level dynamic analysis tools. I also hold a B.Sc. from the University of Alberta in chilly Edmonton, AB.
You can watch my talks about fancy type systems, dynamic analysis, operating system scalability, lock-free programming, and library operating systems.
You can read my papers about verified filesystems, hypervisor-level binary translation, full-system time-traveling debugging, and text deanonymization.
My resume is available if you would like to know more.