We are looking for a skilled Automation Test Engineer with strong Java programming skills and extensive experience in test automation frameworks. The ideal candidate will have a solid understanding of quality control processes, continuous testing practices, and Agile/DevOps methodologies. This role requires a proactive, quality-conscious individual with a collaborative mindset and excellent communication skills.
Key Responsibilities
- Automation Framework Development: Develop, maintain, and design robust test automation frameworks from inception using Java programming.
- Test Strategy & Execution: Lead Test Planning/Test Strategy/Test Case creation and execution, including maintaining a Traceability matrix.
- Test Data Management: Identify and create/mine test data by querying/retrieving from backend databases/API calls.
- Test Automation (UI/API): Implement UI/API test automation using various tools like Selenium, REST Assured, JMeter, Appium, Cucumber, etc., for web and mobile applications.
- Quality Control & SDLC: Oversee the end-to-end quality control process, ensuring high standards throughout the Software Development Lifecycle (SDLC).
- Continuous Testing: Implement and manage continuous testing using tools like GitLab, Jenkins, or similar, integrating with CI tools such as GitLab/GitHub.
- SQL Proficiency: Write and optimize SQL queries as part of the testing process.
- Data Platform Experience: Leverage experience working with data platforms (highly advantageous).
- Collaboration & Communication: Work effectively with team members and stakeholders across all levels to drive quality practices. Engage proactively with the QA Manager regarding project statuses and risks, especially within globally distributed teams.
- Agile & DevOps Contribution:
- Participate actively in Agile/DevOps teams, understanding their concepts, ceremonies, and tools like RALLY and ALM.
- Utilize Agile frameworks such as Test Driven Development (TDD) and Behavior Driven Development (BDD).
- Contribute to the Quality Engineering community by enhancing quality practices.
- Implement CI/CD practices using tools like Jenkins.
- Code Development & Debugging: Develop code with strong debugging skills to identify root causes quickly. Collaborate with developers to ensure systems are designed for reliability, performance, and testability.
- Design Patterns & Locators: Apply knowledge of design patterns and coach others on their use. Utilize Page Object modeling for automation and implement CSS and XPath-based locators for element identification.
- Service Integration: Leverage SOAP and REST services programmatically via Java.
- Cloud/Micro-services: Work with cloud/micro-services architectures and perform integration testing with data virtualization tools.
- IDE Proficiency: Use Intellij/Eclipse/My Eclipse IDE for development.
- Localization/Internationalization: Understand the impact of localization and internationalization on web and native applications.
- Tools Experience: Hands-on experience with tools like Selenium, Cucumber/Jbehave, REST, JSON, GIT.
Required Skills
- Experience: 5+ years of experience in testing complex workflows utilizing test automation skills.
- Methodologies: Full understanding of Agile methodology/factory model, SDLC, QA, and Defect Lifecycle.
- Test Management: Experience with Test Planning/Test Strategy/Test Case creation and execution, including Traceability matrix. Experience with test management tools (e.g., JIRA/Test Rail) and Test design tools like Hexawise.
- Automation Tools: Extensive test automation experience (UI/API) using various tools like Selenium, REST Assured, JMeter, Appium, Cucumber, etc., for web and mobile applications.
- Programming: Strong experience in Java programming; any shell scripting will be preferred. Proven track record in developing test automation frameworks from inception.
- CI Tools: Proficient/working experience on various CI tools such as GitLab/GitHub.
- Cloud Platforms: Skilled in utilizing cloud platforms such as Azure.
- SQL: Strong SQL proficiency for test data identification & creation/mining.
- Collaboration: Excellent interpersonal skills, stakeholder management, and ability to collaborate across and within teams.
Good to Have Skills
- Understanding of non-functional testing.
- Experience working in Agile teams with a deep understanding of Agile principles and practices.
- Strong understanding of CI/CD pipelines.
- Familiarity with other programming languages.
- Experience with Azure services.