Senior Rails Developer
Vital Strategies, headquartered in New York City, is an international public health organization. Our programs strengthen public health systems and address the world’s leading causes of illness, injury and death. We currently work in 73 countries, supporting data-driven decision making, advancing evidence-based public health policies and programs and mounting strategic communication campaigns. Our programs are concentrated in low- and middle-income countries and cities in Africa, Latin America, Asia and the Pacific.
Resolve to Save Lives is a global health initiative of Vital Strategies that aims to save millions of lives by reducing preventable deaths from cardiovascular disease and to prevent infectious disease epidemics. Since September 2017, Resolve to Save Lives has worked closely with low- and middle-income country governments, the World Health Organization, academic and other civil society partners to build capacity for and implement a core package of interventions to reduce cardiovascular disease, the world’s leading cause of death.
Simple is a free, open source app developed by Resolve to Save Lives, and is used by nurses, doctors and population health experts to improve treatment for patients with high blood pressure. Simple is currently operational in multiple states of India as well as in Bangladesh, and is being used to manage more than 200,000 patients across more than 400 clinics, with plans for its deployment in additional program focus countries in 2020. Our goal is to save 100 million lives (The Lancet).
We’re hiring a full time Senior Rails Developer to help us add features to the Rails application and improve the APIs powering Simple. This includes:
You will help extend our API to allow for new features and apps, secure our application to meet security best practices, and ensure that our Rails app is reliable, scalable, and easy to modify. Our code has grown quickly, and you will help make sure that we keep complexity down, clean up technical debt as needed, and write code that doesn’t require extensive commenting and explanation.
User experience is critical to our success, so you will be working with our design team to make sure that we’re iterating quickly, as getting health data into official hands will help save lives. Our app needs to be easy to understand, for users and developers. Your work will have a real, tangible impact on peoples’ lives.
Simple is designed as an offline-first app. This means instead of a traditional REST API, we have a sync API that keeps data on the devices roughly in line with data on the server. As a result, our app is fast and usable in unreliable network conditions. This distributed system invites some nice benefits, but also requires that you help us navigate its challenges.
Key responsibilities Here are some example projects that give you some idea of what’s in store:
Length of contract 12 months with potential for extension.
About you We are seeking an experienced candidate who is ready to do work that matters. The ideal candidate embraces learning about our challenges, has solved plenty of Rails app-related problems (especially at scale), and can work effectively with our remote team.
We’re keen to find someone for whom these problems look pretty familiar. We don’t want a specialist, but instead someone who is just as comfortable slinging ERB views as they are digging into writing query classes and debugging Rails routing errors. Critically, we also want someone who is curious, writes and communicates well, anticipates user needs from a human level, and always looks to keep things simple and iterate. We’re looking for someone who can self manage, plans their time wisely, and delivers straightforward solutions to vague problems.
Mindset We try hard to be a team full of empathy, inclusion, and respect. We trust each other, have hard conversations with open mindedness, and assume positive intent. We document as much as possible, work as asynchronously as possible, and meet via video conference when necessary. Proposing ideas and trying new things are paramount; always being right is not. We are frequently wrong and try to write code that we don’t mind deleting when we learn new things. We’re excited for you to participate and look forward to helping you grow your own skills as well.
Diversity Given that we’re writing software for the globe, it’s critical that our team represent the diverse environments in which we operate. We strive for an inclusive, diverse team with different perspectives, ideas, and identities.