I’m a senior software engineer based in the heart of London, UK. I have worked for IBM, and I was one of the earliest employees of Casci.ai.
I have experience of consultancy, startup and established company work, working on-site and remotely with a client, and as a lone developer; name a working pattern and I’ve probably done it.
My main weapons of choice are the JVM ecosystem (Java, Kotlin, Clojure…) and Python. I’m competent in modern JavaScript (ES15+), and have been learning Rust.
I know C, but consider it end of life and unsuitable for greenfield software development outside embedded applications, so I wouldn’t be looking to start brand new software projects using it. Common Lisp is also one of my niche competencies, though I’ve never used it professionally. I have some COBOL experience from work around IBM Z mainframes at Big Blue itself.
Some of my specific interests in software engineering involve release engineering and open source supply chain management.
I have a balanced attitude to AI-assisted development. I have experience using Claude Code professionally, but I always urge caution against dependence on AI being allowed to become a single point of failure.
I’ve been running Linux and other open Unix variants for personal use for over 20 years. I’ve done a lot of homelabbing and particularly enjoy FreeBSD on servers. Over that time I’ve seen system administration go from bare metal to virtualisation to containerisation, all of which have their place, and I’m comfortable with the lot.
You can find examples of my personal projects on Codeberg. I no longer use GitHub for personal projects due to its unreliability and being unable to get responses from support.
Outside my paid career I enjoy playing the piano, producing music (mostly gabber and hard techno) and volunteering in mental health.