Bijubabu Arayakkeel, Director, IT Quality, National Life Group
The software testing landscape is currently going through significant changes to cater to emerging and disruptive technologies in the industry. The digital advancements and subsequent changes in software development practices have reshaped the testing processes considerably as well, shifting the technologies used and redefining the skill set requirements for testing professionals.
Over the years, the traditional role of a QA (Quality Analyst) has transformed into a QE (Quality Engineer) and SDET (Software Development Engineer in Test) role to enable rapid software development and quality at speed. Organizations are building or relying on internal and external training programs as the skillsets for these transformed roles are much different from traditional skills with a steep learning curve.
In this article, I would like to summarize different dimensions of skills needed by testing professionals to stay relevant in the ever-changing technology landscape.
Software Development Methodology
Software Development Life Cycle (SDLC) has evolved in recent years. Huge pressure on speed to market has challenged the classic SDLC models to embrace models that facilitate faster delivery such as Agile, DevOps, and Continuous Integration and Continuous Delivery (CI/CD).
These models thrive on close collaboration with an emphasis on frequent releases and faster turnarounds. QEs should develop a deep understanding of the new SDLC models, differences in testing approaches, roles/responsibilities of stakeholders, deliverables from each phase, entry and exit criteria, etc., to effectively manage their responsibilities.
Open-source automation tools are gaining momentum because of alignment with Agile/DevOps practices and native adaptability with CI/CD toolchain. As a result, organizations are steadily moving towards these tools as they are less expensive compared to licensed tools. QEs must learn both open-sourced and licensed tools that are widely adopted in the areas of automation of functional, regression, web service/ API, and database testing for Desktop, Web, and Mobile based applications.
As more and more organizations are competing to bring better customer experiences through web-based applications and mobile apps, focus on non-functional testing types such as performance, load, stress. security, compatibility, accessibility, and localization testing are gaining significant traction. There are open-source and licensed tools for the above testing types and specializing in any of those will be highly beneficial for QEs to stay ahead of the curve.
Software Development Life Cycle (SDLC) has evolved in recent years. Huge pressure on speed to market has challenged the classic SDLC models to embrace models that facilitate faster delivery such as Agile, DevOps, and Continuous Integration and Continuous Delivery (CI/CD)
QEs should also be proficient in platforms used for managing software projects and test management tools to document test cases, test execution results, defects, establish traceability, monitoring, and reporting of testing progress.
Due to the significant rise in the adoption of DevOps and CI/CD methodologies, the trend towards testing early and improving quality by „Shifting Left“, there is a high demand for testers who can write the code for testing purposes.
Organizations are currently in the lookout for testing professionals, not only with core testing expertise but also domain knowledge. They are shifting from agnostic testing to domainspecific testing to build value-driven and defect-free software products. It is critical for a test professional to develop deep and wide knowledge in the domain to understand the business requirements better, ask relevant questions, define relevant test scenarios, identify business-critical test data combinations, etc., for testing purposes.
As it is not an easy task to find talents with expertise in both domain and technology, companies are adopting creative methods. Some of these approaches include encouraging QE workforce to reskill and upskill through external certification courses, hiring Domain Subject Matter Experts (SMEs) to train QEs, defining the role of Test SME who can act as a liaison between QEs and Business, building cross-training programs to expand the horizon of QEs, etc.
Many organizations are investing heavily in third-party products and services to reduce the cost and time of building a solution from scratch. While some of these products can be very domain-specific (e.g. Underwriting and policy administration products in Life & Annuity Domain), others can be more of an enterprise-level product (e.g. Customer Relationship Management, Enterprise Content Management Products). Having strong product knowledge on these thirdparty products is going to be highly beneficial for the QEs to be efficient in their role. In combination with their solid domain knowledge, they can be a force to reckon with.
As Agile and DevOps methodologies evolved, the demand for collaboration between product owners, business analysts, development and testing teams is increasing. Soft skills such as strong oral/written communication, listening, teamwork, and interpersonal skills are going to play a major role in building synergy within the teams.
In these high agility environments, QEs need to operate with a higher level of ambiguity compared to traditional models and they need to be adaptable, flexible, ready to embrace changes, always eager to learn and very responsive based on the rapid development environment.
Testing professionals can also focus on improving their EQ (Emotional Intelligence) by working on their personal and social competence to perform at their highest potential.
The share of spend on software testing has steadily increased over the years and it will continue to grow owing to the dynamic advancements in the industry. As the opportunities in software testing increase, there is going to be a greater need for quality engineers with varying skills. Traditional and advanced testing skills will be inadequate with newer technologies such as Artificial Intelligence/Machine Learning. Testing professionals must reinvent themselves by constantly skilling, reskilling, and upskilling their talents in the areas documented in this article to stay afloat and stay relevant.