Senior Developer

We’re looking for an experienced developer to help develop our open source information application platform, Haplo, and Haplo Research Manager, an exciting new product for Universities.

Information for recruitment agencies
We have appointed a recruitment agent on a sole agency basis.
If you’re a recruitment agent, and would like to get in touch with us, please use email only: Please don’t phone!

Haplo is a platform for building information applications which manage large volumes of semi-structured data. Having started with a wide and diverse user base, we’re now focusing on applications for Higher Education, particularly for managing research information.

We’re looking for someone who knows how web applications are built, and loves making tools to radically reduce the amount of time your colleagues take to build applications. You’ll be working closely with two other experienced developers, and a small team of impressively capable junior developers.

Your role will be to:

Team leadership and mentoring experience would be a bonus, but if you haven’t done much yet, this would be great place to start.

You’ll need to be a generalist developer who has done a bit of everything, and can pick up anything they don’t know yet in a day or two. We’re very open minded about your experience, but you’ll definitely meet these requirements:

You’ll be working in a spacious, light-filled office in a new business development in Brockley. We believe in good coffee, sensible working hours, and valuing the contribution of every member of the team.

There’s some notes on our technology stack below, and of course, the Haplo code is on GitHub.

We’re funded entirely by revenue from our clients. With no investors, we can focus solely on producing a great product for our happy clients.

We offer a training and development budget, and actively support your professional development.

Haplo is an equal opportunities employer, and welcomes applications from developers from all backgrounds.

You must have a right to work in the UK.

To apply, or if you have any questions, please email


Technology stack

Our technology choices have been driven by a desire for reliability and no surprises. We believe a production system is the last place you want excitement, and don’t want to work out-of-hours fixing things. This means we’ve gone for tried and tested runtimes, languages and deployment methods, but used them in imaginative ways so they’re as productive as anything else available.

This has paid off. We’ve only had a few minutes downtime in all the years we’ve been hosting applications for our customers, and it’s quick and easy to build new features and extend existing capabilities.

We’ve taken a polyglot approach, using the best language and approach for each task, with the majority of the application running on the JVM. The platform is mainly written in JRuby, Java and JavaScript, with our custom object store implemented as C++ extensions to PostgreSQL. Our infrastructure and deployment tools are written in Python.

Our products and client specific customisations are implemented as server-side JavaScript plugins, which script the rest of the platform. As we build custom applications, we refactor to extend the platform, making future development even easier and faster.

We host the application on our own hardware for control and performance, and because our customers have strict security requirements. We have automated deployment, using Puppet controlled by our own deployment scripts. We can bootstrap a new server or development VM in minutes, with cryptographic assurance that we’re running the code we intend to run. Deploying a new version is one command to publish it, and another command to deploy it, and we release a new version every few days.

But the thing we’re most proud of is the quality of our work. We’ve treated every single bit of feedback and support request as a bug report, and fixed it. This dedication to quality and the user experience mean our users are delighted with our work, don’t need to call us for help, and are a pleasure to work with.


Information for recruitment agencies

We have appointed a recruitment agent on a sole agency basis.
If you’re a recruitment agent, and would like to get in touch with us, please use email only: Please don’t phone!