Generic placeholder image


My main language is Java, and I know how to build RESTful APIs, microservices, and so on. I've worked on the front end of web apps, and I'm working on increasing my knowledge of modern JavaScript.

I’ve built Python scripts for system-administration tasks and know my way around the Bash shell. I’m happiest on a Mac, but I can cope with Windows. Linux is good.

I’ve worked on all the major database platforms, and know my way round SQL thoroughly.

Going further back, I have a lot of experience in RPG and CL on the IBM System i range and its predecessors.

The bulk of my professional experience is in financial software . My most recent role was in an academic department working on a statistical tool. Before that I had a contract on a UK government project. I’ll consider almost any field.

You can find more details of my career history at my Stack Overflow or LinkedIn profiles. Or see my CV .

Generic placeholder image


I blog here, and write fiction in my spare time. But I’m a capable technical writer too. I think any programmer needs to be able to communicate clearly in writing, and I have written sections of manuals for both technical staff and end-users, as well as making major contributions to internal wikis.

For some other examples of my more technically-oriented writing, see Pass-By-Reference Problem When Using Websphere Application Server , or Some Thoughts On Software Development on my blog.