Senior Open Source Developer & DevOps (Python, Django, React, AWS/OpenStack) at OpenCraft

1 year ago Development & Programming Senior Full-Time

We are a team of veteran open-source developers, working on educational and community-based projects in an open-first environment – and we are looking for new members. By joining us, you will work full-time on open-source, pushing your changes to free software projects upstream through pull requests, contributing features, documentation, or help on public forums. We care deeply about contributing our work upstream. You will see the results of your work reused and recognized across the educational community, increasing access to quality education for everyone, everywhere.


Basic Requirements:

Experience with contributing to free software projects - small contributions are completely fine, but you must have at least one patch or pull request merged in a third-party project, or been a maintainer of an open source project with significant adoption. (Note that you can contribute now to satisfy this requirement - see for example the Open edX release issues, fixing one of these issues guarantees an interview.)

  • Senior developer with 3+ years working with Python
  • Experience with Python web frameworks, specifically Django
  • 3+ years of HTML, Javascript, and CSS (experience with React and/or Typescript is a big plus!)
  • Experience with unit testing
  • Comfortable working in a Linux environment, specifically Debian or Ubuntu
  • Experience with databases: MySQL, MongoDB, PostgreSQL

Online education

We are one of the main contributors to the Open edX project, the main open-source MOOC platform created by MIT, Harvard and many other top universities. It powers sites like edX.org, the MIT Open Learning Library, and the national online learning platform for France. We provide development and hosting for institutions like Harvard Medical School, Harvard LabXchange, Cloudera, Autodesk, and several governments. We are not affiliated with edX.org, but we contribute and work with them on various projects. 

Contracting terms

This is a full-time, permanent contract position. We aim for long-term relationships -- once in, almost all team members stay for many years. 

We care about paying fairly: 

  • Team members set their own compensation level, which is paid based on hours worked (no unpaid overtime!). 
  • When determining your rate, we will expect you to factor in benefits (vacation, healthcare, purchase budgets, etc.) - the idea is to let you pick the benefits that are useful to you, rather than offer one-size-fits-all packages that aren’t always very valuable.
  • We also proactively apply generous raises team-wide, based on the company results at the end of each year. See the details about how we approach compensation in our handbook.

Additional Skills:

You will work on tasks from the following categories, but you can pick up the skills on the job if you haven't mastered these yet:

  • DevOps experience, especially on Debian/Ubuntu servers, Terraform, Vault, Packer, Prometheus, ELK, Docker. We are building a modern infrastructure and having a strong DevOps presence on top of core software engineering skills is a big plus with us.
  • Cloud computing, like AWS or OpenStack
  • Configuration management tools such as Ansible, Consul
  • RabbitMQ, Redis & Elasticsearch
  • Mobile development (iOS and/or Android)
  • Managing clients & projects from beginning to completion (senior developer)
  • Public speaking at conferences (you would present a talk every year at the Open edX Con)

Our recruitment process differs from most other companies - we don’t believe resumes and the traditional interviews to be particularly effective. Often, they tell more about how good someone is at interviewing, rather than at the actual work. So, our initial interview is lighter and easier to pass than in other companies - but we then provide you with real (and paid!) work to see how it works out in reality.

  • Step 1: You apply by filling out this form: https://opencraft.com/jobs/open-source-developer/
  • Step 2: We do two interviews with candidates matching the requirements listed above. The first interview includes a (simple) coding exercise.
  • Step 3: If this works out, we hire you! We start with a 2 months trial period, which allows both you and the rest of the team to fully evaluate how we work together, and is followed by a final review and confirmation. 
🎉 Let Employers Find You!

Employers will see your profile when they are sending a job in your skill.


Create Your Profile   (simple)