QA Engineer - Junior (SP5) - IT Enterprise Services Platform
Position summary
Introduction
Job description
KEY PERFORMANCE AREAS (KPAs)
The QA Engineer (Junior) assists and facilitates the planning stage with all agile team members. The QA Engineer (Junior) works closely with the agile team to create test plans, manage test activities, and monitor quality deliverables. The role helps meet deadlines by breaking up the development process into attainable testing goals and relaying any issues back to the development and product teams.
Agile Testing applies the principles of agile development to the practice of testing. Although traditional development has used a big-bang, deferred testing approach, agile testing develops and tests systems in small increments, often developing tests before writing the code, Story, or Feature. Quality is built-in from the beginning. Agile testing is a collaborative, team-oriented process.
- Identify bugs and potential problems within the software
o Help monitor performance and uncover system vulnerabilities through tools and bug-tracking systems
o Conduct testing activities, whether manual or automated QA testing, during appropriate development stages to eliminate bugs and flaws
o Work with Software Engineers, Automation Engineers, and other stakeholders to troubleshoot testing failures and bugs
o Code, script, and configure automated tests
o Discover bugs and failures within the software
o Identify, isolate, and track bugs throughout testing
o Identify any potential problems that users might encounter
o Perform manual and automated testing
o Review requirements, specifications, and technical design documents to provide timely and meaningful feedback
o Research and analyse product features being tested
o Review user interfaces for consistency and functionality
o Perform thorough regression testing when bugs are resolved
- Plan and perform various stages of testing
o Set the QA process objectives to ensure that the result leads to the fulfilment of all product requirements
o Plan testing activities according to the objectives and create a strategy based on schedule and other project specifics
o Communicate with the Scrum Master, Product Owner, and other stakeholders about QA activities and progress
- Develop new tools, technology, and testing processes
o Develop standards and procedures to determine product quality and release readiness
o Drive innovation and streamline overall testing processes
o Research new tools, technologies, and testing processes
o Design and build tools and processes to verify requirements for failures and bugs
- Document test progress and results
o Creating detailed, comprehensive, and well-structured test plans and test cases
o Record test progress and results for Change Control purposes
o Document the testing results and analyse the errors to identify their root cause
- Agile testing
o Unit and component tests. To confirm that the system works as intended, tests are written to run before and after code changes. In software, this is the home of Test-Driven Development (TDD).
o Use functional tests (user acceptance tests) for stories, features, and capabilities to validate that they work the way the Product Owner (or Customer/user) intended. Feature-level and capability-level acceptance tests confirm the aggregate behaviour of many user stories. Teams automate these tests using Behaviour Driven Development (BDD) techniques whenever possible and use manual ones only when there is no other choice.
o Use system-level acceptance tests to validate that the behaviour of the complete system meets usability and functionality requirements, including scenarios that are often encountered during system use. These may include exploratory tests, user acceptance tests, scenario-based tests, and final usability tests. Because they involve users and testers engaged in real or simulated deployment scenarios, these tests are often manual. They are frequently the final system validation before delivery of the system to the end-user.
o Contains system qualities testing to verify the system meets its Non-functional Requirements (NFRs), as exhibited in part by Enabler tests. Typically, they are supported by a suite of automated testing tools (such as load and performance) designed specifically for this purpose. Since any system changes can violate conformance with NFRs, they must be run continuously, or at least whenever it is practical.
Minimum requirements
Core Competencies:
- Ability to work as part of a team
- Adhering to principles & values
- Presenting and Communicating Information
- Writing and Reporting
- Learning & Researching
- Creating and Innovating
- Planning and Organising
- Adapting and Responding to Change
- Coping with Pressures and Setbacks
- Achieving Personal Work Goals and Objectives
Experience/Knowledge & Skills
- Some quality assurance knowledge - Must have an in-depth knowledge of how QA works in the software industry. This includes knowing the latest trends, methodologies, and tools to help improve the processes for the Group.
- Attentive to detail - Must have great attention to detail, even the most minor ones. When a person is thorough in checking every minor detail, meeting the requirements becomes easier.
- Task and Time management skills - There are times when the QA team must accomplish tasks simultaneously. Therefore, an individual must know how to manage time and energy based on the level of priority of all deliverables.
- Analytical and a problem-solver - Troubleshooting requires high-level analysis at times. Therefore, as part of the QA team, one must have good analytical skills to determine the root cause of the problem.
- Some practical work experience in software development
- Must be familiar with development practices like Test Driven Development (TDD) and Behaviour Driven Development (BDD)
- Some experience in writing clear, concise, and comprehensive test plans and test cases
- Hands-on experience with both white box and black box testing
- Some hands-on experience with automated testing tools
- Good knowledge of SQL and scripting
- Experience working in an Agile development process (Scaled Agile Framework for Enterprises (SAFe), DevOps, Scrum)
- Experience with performance and security testing
- Strong PC Skills including MS Office, MS Azure DevOps, and MS Power BI
- Excellent verbal and written communication skills
- 1 years of banking experience
- 2 years of relevant software quality assurance experience
QUALIFICATIONS
- BS/MS degree in Computer Science, Engineering, or a related subject
- Relevant Software Quality Assurance Certification will be an added advantage