Ability to review user stories to ensure that acceptance criteria stated are correct, unambiguous and verifiable
Ability to work as an embedded tester in the context of a scrum team
Ability to evaluate the complexity of user stories, contributing to estimates during sprint planning
Ability to develop high quality, maintainable and performant test code
Ability to ensure test execution is appropriately conducted by cross-functional scrum team members
A good ability to judge when a proposed technical solution requires discussion and consensus within the cross-functional team because it may impact:
Security
Performance
Operability
Maintainability
Good understanding of the software testing methodology and process of the development team and being able to fulfil the tasks and ceremonies required from software test engineers
Good knowledge of Exploratory testing techniques, Rapid software testing and Session-based testing, testing heuristics
Ability to triage issues found and report on progress
Ability to plan, execute and validate tests across the full test spectrum (functional, non-functional, infosecurity, integration, regression, smoke, UAT and OAT)
Ability to identify opportunities to improve the quality assurance processes and actively contribute to test automation initiatives
Software development tools
The understanding and basic use of all elements of the software development toolchain (IDE, Issue tracker, document repository, SCM, CI server, etc.)
A solid understanding of OOP development practices and with Java or similar
The ability to write automated acceptance tests in at least one framework or tool
The ability to integrate automated acceptance tests into CI/CD pipeline
The ability to use the version control system the development team uses and understand and follow its basic concepts practices and guidelines and branching strategy in place
Technologies and standards
Knowledgeable in BDD/TDD methodologies
Familiarity and ability to work in an automated test approach and page object design / facade / singletons patterns
Basic understanding of Micro-Services architecture
Knowledgeable in automated API testing
Acceptance Test Automation in Selenium Webdriver, Cucumber
Familiarity and ability to work in CI tools like Jenkins and cloud infrastructure like AWS
Key Accountabilities
The key accountability of the software test engineer is to deliver product quality with the development team.
Participate in "
" - pair with the PO and Developer and create Acceptance Criteria for the user stories
Review the acceptance criteria and identify the test scenarios
Provide test estimates during sprint planning
Create a pragmatic test plan to cover testing within all phases of software development
Develop automated acceptance tests for the features
Develop and implement integration, regression and system tests for the new features
Create and maintain test data and test environment needed for testing
Log defects and track them to closure
Conduct exploratory testing as part of every sprint
Develop automated tests for non-functional testing
Collect quality metrics for the product and enhance the testing process for continuous improvement