Full-Stack Developer

Location: Oxford, UK or Remote

Employment: Contractor (with potential to grow into Full Time)

Deadline: hiring on a rolling basis – please apply early, even if you are not available soon

Not the right role for you? See other roles.

At Our World in Data, we believe that understanding how and why the world has changed in the past is vital for making well-informed decisions to make a better future. And we believe that the most important changes in the world – the ones that happen slowly and steadily over many years – are not covered well by the daily news which focus on single events.

This is why we present data and research on the long-term trends that reshape our worldglobal poverty, CO₂ emissions, fertility rates, mental health, and many more topics – and our goal is to find the best ways to communicate this research with a broad audience.

As a developer, you will be working on:

  • infrastructure to scale our growing database
  • tools that empower our readers – like our interactive charts that allow exploring the data
  • tools that support the authors – like the CMS and Grapher back-end used to create and publish the visualisations
  • tools that support the developers – making us more effective at managing data and building our codebase

Why this role?

  • Large impact. We reach a large audience (1 million+ visitors per month) and we rank high on Google Search for queries like CO₂ emissions, population growth, global poverty and others. A lot of people come to us when looking for answers and we try to provide the best resources to answer them.
  • Opportunities to learn. Being a small team, you will have lots of opportunities to develop skills outside your areas of expertise. You won’t be a cog in the machine and you won’t be limited by your job title.
  • Driven by public benefit. Everything you work on will be public. We are a nonprofit and your focus will always be on maximising the benefit of the public – not on maximising profits.
  • Great team. We are a small team reaching a huge audience and we have an overwhelming passion for what we do. We care about doing the best work we can, and we hope you do too.
  • Connections. We have great connections with developers, the data visualisation community, big policy institutions and beyond. We have attended Y Combinator, collaborated on several videos with Kurzgesagt and we frequently work with international and media organisations. You will have a chance to talk and collaborate with great people.

You may be a good fit if you:

  • Have experience working on high-uptime, public-facing production websites.
  • Are expert at writing JavaScript in both client and server-side contexts.
  • Have experience designing relational database schemas and NoSQL database engines.
  • Think systematically about problems and recognise shared behaviours and patterns.
  • Have an exceptional ability for designing programming interfaces at the right level of abstraction, striking a good balance between expressiveness and ease of use.
  • Can quickly learn new technologies and are comfortable working in areas you are not an expert at.
  • Can communicate your process and decisions to a diverse team, and you crave feedback to help you produce your best work.

You might work on:

  • Building the infrastructure to allow anyone to explore our full database of over 70,000 metrics.
  • Designing our database to support more types of data – sub-national, multidimensional data and monthly/daily temporal granularity.
  • Designing an API that exposes our full database to the public.
  • Creating individual country pages which consolidate data we have on each country in the world. These pages will help track each country’s progress towards the Sustainable Development Goals.
  • Implement new features for our Grapher – the internal, open source tool we use to produce our interactive visualisations.
  • Building our CMS and improving the authoring experience.
  • Building data pipeline tools to import and harmonize datasets.

Our technology stack:

  • Most of our code is written in TypeScript; we use Node on the back end and React & MobX on the front end.
  • Our site is fully static and hosted on Netlify, including the interactive charts.
  • We have an internal server running the Grapher back-end – the internal tool we use to create our charts.
  • We use WordPress as a headless CMS.
  • We use a MySQL database as a central store for all the data used in our charts.

How to apply

Email us at jobs@ourworldindata.org with:

  • Your CV, resume, or LinkedIn profile.
  • A sample of code that follows your ideology around software best-practices.
  • A bit about why working at Our World in Data is appealing to you and how you can contribute.

You are encouraged to apply even if you only partially match the criteria. We look for people that are passionate about our mission and can demonstrate excellence in some of the areas that we have listed.

If you have any questions, feel free to email us at jobs@ourworldindata.org.