Code for Africa (CfA) has an immediate vacancy for a Python Software Engineer to join one of our civic technology labs in Lagos, Nigeria, Cape Town, South Africa or Kampala, Uganda.

About the Role

As a Python Software Engineer at CfA, you will be working on a distributed team of software engineers and product managers to build features used by journalists, civil society, government officials, scientists, researchers, and normal citizens across the continent. The work is challenging, fast-paced and always changing.

The ideal candidate has creative problem-solving skills, a commitment to quality, collaborative work ethic and good coding skills.

They would be expected to work in an agile software development team and be conversant with Python frameworks such as Django, as well as be comfortable in managing and deploying services on hosting services such as Amazon Web Services using Docker / Dokku (self-hosted Heroku).

The successful candidate will report to CfA’s Technology Lead and will work with the tech team to build tools and data infrastructure to support substantial growth over the next three years. They will specifically be responsible for development problem-solving openAFRICA, connectedAFRICA, HURUmap, sourceAFRICA and other platforms and their composite parts.

CfA is an advocate for open source software, and the successful candidate would use guidelines and best practices as part of the development work. Also in keeping with CfA values, the engineer will interact with grantees, partners, and the community.

What you’ll do

  • Work closely with project and product managers as well as fellow technologists to implement solutions to software projects within tight deadlines.
  • Embrace emerging standards while promoting best practices in order to deploy stable and scalable environments.
  • Support teams to compile, clean, analyse and publish data
  • Draft technical documentation to help other technologists understand the software solutions ad making sure it’s updated and relevant.
  • Manage your own time, and work well both independently and as part of a team
  • Collaborate with a geographically distributed team of developers.

What you’ve got

  • A Bachelors or equivalent degree in the IT field would be preferred, but not required. Your code portfolio/track-record is as important, if not more, as academic qualifications.
  • At least three years of overall professional experience using Python; ideally with a minimum of 1+ years of using PostgreSQL.
  • Ability to translate software requirements to working products and to effectively collaborate with colleagues who do not necessarily have technical backgrounds.
  • A track record in using git source code management, particularly with GitHub
  • Excellent communication and relationship building skills with an ability to prioritise, negotiate, and work with a variety of internal and external stakeholders
  • A multitasker with the ability to wear many hats in a fast-paced environment. Personal qualities of integrity, credibility, and dedication to the CfA mission.

How to Apply

Fill in this form here by 15 May 2019.


About Code for Africa

Code for Africa (CfA) is the continent’s largest federation of data journalism and civic technology laboratories, with labs in four countries and affiliates in a further six countries.

CfA manages the $1m/year innovateAFRICA.fund and $500,000/year impactAFRICA.fund, as well as key digital democracy resources such as the openAFRICA.net data portal and the GotToVote.cc election toolkit.

CfA’s labs also incubate a series of trendsetting initiatives, including the PesaCheck fact-checking initiative in East Africa, the continental africanDRONEnetwork, and the African Network of Centres for Investigative Reporting (ANCIR) that spearheaded Panama Papers probes across the continent. CfA is an initiative of the International Center for Journalists (ICFJ).


At CfA, we don’t just accept difference – we celebrate it, we support it, and we thrive on it for the benefit of our employees, our products and our community. CfA is proud to be an equal opportunity workplace and is an affirmative action employer. We are committed to equal employment opportunity regardless of race, colour, ancestry, religion, sex, national origin, sexual orientation, age, citizenship, marital status, disability, gender identity or Veteran status. We also consider qualified applicants regardless of criminal histories, consistent with legal requirements. If you have a disability or special need that requires an accommodation, please let us know.

To all recruitment agencies: CfA does not accept agency resumes. Please do not forward resumes to our jobs alias, CfA employees or any other company location. CfA is not responsible for any fees related to unsolicited resumes.