Senior Software Developer in Test
- Ottawa, ON, Canada
Full-time
Applications open in a new tab.
Job details
- Job type
- Full-time
- Apply by
- Posting language
- English
- Posted
Original job description
The QNX Service PSP Test Team is seeking an experienced and highly motivated Software Developer in Test to help validate and deliver next-generation QNX software technologies. This is an opportunity to work at the intersection of software, hardware, automation, and embedded systems while solving challenging technical problems that directly impact product reliability and customer success. You'll design sophisticated test suites, build scalable automation frameworks, execute system-level validation on real hardware, and collaborate with world-class developers to identify and resolve issues before they reach customers. Every day offers new technical challenges, from debugging complex failures to improving automated test coverage and accelerating release quality. If you're energized by automation, passionate about quality, and enjoy working hands-on with hardware in a fast-paced engineering environment, we'd love to talk to you.
What You'll Do
- Design, develop, optimize automated tests, test frameworks and test cases to continuously improve test coverage, reliability, and execution efficiency.
- Execute software validation activities on both reference and customer hardware platforms.
- Debug complex software and hardware interactions, analyze failures, and perform root-cause investigations.
- Create and maintain detailed defect reports and verify fixes through rigorous regression testing.
- Develop and maintain comprehensive test plans, test cases, and test documentation based on product requirements.
- Generate high-quality test reports and communicate results clearly to development and leadership teams.
- Build, maintain, and improve automation lab infrastructure and testing environments.
- Collaborate closely with development, integration, and test teams to ensure product quality across the software stack.
- Reproduce and isolate field-reported issues using creative troubleshooting and validation techniques.
What You Bring
- Experience developing automated test solutions for software or embedded systems.
- Must have strong programming skills in Python, C, and Shell scripting
- Must have a fundamental understanding of networking principles, including the TCP/IP model.
- Must demonstrate strong attention to detail and a commitment to delivering high-quality work.
- Hands-on experience with Linux and other Unix-like operating systems.
- Experience testing software features across multiple hardware platforms.
- Strong understanding of software testing methodologies, validation strategies, and test automation best practices.
- Proven experience creating test plans, developing test cases, executing tests, and reporting results.
- Good to have AI technology experiences.
- Good to have knowledge of Hypervisor, Filesystem and Graphics.
- Ability to work independently while effectively contributing within a collaborative team environment.
- Strong organizational skills with a track record of managing competing priorities and delivering high-quality results.
- Experience with modern development workflows and tools, including Git or SVN, Jira, Jenkins, and CI/CD pipelines
- Strong debugging, root-cause analysis, and system validation skills in embedded software and hardware environments.
- Excellent written and verbal communication skills, including the ability to write clear, concise, and actionable defect reports.
- Bachelor's degree in Computer Science, Software Engineering, Electrical Engineering, or a related field.
More about this job
Responsibilities
Design and maintain automated test suites, frameworks, plans, and lab infrastructure, and validate QNX software on reference and customer hardware. Investigate failures and field issues, report defects, verify fixes through regression testing, and communicate validation results to development and leadership teams.
Requirements
Candidates need experience developing automated tests for software or embedded systems, strong Python, C, and Shell scripting skills, Linux or Unix experience, and a fundamental understanding of TCP/IP networking. The role also requires software testing and validation expertise, debugging and communication skills, familiarity with development and CI/CD tools, and a bachelor's degree in a related field.
Skills
- Test Automation
- Python
- C
- Shell Scripting
- Linux
- Unix-Like Operating Systems
- TCP/IP Networking
- Embedded Systems Testing
- Test Planning
- Test Case Development
- Debugging
- Root-Cause Analysis
- Git
- Jira
- Jenkins
- CI/CD
Visa sponsorship
Not detected in the job text
Categories
- Software
- Technology
- Engineering
Keywords
- QNX
- Software Development
- Software Developer in Test
- Test Automation
- Automated Test Frameworks
- Python
- C
- Shell Scripting
- Linux
- Unix-Like Operating Systems
- TCP/IP
- Embedded Systems
- Hardware Validation
- System-Level Testing
- Test Plans
- Test Cases
- Regression Testing
- Defect Reporting
- Root-Cause Analysis
- Reference Hardware
- Customer Hardware
- Automation Lab Infrastructure
- Git
- SVN
- Jira
- Jenkins
- CI/CD
- Hypervisors
- Filesystems
- Graphics