Software QA Engineer
- Montreal, QC, Canada
Full-time
Applications open in a new tab.
Job details
- Job type
- Full-time
- Apply by
- Experience
- 4+ years of hands-on experience in software QA, test automation, or test engineering on shipped products.
- Posting language
- English
- Posted
Original job description
We’re looking for a Software QA Engineer to test Haply’s firmware, SDK, and desktop app as one system, on real devices, before every release ships.
About Haply
Haply Robotics is building the human interface for Physical AI.
As robots, autonomous systems, simulation environments, and creative tools become more capable, the way humans interact with them must become more precise, intuitive, and physically meaningful. Haply builds high-precision haptic devices and the hardware/software platform that connects people to digital and robotic systems through force feedback, motion sensing, real-time device communication, and touch-enabled interaction.
Our products include Inverse, Inverse3X, Minverse, VerseGrip, HARP, Hub, and the Service SDK. These products require tight integration between embedded firmware, the Service SDK, the Haply Hub desktop application, the applications our customers build, and the hardware they all run on.
About the Role
We are looking for a Software QA Engineer to help test, validate, and release the software stack behind Haply’s haptic and robotic interaction devices.
This role is focused on testing Haply’s device firmware, the Service SDK, Haply Hub, and the applications built on them as one system. The work covers writing automated tests, running the test bench that exercises the whole stack on real devices, and validating releases. It also means turning failures customers report into tests that stop them from coming back. We are looking for someone who can find which part of the system a failure comes from, write it up so the right engineer can fix it, and back a release decision with evidence.
This is not a manual-testing-only role. The ideal candidate writes test automation, works at the bench with real hardware, and understands enough of each part of the system to test how the parts work together.
Required Qualifications
- 4+ years of hands-on experience in software QA, test automation, or test engineering on shipped products.
- Strong experience designing test plans and test cases from requirements, release notes, and bug reports.
- Strong experience writing automated tests in Python or a similar language, using pytest or a comparable framework, git, and code review through merge requests.
- Experience running automated tests in CI pipelines such as GitLab CI, GitHub Actions, or Jenkins, and producing test reports that support release decisions.
- Experience testing software that talks to physical devices, including device detection, dropped connections, drivers, and firmware updates.
- Experience testing APIs and services over WebSocket, HTTP/REST, or similar protocols, including version compatibility between clients and services.
- Experience testing desktop applications on Windows and macOS, and ideally Linux.
- Ability to reproduce intermittent failures and write bug reports engineers can act on.
- Ability to tell whether a failure comes from firmware, the service, the desktop app, a customer application, the hardware, or the test setup.
- Ability to read C, C++, Rust, Python, or TypeScript well enough to follow a failure into the source and discuss it with the developer who owns it.
- Experience with release validation, including regression runs, compatibility checks, release-note review, and go/no-go recommendations.
- Experience keeping tests traceable, with stable test IDs linked to requirements, results, and defects.
- Strong communication skills and ability to work across firmware, software, hardware, product, and support teams.
Strongly Preferred Experience
- Experience with hardware-in-the-loop testing, test rigs, or device simulators.
- Experience testing Tauri or Electron desktop applications, including UI automation with WebdriverIO, Playwright, or similar tools.
- Experience with compatibility testing across versions, including version matrices, contract testing, semantic versioning, and supported-version policies.
- Experience testing real-time or latency-sensitive systems, including performance benchmarks and timing regressions.
- Experience testing firmware-update and device-connectivity flows over USB, serial, Bluetooth, or other wireless links.
- Experience with release engineering, including alpha, beta, and stable release channels, feature flags, staged rollouts, and rollback plans.
- Experience triaging crash reports from Sentry or similar error monitoring and turning them into reproducible test cases.
- Experience building test tooling such as scripts, test harnesses, mock devices, and log-analysis tools.
- Experience testing SDKs or developer tools used by outside developers, including sample code and documentation.
Nice to Have
- ISTQB or similar certification is a plus, but hands-on test automation on real products is more important for this role.
- Experience with haptic devices, robotics, teleoperation, physical AI, simulation, or human-machine interfaces.
- Experience with medical device software practices such as IEC 62304 or ISO 13485.
- Experience testing Unity, Unreal, or other game-engine integrations.
- Experience with Rust or C++ development.
- Bilingual French/English is a plus.
Interested in becoming part of our team? Apply through the link!
More about this job
Responsibilities
Test and validate Haply’s firmware, Service SDK, desktop application, and customer applications together, using automated tests and real hardware. Investigate and reproduce failures, create actionable bug reports and regression tests, and provide evidence to support release decisions.
Requirements
Requires at least four years of hands-on QA, test automation, or test engineering experience on shipped products, with strong skills in Python-based automation, CI pipelines, test planning, and release validation. Candidates should have experience testing software connected to physical devices, APIs and desktop applications, and be able to trace failures across hardware and software components.
Skills
- Software Quality Assurance
- Test Automation
- Python
- Pytest
- Git
- CI/CD
- Hardware-in-the-Loop Testing
- Firmware Testing
- API Testing
- Desktop Application Testing
- Release Validation
- Bug Reproduction and Triage
- WebSocket
- HTTP/REST
- Windows and macOS
- Test Traceability
Visa sponsorship
Not detected in the job text
Categories
- Software
- Technology
- Engineering
Keywords
- Software Quality Assurance
- Test Automation
- Python
- Pytest
- Git
- Merge Requests
- GitLab CI
- GitHub Actions
- Jenkins
- Hardware-in-the-Loop Testing
- Firmware
- Service SDK
- Haply Hub
- WebSocket
- HTTP/REST
- Windows
- macOS
- Linux
- Tauri
- Electron
- WebdriverIO
- Playwright
- Compatibility Testing
- Contract Testing
- Semantic Versioning
- Performance Benchmarks
- USB
- Bluetooth
- Sentry
- ISTQB