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 Grapher back-end used to create and publish the visualisations
  • tools that support the developers – like automated tests and tools to help us be more effective

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 tiny 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.

Your responsibilities:

  • Ensure the website is up, functional and secure.
  • Maintain and implement new features for the Grapher – our open source tool for creating charts.
  • Automate and optimize internal development processes, both for developers (e.g. deploys) and authors (e.g. categorising charts).
  • Design, scale and maintain our technical infrastructure as our content and database grow.
  • Design and implement internal and external APIs to access our database.
  • Work closely with designers to implement prototypes and products.
  • Be involved in the user interface design process – discuss technical feasibility, suggest options and help establish clear implementation requirements.
  • Iterate quickly and be agile – we work in short release cycles and we deploy often.
  • Present and discuss your projects and decisions with the team, including non-technical team members.
  • Contribute to strategic planning by helping prioritise and establish short-term and long-term goals.

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 elegance.
  • 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 the next version of our CMS – exploring and experimenting with options beyond WordPress.
  • Implement automated bulk importers for external datasets.

Our technology stack:

  • Most of our code is written in TypeScript and we use 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.
  • 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 don't precisely match the criteria. We deeply value passion for our mission and a desire to learn any skills necessary to make an impact.

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