View Our Website View All Jobs

Software Engineer

BAO Systems is a leading technology company that partners with health and development partners globally.  We are seeking a Software Engineer who is passionate about developing elegant, high-performance web applications to join our international and dynamic team.

DHIS 2 is a web-based, open source data platform used by governments, international development agencies and NGOs in more than 60 countries worldwide. The system is used to improve access and use of information within health, education, sanitation, nutrition, disaster relief and other domains. The platform has become a global standard within international development and has a huge impact on the way health systems are being managed.

DHIS 2 is changing the way developing countries and NGOs manage their health systems and programs through a world class data platform. We are working with PEPFAR to combat HIV/AIDS in Africa, with Doctors without Borders to manage their field hospitals, with Save the children to reduce child morbidity and with ministries in developing countries to improve their health systems, among many others.

At BAO Systems you will specialize in building software features for the DHIS 2 open source platform. You will be part of the design process and have great influence on the end product. You will work on features related to analytics, information retrieval, data synchronization, web APIs and data security. The role requires a passion and ability for finding innovative engineering solutions to complex problems.

Our platform is built API-first with an extensible app architecture. You can find our source code on GitHub. Check out the backend repository and a typical front-end app repository.




  • Develop elegant, testable, high-performance features for the DHIS 2 platform.
  • Collaborate with project managers, services team, other back-end developers and end users.
  • Participate in all aspects of system development: Requirements management, design and implementation of features, testing and retrieving feedback from users.




  • Experience with one or more general purpose programming languages including but not limited to Java, Python, Javascript/NodeJS, Go.
  • Experience with PostgreSQL, MySQL or other relational databases.
  • Experience with development of Web APIs.
  • Experience with Java enterprise frameworks such as Spring and Hibernate is a plus (not required).
  • Working proficiency and communication skills in verbal and written English.




BAO Systems provides equal employment opportunities to all employees and applicants for employment and prohibits discrimination and harassment of any type without regard to race, color, religion, age, sex, national origin, disability status, genetics, protected veteran status, sexual orientation, gender identity or expression, or any other characteristic protected by federal, state or local laws.

Read More

Apply for this position

Apply with Indeed
We've received your resume. Click here to update it.
Attach resume as .pdf, .doc, .docx, .odt, .txt, or .rtf (limit 5MB) or Paste resume

Paste your resume here or Attach resume file