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.
Software Development Engineers in Test (SDET’s) are a special breed of quality fanatics who use their toolbox of technical talent to automate and scale their testing efforts. When faced with any task, their first reaction is to find an engineering solution. Married to this is a deep knowledge of quality, understanding the test coverage requirements and going beyond them. SDET’s are held to the engineering standards of the developers and simultaneously the quality standards of dedicated QA staff
This person will support engineers by designing and maintaining cutting-edge automation systems to ensure we deploy code with amazing quality and speed. This person will be working as part of a global distributed development organization using Agile Scrum methods.
- 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.
- Experience with software development tools (IDE, debugger, git, JIRA, Jenkins, etc).
- 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.