“It is a myth that software testing is inferior to development”
|- Ramana LRV; Head of Software Testing Practice, TalentSprint|
There are many myths about pursuing a career in software testing - it is not considered a challenging career path, on par with software services in terms of growth and compensation. Let us take a fresh view of what this field has to offer globally - the changing trends in the market, the skill sets required, and the growth and career opportunities that are available to a software test engineer.
Breaking the first myth
Most organizations recognize software testing as an independent professional discipline. Software Testing not only brings objectivity and transparency to the defect reporting process, but also improves the core business strategy. Software testing has undergone huge changes due to focus in technology, methodology, and more importantly, business dynamics.
Looking at the global trends in the software testing field, we see that the market opportunity for the Indian offshore testing companies is huge. Currently, the Indian software testing industry holds close to 50% of the global outsourced testing market. The Indian market requires almost 35,000 testers to bridge the gap, which will continue to increase to almost 1,65,000 in the year 2013 as per IDC Projections.
Testing as a serious career option
Once we have broken the myth on job opportunities in the testing field, we now break the second myth that a tester has a limited role to play in the industry. As a career option it is not just open for software professionals but also for professionals from other industry domains, as software testing is not just confined to application testing but covers the whole process of development and quality norms.
According to the Agile principle of early involvement, a software tester is expected to get involved from project inception. Testing activity starts right from the requirements-definition stage. In many organizations today, test driven development is the norm. This increased focus on quality has greatly increased the scope of testing activity. Testing has become a serious career option for software engineers. In fact a fresher or someone with 2-3 years of experience might eventually find testing to be the fastest way to gain domain expertise. Testing is now compared at par with other IT services in terms of revenue for companies.
Apart from a great career that includes growth and compensation at par with others in the industry; you will get multiple opportunities to work on a wide spectrum of domains and technologies. Software testing professionals have many interesting options today to design their career path based on individual preferences. If you specialize in a particular kind of testing, you can grow as a test architect; focusing on technical testing. Alternatively, you can specialize on a domain and become a functional expert. You also have the option to get into ground-breaking areas such as professional games testing and mobile device testing.
A fresher who enters the industry as a test engineer, can choose the testing line or else move towards the quality assurance line where he can become QA lead and then QA manager. A typical career path for a professional tester would unfold as a junior test engineer, test engineer, test analyst, test lead, QA manager, followed by program manager/COE head.
Software testers are professional investigators:
With greater clarity on job opportunities and career path, we also break another myth that Software Testing professionals “don't get involved in high-end and challenging work” or that software testers’ are not as “cerebral” as their counterparts in software development. “With the lines between development and testing blurring, a test engineer is no longer considered as someone good at clicking a button on the application’s user interface. There are many more activities and skills expected from a test engineer” says Ramana.
Software testing as an activity is most effective and beneficial when it moves away from being reactive towards being proactive. That’s why we can say Software testers are professional investigators. As a test engineer, you play an important role in ensuring that the final software application or product meets the desired quality standards (and the success or failure of the application or product largely depends on its quality).
So a tester needs to have excellent Communications skills, Technical skills, Leadership qualities and Analytical / Judgement skills. He or she must develop out of the box and critical thinking, be creative and strive for excellence. They should have the ability to communicate well to a diverse group of people together with confidence and passion towards the field. Technical skills would need to be supplemented with good domain knowledge. This includes an ability to write code, good understanding of systems and application architecture, and knowledge of databases.
There are many open source testing tools (for test automation, performance testing, data validation, etc.). Getting familiar with these tools and with their basics is mandatory, as sooner or later you will need to use them. Understanding terms like TDD, Agile testing, Risk & Model based testing, Customer experience testing, Security testing, Performance testing and Performance fine tuning, etc are important. Developing a basic understanding of the key activities in domains like Banking, Financial Services, Insurance and Telecom, among others, will allow you to enhance test effectiveness. So it is important to take exams and get certified in these domains as well.
So if you have a critical, investigative mind, a strong technical background, and an ability to communicate and connect with people, then a career as a Software Testing Professional awaits you!References: