About Me
Software engineer with a Mathematics MSc. I enjoy using mathematical ideas in my projects, and understanding how things work by building them.
Recent projects include a VM Translator and an assembler (from the course From NAND to Tetris), a grep-style regex engine, and revisiting my ray tracer with photon mapping. I work mostly in C++, with projects in Rust, Haskell, Python and Go.
My professional experience is writing Magik for GE Smallworld, which is GIS software dealing with large-scale geospatial databases.
For more information, see my CV or projects.
This site was generated with a custom-built static site generator from the course on Boot.dev. The CSS and HTML template were AI-assisted.