Location: Remote
Availability: 35-40 hours per week
Working hours: US East business hours
Reporting to: Lead developer
KoboToolbox has an immediate opening for a Senior Frontend Web Application Developer to fill a full-time position of approximately 35-40 hours per week, ideally for a commitment of at least 1 year. As a member of our team, you will share in the challenge and excitement of writing code used by over 14,000 nonprofit organizations around the world. These organizations create data-driven change through the collection and analysis of more than 20 million surveys per month.
Only senior candidates who already have experience working on large web applications will be considered. Beyond technical acumen, we are seeking a team member who demonstrates curiosity, initiative, and a cooperative approach to problem solving and decision-making.
If you’re passionate about leveraging technology to make a positive impact, we want to hear from you!
Responsibilities
- Searching and reading the extensive, long-lived code base to understand existing behavior and conventions.
- Evolving these conventions, without dogmatism, toward contemporary best practices that are appropriate for our project.
- Formulating plans to implement new conventions incrementally into the existing code base.
- Mentoring other developers, guiding them to follow these conventions, and encouraging their professional growth.
- Writing robust, concise, and reusable code with accompanying tests and documentation.
- Reviewing other developers’ code and providing constructive feedback.
- Distilling requests from the humanitarian community into technically detailed feature requests (and bug reports).
- Scoping, prioritizing, estimating, and organizing work into manageably-sized tasks.
- Attending regular videoconference check-ins with other members of the technical team.
- Communicating with the public in conjunction with our support staff or directly through forums, issue trackers, etc.
- Shaping the design and architecture of the overall tool suite collaboratively with the larger team.
- Performing other related duties as directed by the lead developer.
Requirements
Required Qualifications
- Experience writing, deploying, and maintaining client-side code for real-world, API-driven single-page applications.
- Thorough understanding of TypeScript, React, and related technologies, including styling, state management, and efficient data exchange over HTTP.
- Unflinching ability to work with legacy technologies such as Backbone and CoffeeScript.
- Recent experience giving and receiving code reviews.
- Interest in data collection (surveying), particularly in humanitarian emergencies and other challenging contexts, and a desire to improve our platform for our users.
- Proficiency with spoken and written English.
- Fluency with Git.
- Overlap with working hours in the Eastern time zone.
- Average availability of at least 30 hours per week, preferably 35 hours or more.
Preferred Qualifications
Experience with the following is preferred but not required to apply:
- Serving as the leader of a technical team.
- Using Docker and Docker Compose in a development environment.
- Programming in Python, ideally with Django (and particularly Django REST Framework).
- Optimizing queries for relational and document-oriented databases.
- Surveying with XLSForm, ODK XForm, and OpenRosa.
- Integrating with Stripe for payment processing.
Benefits
- Genuine Impact: Contribute directly to projects that impact millions of people around the world globally, working alongside the largest international humanitarian organizations as well as thousands of national and small community based partners in 200 countries.
- Meaningful Work Environment: Join a team that believes work should be meaningful as well as fun, tackling global challenges through innovative data collection and management tools with a proven impact for lasting change.
- Diverse Team: Be part of an amazing, progressive, and globally diverse team that values diversity, equity, and inclusion across all spectrums.
- Flexible Work Culture: Enjoy mutual flexibility, and the option for a 4-day workweek, supported by a culture that prioritizes work-life balance.
- Professional Development: Benefit from generous professional development options.