Software Tester/QA Engineer
تفاصيل الوظيفة
We are seeking a Software Tester or QA Engineer who is responsible for ensuring the quality, reliability, and performance of software applications by conducting thorough testing and validation activities for our enterprise software application: Responsibilities:
- Test Planning and Strategy :
- Collaborate with stakeholders to define test objectives, scope, and priorities for the software application.
- Develop test plans, test cases, and test scenarios based on requirements, design specifications, and user stories.
- Test Execution :
- Execute test cases and test scripts to verify the functionality, usability, and performance of the software application.
- Conduct different types of testing, including functional testing, regression testing, integration testing, and system testing.
- Defect Detection and Reporting :
- Identify defects, bugs, and inconsistencies in the software application through systematic testing and validation.
- Document and report defects using issue tracking systems, providing detailed descriptions, steps to reproduce, and supporting evidence.
- Test Automation :
- Develop and maintain automated test scripts and test suites using test automation frameworks and tools.
- Execute automated tests as part of the continuous integration and delivery (CI/CD) pipeline to ensure fast and reliable feedback on code changes.
- Performance and Load Testing :
- Conduct performance testing and load testing to assess the scalability, responsiveness, and stability of the software application under various conditions.
- Identify performance bottlenecks and optimization opportunities and collaborate with developers to address them.
- Security Testing :
- Perform security testing to identify vulnerabilities and security risks in the software application.
- Conduct static code analysis, penetration testing, and security scanning to ensure compliance with security standards and best practices.
- Accessibility and Usability Testing :
- Evaluate the accessibility and usability of the software application to ensure that it meets the needs of users with disabilities and diverse user populations.
- Conduct usability testing sessions with end users to gather feedback and improve the user experience.
- Test Environment Setup and Maintenance :
- Set up and configure test environments, including test servers, databases, and test data, to replicate production environments for testing purposes.
- Ensure the stability and reliability of test environments by managing dependencies, version control, and environment configurations.
- Analyse test results and metrics to identify trends, patterns, and areas for improvement in the testing process and test coverage.
- Collaborate with the development team to implement corrective actions, process improvements, and preventive measures to enhance software quality.
- Testing Methodologies and Techniques :
- Knowledge of software testing fundamentals, principles, and best practices.
- Familiarity with various testing methodologies, such as black-box testing, white-box testing, and exploratory testing.
- Experience in creating test plans, test cases, and test scripts.
- Test Automation Tools and Frameworks :
- Proficiency in test automation tools and frameworks such as Selenium, JIRA, Postman, or JUnit.
- Experience in developing and maintaining automated test scripts using programming languages like Python or JavaScript.
- Performance Testing Tools :
- Experience with performance testing tools such as JMeter, LoadRunner, or Gatling for load testing, stress testing, and performance monitoring.
- Security Testing Tools :
- Knowledge of security testing tools and techniques for identifying vulnerabilities and security risks, such as OWASP ZAP, Burp Suite, or Nessus.
- Test Environment Setup and Management :
- Experience in setting up and configuring test environments, including servers, databases, and test data.
- Knowledge of containerization technologies such as Docker for managing test environments.
- Analytical and Problem-Solving Skills :
- Ability to analyse complex systems, identify potential risks and issues, and propose effective solutions.
- Strong problem-solving skills to troubleshoot issues and debug defects effectively.
- Communication and Collaboration :
- Excellent communication skills to effectively communicate test results, findings, and recommendations to stakeholders and team members.
- Ability to collaborate with developers, product managers, and other stakeholders to resolve issues and improve software quality.
- Attention to Detail and Quality Orientation :
- Meticulous attention to detail to ensure thorough testing coverage and accurate defect reporting.
- Commitment to quality and dedication to delivering high-quality software products to end users.
- Continuous Learning and Adaptability :
- Willingness to learn new testing techniques, tools, and technologies to stay updated with industry trends and best practices.
- Ability to adapt to changing project requirements, priorities, and deadlines in a dynamic software development environment.
- Strong analytical and problem-solving skills with attention to detail.
- Proficiency in gathering, documenting, and analysing business and technical requirements.
- Experience with test planning, execution, and defect tracking.
- Familiarity with testing tools (e.g., Selenium, JIRA, Postman) and requirement management tools (e.g., Confluence, Trello).
- Understanding of both manual and automated testing practices.
- Strong communication skills to interact with both technical and non-technical stakeholders.
- Knowledge of SDLC (Software Development Life Cycle) and STLC (Software Testing Life Cycle).
- Ability to create visual documentation, such as process flows, wireframes, or mockups, would be a plus.
- Experience with Agile methodologies, including Scrum or Kanban.
- Basic knowledge of programming languages or scripting for automated testing.
- Familiarity with database querying and APIs.
- Industry knowledge related to construction would be a plus.
- Certifications like ISTQB (Testing) or CBAP/CCBA (Business Analysis) are a plus.
Apply safely
To stay safe in your job search, information on common scams and to get free expert advice, we recommend that you visit SAFERjobs, a non-profit, joint industry and law enforcement organization working to combat job scams.