As part of our growing team, you will be the person that helps us develop and run our automated software testing system. You will also be responsible developing QA procedures, integrating applicable tests into our continuous integration and build pipelines as well as testing of software, low-level hardware components, and high-level robot functionality, and reporting on the quality of the current builds. This role will expose you to all aspects of the software stack and will serve as a launch pad for moving into developing other aspects of the system.
- Develop, document and regularly maintain test plans and their results
- Maintain test automation that provides reliable and repeatable test results
- Develop internal QA tools to effectively test the components/application
- Design, develop, and deploy automated tests in a continuous build environment
- Go beyond testing web applications and dig down into process handles and network connections
- Dig into code to help identify the root cause of an issue and help the engineering team develop a solution
- Perform extensive functionality, integration, regression, interoperability and end-to-end system testing independently or with the team
- Design and develop scripts to automate regression tests where possible
- Troubleshoot, analyze, and isolate defects and report them to a bug tracking database (JIRA)
- Communicate technical concepts/issues clearly to colleagues and review documents for technical content and accuracy
- Participate in product spec/design reviews to provide input on functional requirements, product designs, schedules, or potential problems regarding testability.
- Provide feedback and recommendations to developers on software usability and functionality
- Be involved in automation framework including core libraries development using programming languages such as Python
- Develop or specify standards, methods, or procedures to determine product quality or release readiness for an enterprise scale software application