You'll join a small and enthusiastic team who are passionate about continuous improvement and software quality. Things like TDD/BDD, continuous delivery, strong collaboration and DevOps are part of our culture. We're looking for someone to add to the team who has experience and is willing to learn as well as contribute to the community in regard to best practices, key libraries and idioms.
You care about software systems and you believe development involves a lot more than just computers, configs and code. You know getting the best out of a system comes from strong collaboration with the people using it; both on the user side and with the other people in your team. You have worked with distributed systems in Node.js (or similar) and keep abreast of the latest updates in the OSS and Node.js communities. You have used React.js or similar frameworks and can see the relative advantages and disadvantages of using them. You have spent time using cloud computing and appreciate the flexibility and new services on offer as an extension to the applications you help nurture. You care about open-source software and see the value in contributing to the community so that you can help make a difference.
This role is specifically to join the Cambridge team who are building a new open-source, submission and peer review platform, adapting it for our usage while ensuring it is reusable by the community. This is a unique opportunity to have a significant role in the development and adoption of this software system and help make it available for the scientific community. With a mixed range of skills and experience in the various teams working on this product, you'll have people to learn from as much as people to help mentor, with a friendly atmosphere that encourages everyone's development.
Our submission and peer review system uses Node.js, React.js and Docker for deployment to Kubernetes on AWS. We have other production systems that use Python and PHP and this new system in Node.js will share common deployment and hosting tools. The architectures we utilise have many distinct services that communicate using HTTP and queues, all hosted in AWS, so we tend to choose the relevant technology for the task and the people working on it. We'd be interested in you if you're from any background as long as you have a keen understanding of good development practices. Here's a summary of some of the technology we're currently using, but we're open to new ideas:
* Open languages and frameworks (Node.js, Express, React, GraphQL, Webpack, SASS)
* Infrastructure is defined in code and automated using Terraform, Kubernetes and SaltStack
* Relational and document databases (Postgres, Redis, Lucene, Elasticsearch).
* Portable, open server technology (Docker, Docker Compose, Kubernetes, Vagrant, Nginx)
* Open-source continuous integration and testing (Selenium, Mocha, Jenkins).
* Monitoring, logging and metrics (New Relic, BigQuery and Loggly).
The smaller size of the team means you'll be able to get involved in many aspects of technology, innovation and scholarly publishing. We also offer:
* A competitive salary and benefits.
* 25 days holiday, plus bank holidays.
* A communicative and inspiring working environment.
* A newly refurbished and employee designed modern office near the centre of Cambridge, with cycle parking, shower facilities, standing desks, informal working or relaxation areas, free fresh fruit, a fancy coffee machine and snacks in the kitchen.
* A sociable and friendly team with interesting social events and staff membership to University Botanic Gardens.
* The latest in computer equipment, Herman Miller chairs and regular conference visits.
* A flexible approach to working hours and remote working.
* Company pension scheme.
Please send your CV to Click here to contact this recruiter