Quality Assurance Engineer
We seek a skilled and experienced QA Engineer with expertise in infrastructure-related areas such as performance, scalability, networking, and containerization technologies like Docker and Kubernetes. As a QA Engineer on the Infrastructure team, you will be responsible for ensuring the quality and reliability of our infrastructure, systems, deployments, and applications.
We build the Community Health Toolkit (CHT), which anyone can use to create healthcare applications. One important aspect of working on the team is using the CHT in a technical sense. As a QA Engineer on the Infrastructure team, you will contribute to the team by helping test the infrastructure needed to run those apps successfully.
The work is more technically challenging than may typically be found in a QA role and if you’re looking for that, please apply!
Provide acceptance testing and release testing of new features, bug fixes, and other improvements
Use your initiative to perform any exploratory testing, fuzzing, or other means of exploratory quality assurance you think is required to maintain a high-quality product
Learn and operate the CHT to quickly set up and execute complex test scenarios
Design, develop, and execute test plans, test cases, and test scripts to verify infrastructure components, such as networking, servers, storage, and databases, meet our quality standards
Work closely with the development team and/or SREs to identify and resolve performance bottlenecks, scalability issues, and other infrastructure-related problems
Collaborate with SREs to maintain, configure, and deploy infrastructure and applications using containerization technologies like Docker and Kubernetes
Define and implement automation frameworks and tools to improve testing efficiency and effectiveness, and reduce manual testing efforts
Participate in code and design reviews to provide feedback on the quality and testability of the code
Conduct research and experimentation to explore new testing techniques, tools, and technologies that can enhance the quality of our infrastructure and applications
While there are plenty of times you may help test something independently, we are moving to a system of “quality assistance” where the role of a QA engineer is to focus on automation and building quality-enhancing tools. Manual testing stays with the software developer and author of the code, and the QA engineer’s involvement is to assist in that by advising on important test cases to perform and reviewing parts of the code for quality risks.
Work with teammates to build an extensive automated testing suite using WDIO
Use CI/CD tools like GitHub Actions to fully automate aspects of the testing process and improve our build pipeline
Learn new programming languages, platforms, toolkits, libraries, tools, and application development paradigms as necessary
Other Team Activities
Work with the Engineering Managers, Director of Product Development, and development team to guide platform development and technical strategy with regards to testing
Work with the development team to improve test procedures within the development process
Are detail oriented and enjoy finding pesky bugs
Are comfortable in a UNIX-like environment
Have experience with some infrastructure-related technologies, like Docker, Kubernetes, and networking.
Have experience with regression and exploratory testing
Have some experience with performance and scalability testing
Care for optimizing and automating
Thrive working as part of a distributed team with a flexible schedule
Enjoy working remotely with opportunities to travel to project sites (e.g. Nepal and Kenya)
Are comfortable working with Site Reliability Engineers (SREs) and developers early in the process. You don’t wait for things to be ready, you ensure quality by helping them since the beginning of the work in an iterative way
Want to help build software that improves lives in a real and significant way
If this interests you please apply as soon as possible as shortlisting is ongoing. Candidates must have valid authorization to work in the region without requiring sponsorship.
Purpose & Impact
Ability to create and see real impact in your work
Freedom to take initiative and innovate, bonus of an agile, small team
Work for a globally awarded social enterprise recognized for developing a solution that can create global systems change in the health sector
Work with a value and mission driven team that is consistently described as warm, incredibly kind and supportive
Exposure to a diverse team: over 15 different nationalities
Opportunities for global travel: all team meet-up + functional team meet-up + field visits
Work/Life & Growth
Generous leave time: vacation, maternity/paternity, bereavement, & sick days
Professional development funds & opportunities + 5 days off for prof dev
Workspace and communication stipends
Flexible, remote schedules