About the job Software Tester
Overview:
A Software Tester is responsible for ensuring that software applications work as intended and meet user requirements. They conduct various types of testing (e.g., functional, performance, security) to identify bugs, usability issues, and areas for improvement. A Software Tester collaborates closely with developers, business analysts, and product lead managers to ensure high-quality software delivery.
Background
We are looking for Software Tester to join the Programming & Project Design product team, within the Technology and Transformation for Operations (TTD/TTO) unit.
Our product vision is to empower the Banks operational teams with digital solutions that enhance efficiency, enable seamless collaboration, and support strategic decision-making throughout the programming and project design stages in the Bank operations lifecycle.
This role will involve in collaborating in delivering a suite of high-impact capabilities, including process automation and workflow orchestration, digital templates and standardization, collaboration and version management tools, governance and compliance monitoring through integrated data platforms powered by AI-driven tools, and intuitive user experiences.
Responsibilities:
1. Test Planning and Strategy:
- Develop test plans and strategies for software applications based on product requirements.
- Collaborate with stakeholders to understand functional and non-functional requirements.
- Define testing objectives, scope, and deliverables.
2. Test Case Development:
- Design and document test cases based on software specifications and user stories.
- Create detailed test scripts for manual and automated testing.
- Develop test data and environments to simulate real-world scenarios.
3. Test Execution:
- Perform manual and automated tests on software applications.
- Execute test cases and document results, including bugs and anomalies.
- Conduct regression testing to verify that changes or updates do not introduce new issues.
- Generate metrics about the quality of software, like errors per thousand code lines.
4. Bug Tracking and Reporting:
- Identify and report bugs and issues in a clear, concise manner using bug tracking tools (e.g., Jira).
- Work with developers to replicate issues and verify bug fixes.
- Provide detailed reports on testing progress, coverage, and outstanding issues.
5. Automation Testing:
- Develop and maintain automated test scripts using testing frameworks (e.g., Selenium, NUnit).
- Continuously improve automated testing processes to increase efficiency and reduce manual testing.
- Execute automated regression tests to ensure continuous integration and delivery.
6. Performance and Security Testing:
- Conduct performance testing to assess software responsiveness under various conditions.
- Perform security testing to identify vulnerabilities and ensure compliance with security standards.
- Analyze test results and provide recommendations for performance and security improvements.
7. Collaboration and Communication:
- Work closely with developers, business analysts, and product owners to resolve issues and clarify requirements.
- Participate in daily stand-up meetings, sprint reviews, and retrospectives in Agile environments.
- Provide feedback and insights on software usability and user experience (Datadog).
8. Continuous Improvement:
- Stay updated with the latest testing tools, methodologies, and industry trends.
- Advocate for quality assurance best practices and continuous improvement within the development team.
Key Skills and Competencies:
Technical Skills:
- Proficiency in testing tools (e.g., Selenium, JIRA, QTest, Cucumber, Jmeter).
- Strong knowledge of programming languages (e.g., Python, Java, C#) for automated testing.
- Experience with test automation frameworks (e.g., TestNG, Nunit, XUnit).
- Familiarity with CI/CD pipelines and integration of automated testing into DevOps workflows.
- Knowledge of SQL for database testing.
Analytical Skills:
- Strong problem-solving abilities to identify and diagnose issues.
- Ability to think critically and challenge assumptions to improve software quality.
Attention to Detail:
- High level of attention to detail for identifying edge cases and ensuring thorough test coverage.
- Precision in documenting and reporting issues.
Collaboration and Communication:
- Excellent communication skills for liaising with developers, product owners, and stakeholders.
- Ability to work effectively in Agile/Scrum teams.
Experience and Education:
- Education: Bachelor's degree in Computer Science, Information Technology, or a related field.
- Experience: 2-5 years of experience in software testing, with experience in both manual and automated testing, black and white box testing.
Certifications (optional but beneficial):
- ISTQB Certified Tester
- Certified Agile Tester (CAT)
- Certified Software Test Automation Specialist (CSTAS)
Tools and Technologies:
- Testing Tools: Selenium, JIRA, Postman, QTest
- Automation Frameworks: TestNG, NUnit, Cucumber
- CI/CD Tools: Jenkins
- Programming Languages: Python, Java, JavaScript, net Core
- Databases: SQL Server