
Software Developer in Test (SDET)
- Toronto, ON
- Permanent
- Full-time
- Design, develop, and maintain automated test frameworks and tools for robotic software systems, including perception, dextrous manipulation, and human-robot interaction.
- Create comprehensive test plans, test cases, and test scripts for various testing levels, primarily functional-behavioural, system, and user acceptance tests.
- Execute automated testing on products of all maturities, analyzing test results and identifying defects.
- Debug complex issues in both platform and product defects, working closely with development teams to pinpoint root causes and implement effective solutions.
- Integrate automated tests into Continuous Integration/Continuous Deployment (CI/CD) pipelines to enable rapid and reliable software delivery.
- Monitor software quality metrics, analyze trends, and provide detailed feedback to engineering teams to drive continuous improvement.
- Contribute to the design and implementation of test strategies for product development, including for machine learning models and AI algorithms within the robotic system.
- Participate in code reviews, providing valuable insights on testability, quality, and potential areas for improvement.
- Document test procedures, results, and issues clearly and concisely.
- Stay up-to-date with industry best practices in software testing, AI, and robotics.
- Bachelor's degree in Computer Science, Software Engineering, Robotics, or a related technical field.
- 3+ years of experience in software testing and automation, with a strong emphasis on developing and maintaining automated test frameworks.
- Solid working understanding of software development methodologies (Agile, Scrum) and the software development lifecycle (SDLC).
- Have worked under a BDD/TDD test paradigm.
- Experience with testing frameworks (e.g., Pytest, Behave).
- Familiarity with version control systems (e.g., Git).
- Experience with CI/CD tools (e.g., Jenkins, GitLab CI).
- Proficiency in Python.
- Proficiency in Linux/BASH.
- Adept analytical and problem-solving skills, with a keen eye for detail.
- Excellent written and verbal communication skills.
- Ability to collaborate effectively with cross-functional teams.
- Experience contributing towards large-scale, multi-disciplinary work packages.
- Proficiency with Atlassian suite (e.g., Jira, Confluence).
- Experience with robotics software frameworks (e.g., ROS, ROS 2).
- Golang is a strong asset.
- Typescript is an asset.
- SQL is an asset.
- Proven track record in developing, and maintaining software platforms, preferably in a cloud-native environment (AWS, GCP, Azure).
- Familiarity with testing embedded systems, hardware-software integration, and real-time systems.
- Understanding of machine learning concepts and experience testing AI models.
- Experience with simulation environments for robotics testing (e.g., Unity, MuJoCo, NVIDIA Isaac).
- Knowledge of sensor technologies (e.g., LiDAR, cameras, force/torque) and their integration in robotic systems.
- Experience with traditional test tooling (e.g., Cypress, Postman, Playright)
- Experience with performance testing tools (e.g., Locust, Gatling) for robotic applications.
- Familiarity with defect tracking and test case management systems (e.g., Jira, Xray).
- Hybrid working (~40% of time in our downtown office).
- Travel is not required, but you may have the occasional opportunity to travel to our other development centres or customer sites.
- Opportunity to work on cutting-edge AI and robotics technology.
- Collaborative and innovative work environment.
- Competitive salary, equity, and benefits package.
- Opportunities for professional growth and development.
- Be part of a team that is shaping the future of robotics.