Role Overview
SDET Engineers will, in collaboration with a multidisciplinary delivery team, be responsible for the increasing automation coverage and improving our existing automation frameworks. This includes identifying current gaps, if needed – designing a solution, and executing it. The candidate should be familiar with Agile testing concepts and open-source test automation frameworks.
This person will support engineers by designing and maintaining cutting-edge automation systems to ensure we deploy code with amazing quality and speed.
Primary Objectives
- Develop test automation plan by collaborating with the manual testing team using XRAY (jira). Work on other non-functional quality attributes, like performance, reliability, and security.
- Develop automated tests with the appropriate technologies such as open source test automation frameworks – Serenity, RestAssured, Selenium as well as commercial solutions – GenRocket for test data generation. SDET’s will spend most of the time automating test scenarios for Product under test.
- Translates functional requirements into the test automation requirements and then into the automated test scripts. Automated scripts are written in robust, scalable, and high quality open-source test automation frameworks and provide coverage for functional and regression testing.
- Executes tests (manually, automated scripts), schedules test execution runs and reports on their results.
- Provide the team and all stakeholders with clear and real-time updates regarding test status, bug status, and overall quality about the product by monitoring failures, reporting bugs, analysing & triaging automated tests running in the continuous Integration system.
- Work in parallel with the development team on testing and automating tests in the sprints.
- Develops and sets up mocks / stubs / virtual services for smooth automation framework execution.
- Help maintain systems to monitor test stability and report stability issues back to the team.
- Design and implement tools that improve efficiency in manual testing.
- Research new or better alternative automated testing tools.
- Evaluate new technology options and vendor products.
- Estimates effort required for quality assurance of enhancements/features delivered by SCRUM team.
- Supports team members on the issue resolution by providing comprehensive results of the test execution and reproducing a bug.
- Maintains repositories of test scripts.
- Work independently when required, communicating regularly with stakeholders on solution implementation.
- Provide technical coaching on complex issues to colleagues.
- Be a proactive stakeholder in product quality.
- Strong verbal, written and organizational skills and a strong customer focus.
- Build a knowledge base on the applications and acquire subject matter expertise on the overall line of business.
- Knowledge transfer, active support and educational development of internal and external team members.
- Collaborate with developers, analysts, and tech leads across the enterprise, to identify business needs and appropriate technical solutions.
-
Will perform additional job duties as required.
Knowledge & Skills
- A minimum of 4+ years of experience in writing reliable and maintainable automated tests.
- An eagle-eye for test coverage gaps, false positives or negatives and proficiency in black box, functional and user flow testing techniques.
- Experience working in Agile / SCRUM delivery methodology.
- The ability to write and understand code – preferably in Java and JavaScript for the test automation frameworks.
- Experience with software development tools (IDE, debugger, git, JIRA, Jenkins, etc).
- Professional-level programming skills (regex processing, class design, Map data structure, etc.), particularly in Java and/or JavaScript.
- Novice-level shell scripting skills (commands like grep, cut, sed, sort, wget, etc.).
- Knowledge of Serenity BDD test framework, (Cucumber, Selenium, RestAssured).
- Familiarity with Behaviour Driven Development approach and Gherkin language.
- Familiarity with JSON objects, SQL queries, data structures, log file analysis, etc.
- Familiarity with Swagger and Open API Specifications.
- Knowledge of building mocks with WireMock.
- The passion to build tools that will enable the engineering team to write tests efficiently.
- The trait of constantly looking for better solutions to bring down automation flakiness and increase automation reliability, thinking ahead and building for future changes in an ever-changing mobile ecosystem.
- Desire to automate everything and reduce the time required to manually test the products.
- The willingness to work with other teams such as engineering, manual QA, product and release teams.
- Bachelor’s degree in a relevant discipline such as computer science, business informatics or mathematics. Comparable education or professional experience also considered.
- High on social skills, team spirit and empathy.
- Willingness to take ownership and ability to show strong personal commitment for the department and the team goals; must be comfortable with being considered a reliable and proactive influential team member who is not afraid to take on responsibility in the team.
- Ability to communicate clearly to business analysts and stakeholders as well as technical-representatives.
- Very strong and proven communication and coordination skills, open-minded and determined.
- Responsible for planning, highlighting and implementing possible improvements for existing and new applications.
- Can do, Will do attitude: You will be joining a founding team first and a large organisation second. This is exciting, you will wear many hats, some you will be familiar with and others will be an opportunity to develop.