Technical Lead

Cape Town, Western Cape, South Africa +2

Since 2018, we have been developing OpenCRVS.

OpenCRVS is an OpenSource, Microservice Node JS powered web application and companion React (Progressive Web Application) to facilitate mobile and low connectivity civil registration in developing nations, and ensure that every individual on the planet is recognised, protected and provided for from birth. You can read all about our project below or on our website and you can learn about our technical approach and architecture in our documentation.


OpenCRVS is critical government infrastructure that must be installed, monitored and maintained in partnership with clients, client support teams and client developers and as a result we are in continuous need of eloquent, leadership level developers and developer operations engineers.


Therefore, we are looking for an eloquent Technical Lead - a hands-on individual who has great Development & DevOps experience leading teams as a client facing contact. They will be required to install and configure OpenCRVS, develop new features and integrations with the OpenCRVS core team and work in partnership with client developers and support staff.

The Technical Lead should provide holistic infrastructure implementation support to countries who are installing and operating OpenCRVS. Activities include:

  • Configuring the OpenCRVS application to meet the requirements of birth and death registration in pilot and implementation projects.
  • Configuring hosting environments, application health monitoring tools and developer operations.
  • Monitoring and maintaining the application health of pilot and implementation OpenCRVS instances.
  • Investigate and resolve technical issues, providing level 3 root cause analysis for hotfixes.
  • Communicating with clients, client support teams, client developers and core team to architect
  • technical requirements for hotfixes, new features or integrations.
  • Communicating effectively with the core OpenCRVS Scrum Master and development team to create
  • new tickets for product development.
  • Hands on development and code review of new OpenCRVS Core features.
  • Assisting client support staff and developers to safely apply hotfixes and software releases.
  • Advising client support staff on how to safely implement hotfixes and releases.
  • Naturally training will be required from the existing Core team members to up-skill the Technical Lead over time. It is critical that the Technical Lead has expert knowledge, confidence and fluency in English.


Experience required:

  • The candidate should have extensive and demonstrable experience in NodeJS development & developer operations on large scale digital products.
  • A positive and inspiring team player, with expert English communication skills, a bright, engaging attitude, passionate about code and excited by mentoring.
  • Solid industry experience (5+ years) as a senior developer in javascript, mentoring junior developers.
  • Demonstrable corporate experience in software development for high quality, high capacity, high
  • traffic, high availability customer-facing websites.
  • Able to write thoroughly tested Node.js & React code in Typescript, using pure functions.
  • Be proactive, and enjoy refactoring and optimizing client & server-side code, to maintain a beautiful
  • codebase and ensure high performance and robustness.
  • Proactive to opt to pair program and show the way forward.
  • Strong fundamentals in computer science, engineering, data structures, and software design.
  • Experience in managing deployed infrastructure - Logging, Versioning and Releasing.


Day to day:

  1. Daily standup meetings with the whole team
  2. Self-directed programming, new feature development, bug fixing or pair programming
  3. Self-directed collaboration with client support & development teams
  4. Code reviews and technical architecture discussions for new features / integrations
  5. Estimation for upcoming tasks
  6. Configuring and deploying OpenCRVS installations
  7. Flagging technical debt, architectural issues and other details of the project we could improve.
  8. Testing
  9. Potential requirement to travel internationally


Essential skills list:

The candidate must have the following essential skills:

  • Expert in Node JS (HapiJS or Express)
  • Expert in React
  • Typescript
  • Maintenance of the Linux & Ubuntu operating system
  • Microservices & Docker
  • Continuous integration (Github Actions)
  • Testing (Jest, Enzyme, Cypress)
  • Agile / Scrum
  • MongoDB databases
  • GIT
  • Yarn package management
  • Bash scripting


Additional skills list:

  • Any experience with the following technologies is beneficial:
  • GraphQL
  • VPN configuration
  • Ansible
  • Maintenance of on-premise, private cloud infrastructure: Docker Swarm or Kubernetes
  • ELK stack
  • Metabase
  • Please bring:
  • Enthusiasm, curiosity, and empathy
  • Readiness to be part of a distributed, international and fully remote team, having strong collaboration and communication skilIs
  • Strong analytical, problem solving, debugging, and troubleshooting skills


Overview of OpenCRVS project

Civil registration (CR) is a process by which a government records vital events occurring in a population, such as births, deaths and marriages. It provides data on life itself and for governments, it provides the sole continuous

source of vital statistics (VS) for evidence-based policy and decision-making.

Without a birth certificate, a child does not exist in the eyes of the law. Everyone should have a legal identity with which to access their rights, basic services and opportunities. Civil registration can be the foundation of each individual’s legal and social identity. The importance of CRVS is captured in the 2030 UN Agenda for Sustainable Development and the Sustainable Development Goals (SDG), in particular the SDG target 16.9 “By 2030, provide legal identity for all, including birth registration”.

Despite government obligations to register all vital events, levels of civil registration remain critically low in the developing world. Globally, around 1 in 4 children under 5 remain unregistered and over 100 countries do not have functioning CRVS systems. Modern digital technologies have the potential to transform CRVS processes based on their ability to extend registration coverage, standardise and streamline processes, and integrate data, all at a lower cost. Current CRVS systems are not delivering on this promise and do not reflect country needs. The advantages of technology are clear.

In response to these needs, we have been leading the development of OpenCRVS, a standards-based, open-source software product that provides for the CRVS needs of all countries as a global good. It is a solution that responds to the needs of its users, both those that will be working with it on a daily basis and those people and institutions that stand to benefit from its functionality. 


Software Developers and Engineers
Africa
80,001-120,000

Subscribe to Job Alerts

Association Hero logoAssociation career center powered by