Job Location: Model Town, Lahore
Salary: Rs60,000 – Rs80,000 per month
Application Deadline: 1st November 2024
Email: hr@technocares.com
The primary task of a Software Quality Assurance Engineer in Lahore (QA) is to work closely with software developers and project managers to understand the project requirements and user stories. This collaboration is essential because QA engineers need to have a detailed understanding of every feature and functionality to conduct effective testing. By discussing with developers and project managers, QA engineers ensure that the project specifications and expectations are clear and there are no misunderstandings.
If a new login feature is being added to a project, the QA engineer must meet with the developers to understand the user experience and how testing will be conducted. A thorough review of user stories and requirements is essential to ensure that nothing is missed during testing.
QA engineers are responsible for developing test cases and test plans that provide testing instructions according to the project specifications. This is a major task for QA engineers. Test cases are instructions that guide the testing process, detailing how each functionality will be tested. QA engineers need to create test cases and plans that give detailed instructions for every feature, user story, and functionality.
If a feature involves data validation checks, the QA engineer must create a test case to check how the system will respond when the user enters incorrect data. These test cases cover all possible inputs and edge cases.
Executing test cases is the primary testing process. This can be done manually or using automated testing tools. In manual testing, the QA engineer runs the test cases themselves and evaluates the software’s functionality, while in automated testing, scripts are written to run tests automatically.
If a login system is being tested, in manual testing, the QA engineer will test all possible login scenarios, such as valid credentials, invalid credentials, and the forgotten password functionality. Using automated testing tools like Selenium, this process can be repeated to save time.
When a defect or bug is identified in the software, it is the responsibility of the QA engineer to document and track it until it is resolved. This defect tracking process is critical because it is important to accurately track each defect and update its status for the development team.
If there is a bug in the login feature, such as the system crashing on incorrect password entry, the QA engineer will track this bug and report it to the development team. The documentation will include details like the nature, impact, and priority of the defect.
QA engineers are required to participate in agile/scrum meetings, where updates on testing progress and challenges are discussed. In agile methodology, testing and development occur simultaneously, and updating the testing progress after each sprint is necessary. QA engineers need to communicate their work and challenges so that bottlenecks in the project can be resolved quickly.
If a challenge arises in testing, such as a bug in test automation scripts, the QA engineer must discuss the issue in the sprint meeting to find a solution and avoid affecting the project timeline.
Another major responsibility of QA engineers is to ensure quality at every phase of the Software Development Lifecycle (SDLC). They ensure that the deliverables at each stage meet the quality standards. From the initial stages of development to release, QA engineers conduct testing and validation at each step.
If a flaw is detected in the design phase of a feature, the QA engineer must identify it early and report it to the developers. This proactive approach helps maintain quality throughout the development lifecycle.
Creation and Maintenance of Testing Documentation:
QA engineers are responsible for creating and maintaining testing documentation. This includes test scripts, test matrices, and test reports. The primary role of testing documentation is to make it available for future reference, so that anyone reviewing the testing outcomes can easily access the information.
Example:
Test scripts documentation defines the expected outcomes and test procedures for each test case. In test matrices, QA engineers map test cases to project requirements to ensure that all requirements are covered.
Bachelor’s Degree/MS in Computer Science or Related Field:
The basic qualification for a Software Quality Assurance Engineer typically involves a degree in computer science or a related field. This degree provides theoretical knowledge that helps in understanding testing methodologies, software development processes, and programming languages.
1 Year of Experience in Software Quality Assurance:
A minimum of one year of experience in testing and QA is required. This experience helps in handling real-world testing challenges and teaches how to use testing techniques and tools effectively.
Strong Analytical and Problem-Solving Skills:
QA engineers require analytical skills to identify software defects and issues. They efficiently analyze problems and find solutions.
Familiarity with Software Testing Methodologies:
Understanding testing methodologies like black box testing, white box testing, regression testing, etc., is crucial. Each methodology has its purpose, and QA engineers must decide which methodology to use in a given situation.
Basic Understanding of Programming Languages:
A basic understanding of programming languages like Ruby on Rails, Python, or JavaScript is important to identify coding-related issues during testing.
Experience with Testing Tools:
Experience with automated testing tools like Selenium, JUnit, or TestNG is valuable. These tools speed up the testing process and help automate repetitive tasks.
Hands-on Experience with White Box and Black Box Testing:
QA engineers should have hands-on experience with both types of testing: white box (internal structure understanding) and black box (evaluating external behavior).
Solid Knowledge of SQL and Scripting:
Knowledge of SQL is essential for database testing. Familiarity with scripting languages is also necessary to customize test automation.
Salary: To be mutually decided during the interview.
20 Annual Paid Leaves: The company offers 20 days of annual paid leave.
Bi-annual Increments: Salary increases every 6 months.
Appreciation-based Lunch/Dinner/Bonuses: Performance-based incentives and rewards are provided.
Professional & Supportive Work Environment: The company offers a professional growth-oriented work environment.
Growth Opportunities: Employees are provided opportunities to develop their skills and career growth.
Job Type: Software Quality Assurance Engineer (Full-Time) in Lahore
Work Location: In-person
Ability to Commute/Relocate: Planning for reliable commuting or relocation to Lahore is required.
If you need information for any other job, you can get it from this link: https://hoptojob.com/