2020: I’m a software engineer at Facebook, in London.
I spent the 2000s completing a PhD in computer science at UNSW in Sydney, developing new approaches to dynamic extension and hot swapping features for the Haskell programming language. I also worked on compiler optimizations for GHC, leading to “stream fusion” (parodied in this comic strip). At the same time I squeezed in a lot of open source hacking, and co-wrote “Real World Haskell”, a book on Haskell programming.
I then worked at Galois, Inc. in Portland, Oregon, for four years, as a researcher doing Haskell programming for high assurance systems — particularly using DSLs and compiler technology.
I moved to New York in 2011 to build trading systems in Haskell for Standard Chartered Bank, with stints in Singapore and Hong Kong, eventually landing in London. Over 6 years I built a team of 40 Haskell devs writing code for all parts of the financial markets business at SCB.
In 2017 I joined Facebook as engineering manager for the Infer static analysis team. I then managed the Testing + Verification (T+V) org within Facebook, from 2017-2020, growing it to 5 teams and around 50 engineers, spanning everything from testing to type systems and static analysis.
Most recently, I’ve returned to a software engineering role, in Testing & Verification, at Facebook London.
- Email: dons00 (at) gmail.com
- Twitter: @donsbot
- You can find me on LinkedIn.
- I was dons on the #haskell IRC channel, Reddit and YCombinator
- I formerly enjoyed anwering questions on Stack Overflow
Finally, I work on a lot of open source projects.