I have worked with everything from assembly and C to F# and Elixir. I have a strong interest in programming language and runtime platform design; I invariably end up reading the formal specifications of the languages I use, and I have designed languages of my own. I am comfortable stating that I have an above-average understanding of the programming languages I use.

I have many years of experience working on cross-platform projects targeting Windows, Linux, and macOS at various levels of abstraction. I am, for better or worse, intimately familiar with many of the nasty quirks and pitfalls of each operating system. I have also worked with most of the major processor architectures in use today - x86, ARM, RISC-V, MIPS, and others.

When necessary, I have reverse engineered both native and managed applications and libraries for the sake of interoperability, bug fixing, security research, or just plain old curiosity.


I have created several open source programs and projects, some of them more complete than others:

I have contributed to many others:


I have worked for the following companies and organizations:

  • Microsoft (2016-2019): Runtime engineer working on the Mono virtual machine and related tooling
  • Xamarin (2013-2016): Runtime engineer working on the Mono virtual machine and the Xamarin.Android, Xamarin.iOS, and Xamarin.Mac products
  • Mono Project (2012-2012): Google Summer of Code mentor overseeing a student's continued work on the CIL assembler and disassembler tools
  • Xamarin (2011-2012): Intern working on the internal build system for Xamarin.Android and Xamarin.iOS documentation
  • Mono Project (2011-2011): Google Summer of Code student working on C# implementations of the CIL assembler and disassembler tools