Equip Health Workers

Software tools are used by large organizations supporting thousands of frontline health workers, as well as local organizations and clinics. Learn more about your deployment options.

Explore the Tools

Learn more about the latest software for community health.


Improving our development cycle with continuous integration


May 25, 2017

Author: Marc Abbyad

At Medic Mobile, we aim to build high-quality tools for health workers with a distributed product team (for whom the sun never sets: UTC -9, -5, -3, 0, +3, +5 ¾, +12!). This requires having a smooth workflow and always leaving the code base in a working and stable state for all developers. How do we accomplish this? A development practice called continuous integration.

With continuous integration, code changes trigger the automatic building and testing of the code on a server that mimics the same environment as “live” projects. In this way, we can catch production-specific issues that were missed when testing on the developer’s laptop. Using continuous integration can result in quicker and more stable releases, and a more efficient development cycle.

Developers at Medic can start their day knowing that the code base is stable because of Travis CI, a behind-the-scenes member of our team that provides continuous integration. If a change is going to break the app’s build, developers can spot it before merging it into the master branch, and avoid having to scramble and fix it later. Travis notifies the developer by email, and it can also be integrated with Slack to post in a channel when the build is broken.

As both the number and size of deployments using Medic Mobile increase, our continuous integration needs have grown, too. Deployments have custom forms, workflows, tasks, and dashboards that turn our app into a powerful tool for health workers. We are working towards harnessing continuous integration for all the configurable portions of our app to reliably deploy and update our tools for thousands of users in last-mile settings.

No. 46 of 62