Create repeatable test cases and acceptance criteria that maximise functional and system-level coverage, and help define test strategies for new features.
Maintain automated regression suites and integrate hardware-based testing into CI/CD pipelines where appropriate.
Investigate failures across software, firmware and test environment, drive root-cause analysis with developers and document defects clearly.
Monitor test results for trends and recurring failures, and act as an advocate for quality throughout the development process.
Requirements
Degree in Computer Science, Computer/Electrical Engineering or equivalent practical experience, with a professional interest in embedded systems, hardware and firmware.
3-5 years of experience testing software, firmware or embedded systems, including physical devices in a development or laboratory environment.
Experience developing automated tests in Python (or another object-oriented language); frameworks such as pytest, Appium or Behave are an asset.
Experience with Hardware-in-the-Loop (HIL) or other hardware-based automated test environments is highly desirable.
Experience with load, stress, performance, endurance and reliability testing.
Familiarity with Git and modern software development practices.
Strong analytical and troubleshooting skills: able to analyse logs, test results and measurements and pinpoint hardware, firmware or software causes across multiple system layers.
Able to work independently within a multidisciplinary engineering team and deliver to schedule, with good technical writing skills and fluency in English.
ISTQB Level 1 certification and willingness to obtain additional ISTQB certifications.
Preferred technical skills & experience
Python automation for physical hardware and laboratory equipment.
HIL, SIL or system-level automated testing, integrated into CI/CD pipelines.
Agile software/hardware development environments.
Key competencies
Automation & hands-on testing: building reliable, maintainable automated test solutions and working directly with physical devices and fixtures.
Troubleshooting: systematically investigating failures across multiple layers of a product.
Quality mindset: strong focus on product quality, test coverage, reliability and customer impact.
Curiosity & collaboration: digging into how systems really work, and communicating effectively with firmware, software, QA and support teams.