Software Engineer
Job Description
We are looking for an experienced Automation Test Engineer with strong hands-on expertise in Java and Selenium WebDriver to develop and maintain automated test frameworks and ensure the quality, reliability, and performance of web-based applications. The successful candidate will work closely with developers, business analysts, and other QA professionals in an Agile/Scrum environment.
Key Responsibilities
- Design, develop, and maintain automated test scripts using Java and Selenium Web Driver.
- Create and execute functional, regression, integration, system, and end-to-end automated tests.
- Develop, enhance, and maintain scalable automation testing frameworks using TestNG/JUnit.
- Perform API testing and integrate automated tests into CI/CD pipelines.
- Analyse test failures, identify defects, perform root-cause analysis, and work closely with developers to resolve issues.
- Prepare test cases, test scenarios, test data, execution reports, and defect documentation.
- Participate in Agile/Scrum ceremonies including sprint planning, daily stand-ups, reviews, and retrospectives.
- Collaborate with developers, business analysts, and project stakeholders to understand requirements and define appropriate test coverage.
- Identify opportunities to improve test automation coverage, framework stability, execution speed, and overall QA processes.
- Support continuous integration and continuous testing practices within the software development lifecycle.
- Ensure automated test scripts are maintainable, reusable, and aligned with project coding and QA standards.
- Support testing across different environments and assist with release validation and production readiness activities.
- Contribute to overall QA strategy, test planning, and continuous improvement initiatives.
Mandatory Skills
- Strong hands-on experience in Java.
- Strong hands-on experience with Selenium WebDriver.
- Proven experience developing and maintaining automation testing frameworks.
- Hands-on experience with TestNG and/or JUnit.
- Good understanding of SQL and database testing.
- Hands-on experience with API testing.
- Knowledge of Git and CI/CD practices.
- Experience with JIRA or similar defect-management tools.
- Good understanding of software testing life cycle (STLC) and defect life cycle.
- Experience working in an Agile/Scrum software development environment.
- Strong analytical and problem-solving skills with the ability to investigate automation failures and identify root causes.
Preferred Skills
- Experience with Selenium Grid and parallel test execution.
- Experience with Maven and/or Gradle.
- Experience with Jenkins and/or GitHub Actions.
- Experience with REST Assured or similar API automation tools.
- Experience with web application testing across different browsers and environments.
- Knowledge of automation framework design patterns such as Page Object Model (POM).
- Experience with data-driven, keyword-driven, or hybrid automation frameworks.
- Experience testing banking, financial services, payment, or enterprise applications.
- Exposure to cloud-based testing environments or cloud platforms.
- Knowledge of performance, security, or accessibility testing is an added advantage.