Engineering, Information Technology
JSI is a public health organization dedicated to improving the health of people and communities in more than 70 countries.
Almost 40 years of global experience supports and informs JSI’s work in Ethiopia. Since 1994, JSI has worked in partnership with the government and local civil society organizations to support the Ethiopian government’s health and development priorities.
JSI is working in all regions across Ethiopia, in urban as well as rural areas—though most projects reach the largest population groups by focusing on the four most populous regions.
Operationally, JSI has the integrity of strong management systems, combined with the flexibility of a decentralized structure that meets clients’ and partners’ needs.
Job Title: – eCHIS/CommCare Senior Software Engineer
Position Type: consultant
Reports to: Project Manager
Posting Location: Addis Ababa
Application Deadline: April 7, 2022
John Snow, Inc. (JSI) is a public health management firm, headquartered in the United States, dedicated to improving the health of individuals and communities throughout the world. JSI has been implementing public health work in Ethiopia for over 25 years.
JSI is implementing the five-year Digital Health Activity in Ethiopia, which is funded by the United States Agency for International Development (USAID). The purpose of this Activity is to support the Government of Ethiopia (GOE) to improve the quality of health services and create a sustainable health care system through the use of data for decision making, as well as to provide similar services to other countries in Africa or to respond to a crisis in Ethiopia (as needed). The primary objectives of the Activity are to 1) support information technology systems and data repository at all levels; 2) build a culture of data use; and 3) improve capacity and governance of MOH health information systems management.
We are looking for a Senior Software Engineer who will be responsible for the development, validation, and release of project software, understand user requirements and design, develop test and document software, and He/she is also responsible for ensuring the smooth running of activities and compliance with JSI policies and regulations.
Specific responsibilities of the Software Engineer will include, but is not limited to the following:
- Work with Project Managers and other staff to understand user requirements and design, develop, test and document software that meet these requirements.
- Document and demonstrate solutions by developing documentation, flowcharts, layouts, diagrams, charts, code comments and clear code.
- Efficiently execute the full lifecycle of software development.
- Write well designed, testable and efficient codes and integrate software components into a fully functional software system.
- Develop software verification plans and quality assurance procedures.
- Document code consistently throughout the development process by listing a description of the program, special instructions, and any changes made to the system.
- Respond promptly and professionally to bug reports.
- Tailor and deploy software tools, processes and metrics.
- Provide expert advice to the project team to execute user requirements from stand-point of complying with project plans and industry standards.
- Prepare and install solutions by determining and designing system specifications, standards, and programming.
- Provide timely reports to the supervisor on activity status and issues.
- Occasional travel to user sites to assess product and project performance.
- Supervise other MIS staff supporting software development and/or implementation.
- Perform other duties as assigned
Applicants for this position should possess the following qualifications:
- Bachelor’s degree in a relevant discipline (Software Engineering, Computer Science, etc) is required.
- 8+ years of experience working in software engineering is a must. Hands-on experience in designing interactive applications is a plus.
- Familiarity with software development methodology and release processes is required.
- Familiarity with CommCare’s data collection app builder is required
- Familiarity with the eCHIS App (electronic Community Health Information System) is required
- Experience with test-driven development and distributed version control is preferable.
- Must have deep knowledge of Relational Databases, SQL and ORM technologies.
- Mastery in software engineering tools, especially working on the process of software development using agile methodology is required.
- Strong project management and time management skills must be highly organized and detail-oriented.
- Strong ability to think creatively and strategically.
- Excellent written and verbal English language is required
- Use of project management tools like JIRA, Trello, Slack is desirable.
- Experience in an open-source platform that is used to build Android-based mobile applications is a big plus.