eHealth Africa (eHA) designs and implements data-driven solutions and technologies to improve health systems for and with local communities. eHA’s technology works in low connectivity settings, and smartly uses data to drive decision-making by local governments and partner agencies to get optimum results.
Summary: The Quality Assurance Engineer’s role is to develop and establish quality assurance standards and measures for the software application services within eHA. This individual will also gather and analyze data in support of business cases, proposed projects and system requirements. This will include writing test plans, scripts for tracking defects, fixes in product development and software application development. The QA Specialist will lead a team in an Agile environment and have extensive knowledge of the Software Development Life Cycle. This individual will apply proven analytical and problem-solving skills to help validate IT processes through careful testing in order to maximize the benefit of business investments in IT initiatives.
Essential Duties and Responsibilities: To perform this job successfully, an individual must be able to perform each essential duty satisfactorily. Other duties may be assigned.
- Develop and establish quality assurance measures and testing standards for new applications, products and/or enhancements to existing applications throughout their development/product lifecycles.
- Conduct internal audits to measure and assure adherence to established QA standards for software development, application integration, information system performance and corresponding documentation.
- Create and execute test plans and scripts that will determine optimal application performance according to specifications.
- Verify and revise quality assurance standards as needed.
- Ensure that testing activities allow applications to meet business requirements and systems goals. Fulfil end-user requirements and identify existing or potential issues.
- Prepare and deliver reports, recommendations, or alternatives that address existing or potential trouble areas in IT systems and projects across the organization.
- Collaborate with software/systems personnel in application testing, such as system, unit, regression, load and acceptance testing.
- Make recommendations for improvement of applications to programmers and software developers or engineers.
- Communicate test progress, test results and other relevant information to project stakeholders and management.
- Test any new software to ensure integration into company systems meets functional requirements, system compliance and technical specifications.
- Analyze formal test results in order to discover and report any defects, bugs, errors, configuration issues and interoperability flaws.
- Assist in the development of change control processes, practices and guidelines for new and existing technologies.
- Assure that output from the software development process includes adequate identification and interpretation of product requirements, such as a) traceability requirements, b) test requirements, c) usability, etc.
- Participate in developing, distributing and coordinating in-depth end-user reviews for modified and new systems and applications.
- Monitor program performance after implementation to prevent reoccurrence of program operating problems and ensure efficiency of operation.
- Recommend design improvements or corrections to engineers throughout the development process.
- Maintain effective communication with the project software engineers on project limitation, capability, performance requirement and hardware interface changes.
- Cultivate and disseminate knowledge of quality assurance best practice.
Other Duties and Responsibilities: The requirements listed below are representative of the knowledge, skill, and/or ability required.
- Necessary skills include; organization, effective oral and written communication, strong interpersonal, above average math, problem solving, analytical and being proficient with standard industry productivity tools such as Microsoft Word, Excel, and PowerPoint.
- Participates in and promotes a positive, supportive, cooperative team environment.
- Adheres to eHealth Africa Code of Conduct, applicable policies & procedures, as well as ethical standards of the field.
Qualifications: The requirements listed below are representative of the knowledge, skill and/or ability required to successfully perform this job.
- Bachelor’s degree in Computer Science, Management Information Systems or related field is required with six-years equivalent work experience
- Master’s degree is a plus.
- Ability to successfully manage multiple assignments independently.
- Creativity and problem-solving skills.
- Three-years direct experience in overseeing the design, development and implementation of quality assurance standards for software testing.
- One-year direct experience as a lead tester for major application integration and/or major application product release.
- Knowledge of SQA methodology and tools
- Experience with GUI automated testing tools (Selenium, FitNesse, Watir, etc.)
- Experience with programming languages like Bash, Java, Python and Ruby, AngularJS, EmberJS
- Experience with unit testing frameworks such as JUnit, Test::Unit, xUnit, etc.
- Experience with performance testing tools like JMeter, Apache Bench, httpserf
- Experience working with Java, Java EE, Linux, and related cloud technologies.
- Knowledge of agile development practices, continuous integration, and continuous deployment.
- Strong knowledge of system testing best practices and methodologies.
- Direct, hands-on experience with ad hoc query programs, automated testing tools and reporting software to include but not limited to Selenium and HP Performance Center.
- Self-starter, highly organized; Works well with all functional levels in the organization; excellent presentation and interpersonal skills; high level of business management and facilitation skill; capability to resolve complex problems with minimum confusion, frustration, and inconveniences for all parties concerned.
- Planning; Aggressiveness; Commitment; Closure; Listening; Response to Change; Task Completion; Decisiveness; Influence; Communications
- Ability to adhere to schedules and project time lines and communication of issues/problems that may impact the ability to meet objectives.
- Willingness to work flexible schedule to support production issues and project rollouts.
- Demonstrated experience in developing, implementing and maintaining a cost effective, long-term automation strategy.
- Strong software analysis skills, strong problem-solving skills, ability to troubleshoot under pressure
- Advanced understanding of Quality Management and “best practices” with regard to testing techniques, methodologies, processes, tools, artifacts, and measurement
- Thorough knowledge of software development lifecycles
- Advanced abilities with use of reference materials and other resources to complete tasks
- Excellent analytical thinking and problem-solving abilities
- Ability to effectively meet deadlines and prioritize projects in a dynamic and fast-paced work environment
- Extensive practical knowledge in importing data for use in report software, spreadsheets, graphs and flowcharts.
- Proven data analysis, data verification and problem solving abilities.
- Understanding the organization’s goals and objectives.
- Ability to prioritize tasks within the project and work with minimal supervision or guidance.
- Excellent written and oral communication written and oral skills.
- Good listening, presentation and interpersonal skills.
- Ability to communicate ideas in both a technical and user friendly language.
- Able to prioritize and execute tasks in a high pressure environment.
- Keen attention to detail.
- Experience working in a team oriented, collaborative environment.
- Proven ability to work with diverse and large teams and to foster a positive working environment with local and international stakeholders
- Demonstrated capacity to effectively communicate via writing, public speaking and interpersonal interactions.
- Good learning ability. Action oriented and resilient in a fast-paced environment
- English is the spoken and written language.
- Ability to read, analyse, proof and edit documents, and interpret general business periodicals, professional journals, or government regulations.
- Ability to effectively present information and respond to questions from groups of managers, employees and the general public.
Why work for us?
Life at eHealth Africa means not only working towards saving thousands of lives, but also collaborating with dedicated professionals with a passion for innovative technology. We offer a series of programs that enables them to pursue a career that fulfills their potential. Our team members’ health and well-being is our priority as well as rewarding them for their hard work.