About this job
About the opportunity:
The Test Automation Developer will help ensure our digital projection and LED display technology products are released, meeting the high-quality standards Christie is known for. The successful candidate must have a ‘developer’ mindset and a passion to code, as well as a good understanding of test automation frameworks and harnesses. This role requires knowledge and experience in coding, development of in-house tools, strong debugging skills and the ability to analyze and make recommendations based on test execution results. This role is best suited for candidates with a strong software development and systems background. We are looking for engineers who are comfortable working in Linux-centric environments, debugging complex system-level issues, and applying fundamental Computer Science concepts to solve challenging automation problems.
Responsibilities:
Use appropriate development tools to develop, optimize and debug test automation libraries and scripts that perform smoke, functional, and non-functional testing. These libraries and scripts involve automating system interactions via APIs and the UI of the embedded systems
Automate verification of embedded software across multiple hardware variants, requiring the ability to understand hardware-specific differences and their impact on software behavior
Build and configure new utilities and interfaces to support testing activities
Collaborate with the Test Automation Lead as well as QA and Dev teams to design, build, implement, maintain and support test automation environments, frameworks and harnesses
Take on some leadership responsibilities and help influence the overall direction of our test automation strategy and its schedule/prioritization
Analyze various requirements (such as User Stories, Use Cases, Product Requirements Documents, Design Documents) to gain an understanding of the application being tested
Provide feedback regarding the overall quality and completeness of these documents to the appropriate stakeholders
Work with the members of the QA team to determine test automation needs and identify test automation candidates in each release
Provide effort estimates, automation ROI and benefit savings metrics
Create and present reports, analysis and recommendations based on results of running automated testing scripts
Collaborate with Developers to help troubleshoot defects
Participate in Scrum and various team meetings
Location: Hybrid position based in Kitchener, ON
The experience and skills we value:
Degree in Computer Science or related discipline
2+ years of hands-on experience in software development
Must be proficient in one or more object-oriented programming languages (such as Python, Java, C++, C#)
Demonstrated experience with back-end / front-end development (Desktop, Web, Mobile, or Cross-Platform)
Strong proficiency in Linux environments, including command-line tools, process management, system diagnostics, log analysis, shell scripting, and performance troubleshooting
Demonstrated ability to investigate and debug complex software, system, and automation issues across application, operating system, and infrastructure layers
Strong software development mindset with the ability to work effectively in command-line driven environments and diagnose issues using system-level tools
Experience with low level API or SDK
Experience working in agile and waterfall environments
Experience working with version-control software (Git preferred)
Experience in CI / Jenkins
Strong exposure to various test automation frameworks
Strong understanding of SDLC
Ability to work in a dynamic environment and come up with solutions to meet project needs
Ability to work under tight timelines - must be able to prioritize and multitask
Strong and effective communication skills (both written and oral)
Excellent analytical and problem-solving skills
Meticulous with a sharp attention to detail
What will put you ahead:
Experience with UI automation technologies
Experience with Python programming
Experience with Docker and good understanding of Networking concepts
Experience with JavaScript development and scripting
Competent in use of software testing tools such as Perforce Helix ALM, Jira, MS Test Manager or HP Quality Center
Exposure to cyber security/resilience testing practices and methodologies
Familiarity with penetration testing techniques and ability to identify common vulnerabilities using tools such as Burp Suite/Hetty or Nmap
Experience with testing projection/video display technologies (LED, Laser, 4K and high-dynamic range displays) would be an asset