As a Software QA Engineer, you will provide test automation framework, tooling, and Performance Testing support for multiple development teams in a Continuous Software Delivery cycle. The Software QA Engineer will also be required to carry out other duties, projects, or activities as specified by their management.WORK EXPERIENCE REQUIRED
- Must have experience working in an agile development environment.
- Must have 10+ years of experience in a high-tech environment in QA or a role with similar technical requirements.
EDUCATION AND CERTIFICATION REQUIRED
- Bachelor’s degree in Engineering, Computer Science or a related discipline or 3 years of relevant experience would be considered in lieu of a degree.
SPECIALIZED SKILLS & KNOWLEDGE REQUIRED
- Knowledge of Performance Testing methodology and its applied uses in testing responsiveness, load, stress, soak, scalability, reliability, and degraded mode of operation.
- Knowledge of underlying technologies supporting the application under test including REST API's, HTML, CSS, JavaScript, Java, SQL, SFTP, microservice and cloud architecture.
- Knowledge and ability to maintain and enhance Behavior-Driven test automation framework utilizing JavaScript, Cucumber-js and Selenium.
- Ability to extend performance test tool capabilities using JavaScript and/or Java.
- Ability to design flexible automated functional and performance test scripts that can be applied to various test conditions including event synchronization, cross-browser compatibility, multi-environment support, parallel execution, and unexpected fault handling.
- Knowledge of agile test pyramid concepts, and their appropriate application to the scope of automated unit, service-Layer, and UI, along with manual exploratory and user acceptance testing.
- Ability to administer performance test software (NeoLoad or similar) consisting of web server, controller, IDE, and distributed load generator components.
- Ability to administer Selenium Grid test lab (Selenium Box, SauceLabs, or similar) and integrate solution with automated deployment pipelines.
- Ability to administer test management software (TestRail or similar) and integrate solution with agile work planning tools.
- Working knowledge of agile work planning tool (JIRA or similar).
- Working experience using source-control change management software (GIT or similar).
- Working knowledge of integrating Continuous Integration tools (Jenkins or similar) with supported test automation components.
- Ability to use Application Performance Management tools (NewRelic, Splunk, or similar) to monitor key health metrics, identify system resource bottlenecks, and investigate system errors.
- Ability to estimate test schedules and assess risk.
- Ability to adapt to supporting autonomous teams and influence application of testing standards when ownership of software quality is a shared responsibility with the development teams.
- Knowledge, skills, and experience to develop performance test plans based on technical documentation, specifically business requirements and functional specifications.
- Knowledge of web development methodologies (primarily Agile/Scrum), application design, navigation, and information architecture.
- Knowledge of basic database design and query language.