Adopt a test-first approach to software development in which, where possible, the test is developed before the code.
Assess, define, and document test framework(s), including use of technology stack(s) and test automation tools, considering the long-term maintainability of automated testing.
Establish performance testing baselines and define benchmarking strategies.
Provide leadership on industry-standard testing processes (e.g., BDD) and develop automated and manual testing strategies.
Participate in design and code reviews with other engineers.
Develop comprehensive test plans and facilitate collaborative team reviews to finalize the testing strategy.
Review and analyze product code changes to design better test cases and strategies.
Define and create pipelines to enable Continuous Testing within Agile teams.
Write programs, utilities, scripts and pipelines to support the following: Testing in various test streams such as Integration, System, Performance, and Compatibility Destructive testing and validation of system recoverability, Boundary and edge case testing, Load and scalability testing, Concurrency testing.
Update automated regression tests for newly identified defects where appropriate.
Maintain the outcome of automated testing, including reviewing and resolving false positives and improving fragile tests.
Execute manual and exploratory testing as required.
Identify and mitigate potential security vulnerabilities in the testing process and tools.
Requirements
At least 5+ years of experience testing modern large-scale software and complex test configurations
Has mastered the basics of operating as a developer in the IBM mainframe environment
Basic understanding of CICS architecture and commands
Experience in implementing JCL to execute batch processes in zOS or zVSE
Additional experience in one or more of the following: Metal C, REXX, CLIST, ISPF, JES 2/3+