Core Developer Team Openings
(for remote contractors)

KoBoToolbox, developed by the Harvard Humanitarian Initiative (HHI), is a state-of-the-art, open-source suite of tools for data collection and analysis in humanitarian emergencies and other challenging environments. HHI's mission is to relieve human suffering in war and disaster by advancing the science and practice of humanitarian response worldwide.

We are expanding our core team of developers to meet strong demand from the humanitarian community for our tools and expertise. A significant new phase of updates and enhancements, conducted in coordination with the United Nations Office for the Coordination of Humanitarian Affairs and the UN High Commissioner for Refugees, necessitates changes across both front-end and back-end components of our software suite. At this time, we are looking for:

  • A full-time, back-end developer. We are happy to consider developers with diverse professional experience, provided they are committed to mastering our back-end technologies and already familiar with Python as applied to web applications. Experience with Django or a similar back-end framework is a big plus.
  • A full-time, front-end developer. As above, we welcome your application even if you have not used all the specific technologies in our stack—so long as you have comparable experience and a strong resolve to get up to speed quickly and independently.
For reference, the KoBo environment includes the following, although experience with all of these is not required:

Back-end

  • Python
  • Django (and particularly REST Framework)
  • Celery
  • pytest
  • PostgreSQL
  • MongoDB
  • Redis
  • Node.js
  • NGINX and uWSGI
  • Ubuntu Linux
  • AWS EC2 and S3

Front-end

  • HTML5
  • CSS3 (via SCSS)
  • JavaScript: ECMAScript 2015 (ES6) and CoffeeScript
  • React: JSX and Flux architecture
  • Backbone.js
  • npm, webpack, and Grunt
  • Cypress

Overall

  • XLSForm and XForm
  • Git
  • Docker
  • Travis CI
  • Fabric
  • Jenkins

Those who join our international team will immediately assume a hands-on role with integral responsibilities that include, for example:

  • Writing robust, concise, and reusable code with accompanying tests and documentation;
  • Searching and reading the code base—which spans multiple libraries, projects, and programming languages—to understand existing behavior and conventions;
  • Reviewing other developers' code and providing constructive feedback;
  • Distilling requests from the humanitarian community into technically detailed feature requests (or, sometimes, bug reports!);
  • Communicating with the public in conjunction with our support staff or directly through forums, issue trackers, etc.;
  • Shaping the design and architecture of the overall tool suite collaboratively with the larger team.

Beyond technical acumen, we value curiosity, initiative, persistence, cooperative problem-solving, and egalitarian decision-making. Humanitarians around the world will depend on your work every day.

How to apply

We seek contractors who desire a long-term relationship (ideally one year or more) and who can commit significant time to our project (at least twenty hours per week, or preferably full-time). If your skills and schedule dovetail with our needs, and you are up for the challenging-yet-rewarding work of supporting humanitarians worldwide, please fill out this questionnaire to apply.