Senior Software Engineer - OpenSRP

Engineering · Nairobi, NRB
Department Engineering
Employment Type Full-Time
Minimum Experience Experienced

Who are we

At Ona, we don't just strive for diversity, we thrive on it. For Ona, diversity has been a spring board for creativity, innovation, and growth. We are committed to giving equal opportunities to employees and applicants regardless of their race, religion, gender, sexual orientation, color, nationality, age, marital status, or pregnancy status.

We're looking for developers who want to build foundational data systems that drive change. Our team has worked on projects that record the social infrastructure of entire countries, tally the winners of national elections, and reduce infant mortality. We build software that solves real problems and you will too.


This position is to work on the OpenSRP team at Ona. OpenSRP is an open source mobile health platform that allows frontline health workers to electronically register and track the health of their entire client population. Read more about OpenSRP.

Qualities we're looking for

Thoughtful coder.

  • You understand the importance of abstractions and interfaces. You keep modules loosely coupled and know that algorithms + data structures = programs.
  • You read and understand existing systems before diving in. You know how to prototype, how to iterate, and when to step back and think it through or ask questions.


  • You are committed to the projects you work on and need to see them through to completion. You understand that solving the user's problem is the end goal.

Lifelong learner.

  • You stay up to date with the latest trends and are excited to learn new languages, tools, and best practices.


  • You thrive in teams and projects that span time zones and cultures.
  • You're ready and excited to travel in order to support projects, no matter how dusty or remote.

Key Responsibilities


  • Contribute and collaborate to the vibrant OpenSRP open source community.
  • Define client needs, system requirements, dependencies between requirements, and expected timelines.
  • Design, architect, extend and build Android client applications.
  • Coordinate and balance priorities of multiple projects and deliverables.
  • Minimum 5 years programming production Java web applications.
  • Minimum 5 years programming production Android client applications.
  • Experience programming with APIs and service based architectures.
  • Experience with databases and their integration into web and Android applications.
  • Strong attention to detail and understanding of architectural dependencies.
  • Strong troubleshooting and problem solving skills.


  • Experience working with remote teams
  • Experience with OpenSRP, OpenMRS, other EMRs
  • Experience with Kotlin, Spring
  • Experience with Postgres, SQLite, other relational, k/v, column-oriented, or log-based databases
  • Experience with Ansible, Terraform, AWS, Alibaba Cloud, other IaaS and infrastructure as code systems
  • Experience with Superset, NiFi, Kafka

To apply

Please send the following

  • Note describing why you are interested in working at Ona.
  • Update resume.
  • Examples of your work. Link to your GitHub page, projects you've completed, or your website.
  • (Bonus points) Build something cool using our API, or extend some software we've written.

Note that resumes will be reviewed as soon as received, only short-listed candidates will be contacted.

Thank You

Your application was submitted successfully.

  • Location
    Nairobi, NRB
  • Department
  • Employment Type
  • Minimum Experience