At OneSpan, a world leader in strong authentication and e-signature solutions, you'll be part of a team that is trusted by more than 10,000 organizations around the world to safeguard their customers against cyber-crime and fraud, and deliver exceptional digital experiences that build lasting customer loyalty. Your contribution will help us to push the boundaries of what's possible to improve the security and lives of millions of people around the world.
In short, what you do here matters. We offer the best of both worlds – a solid foundation that only an established global enterprise can provide, with the energy and creativity of an innovative start-up. In every role at OneSpan, you'll contribute to the success of the most advanced security and e-signature technologies, and have opportunities to grow.
We are currently looking for a passionate QA Automation Engineer with a Senior-Principal level profile, to be located in our Montreal office. The QA organization in Montreal works closely with OneSpan R&D centers worldwide to qualify a broad range of its products.
As a key member of the Montreal Quality Team, the QA Automation Developer will be responsible for analyzing requirements & designs, defining test strategies, procedures, test cases, and test scripts as well as actually testing features and fixes of the flagship OneSpan TID product line.
JOB DUTIES AND RESPONSIBILITIES:
Design, develop, execute and maintain automated test cases in Java and evaluate test results to ensure our products and APIs meet functional requirements and design specifications
Create repeatable test cases including acceptance criteria to maximize coverage through critical understanding of intended behaviors of product features
Identify and report defects, and recommend corrective action to expedite developers' ability to reproduce, diagnose, and resolve defects
Produce and document test plans, set quality and performance goals, and hold test case reviews with team members
Research and implement tools to meet our goals for automation including cross-browser and multi-device testing
Actively participate in user stories definition, providing feedback, time estimates and identifying areas of risk
Ensure visibility on the testing status throughout the entire development process
Contribute to the ongoing efforts to refine and improve the internal software development processes, test methodologies, and internal testing tools
Be an advocate for quality throughout the development process.
Degree in Computer Science/Engineering or equivalent through experience
Required experience and technical skills:
5+ years of hands-on experience in Software Assurance Automation
Strong object-oriented programming skills (Java, C++, Python or similar),
Ideally experience programming in Java, such as Core Java, GUI, API testing and data validation
Solid grasp of REST, JSON
You are able to resolve complex problems with creative solutions, to focus on deliverables and meet scheduled deadlines
Strong analytical and problem-solving skills with a natural curiosity and attention to detail are key
You are recognized for being organized and able to efficiently run multiple tasks and adapt to changing priorities
You have good technical writing skills and the ability to describe clearly complex processes and tasks
Exposure to automation frameworks such as xUnit, Selenium(WebDriver), Appium, JMeter and Cucumber.
Familiarity with relational databases, SQL, and cloud computing infrastructure
Familiarity with Jenkins and CI/CD concepts
Familiarity with source control tools such as Git
In-depth experience with testing complex database systems
Experience with load, stress and performance testing
Experience with Windows and/or Linux scripting
Experience installing and configuring services on Windows and Linux
Experience with setting up VMs
Knowledge of BASH or another scripting language
Understanding of agile development processes and practices