Intern / Junior Software Engineer

Job description

Intern / Junior Software Engineer
PAD Kenya runs an SMS platform that offers agronomic advice to 330,000 registered farmers. The platform is custom-built in Erlang and offers functionality for developing SMS-based surveys and other tools. The system is hosted in a distributed manner on AWS, with deployment built around Docker. We are looking for a software engineer or intern with an interest in functional programming, who is comfortable working in Linux.
Organization background
PAD is a US-based non-profit organization with a mission to support smallholder farmers in developing countries by providing customized agricultural information and services that increase productivity, profitability, and environmental sustainability. PAD is pioneering a model for agricultural extension: delivering farmers personalized agricultural advice via their mobile phones. PAD implements this model in collaboration with partner organizations and gathers evidence on its impact. PAD aims to improve the lives of 100 million farmers in developing countries with its services.
The initial phase of PAD’s work consisted of testing the impact of similar mobile phone-based agricultural extension services in multiple contexts across the developing world. That research found that while careful attention to design and context and careful evaluation was critical, mobile phone-based agricultural extension could increase adoption of appropriate farm management practices, yields, and incomes, with point estimates suggesting a benefit cost ratio of 10/1. Based on our initial evidence around a proof of concept technology, PAD began working with partners capable of scaling and further testing this approach, while simultaneously continuing to build its own research efforts.
A key element of our approach is helping partners with wide reach such as governments, contract farming organizations, telecommunications firms, agribusiness, and NGOs to design, build, evaluate, and improve customized mobile phone-based agricultural advisory systems. We help partners structure and improve their service offerings through incorporation of the latest availability technologies and data as well as insights from behavioral economics and social learning theory. Taking a global approach, we bring experience on what has worked elsewhere to every engagement and continue to optimize to local contexts using A/B testing and rigorous evaluation.
PAD currently has operations in four countries (Kenya, Ethiopia, India, Pakistan), is advising a partner in Rwanda, and is working towards new endeavors in Ecuador and Uganda. These opportunities have allowed PAD to reach over 900,000 farmers by 2019, both with our own services and research efforts as well as through partnerships.
 Responsibilities
The Software Engineer or intern will be responsible for the following main tasks:

Development of platform functionality and content
Development of data flows
Administration and monitoring of the running system
Technical support where necessary

Qualifications
Required Qualifications and Experience:

Programming experience in a production environment
Familiarity with Linux

Desirable:

Experience with functional programming (Erlang)
Deployment experience using Docker (swarm)
Familiarity with git
Familiarity with one or more of Python/R/SQL

 Position details

Part-time or full-time, dependent on preferences and experience
Start date: ASAP
Location: Nairobi, Kenya
Compensation: Negotiable
To apply: Please fill out our online application form with your CV attached on our website.