I have been leading Verinite Labs for 6 months now where the mandate has been to develop our own IP by building technology solutions for some of the problems faced by the financial institutions. Being from services background, these 6 months have given me an interesting perspective about lot of things and one of them is about an off-running argument of “Whether today’s testers need programming skills?”.
In a product team, a tester plays a unique and an important role. He is an advocate for the end user while collaborating with his team in maintaining the right agility in its operations and the product development effort.
To be able to understand the product under development more technically, to automate tests, develop test frameworks, and customize tools to meet the team’s testing needs, programming skills come handy.
Testers come under 7 categories:
Every tester type has its own value, plus a tester does not have to confine himself to a particular category.
Usually, most testers come with an engineering background, and the least coding skills. They lose touch though if they don’t get sufficient opportunities to code.
Testers can, if they wish, ensure they don’t let their coding skills rust. For that they need to do periodic static code reviews, work on test automation, review existing test automation code etc.
Some argue that since all testers don’t do test automation, all testers need not have programming skills. Because testers who do exploratory testing, bring along a different yet valuable set of skills to the team. They have good analytical skills, investigative skills, and a deep understanding of risk, and other hidden issues along with some technical knowhow like databases, networks, system administration etc. Some of the very best testers don’t know even a bit of programming.
Some others argue that coding and testing skills should not be mutually exclusive.
They say that if a tester has programming skills it will benefit him and the organisation immensely.
Here are a few benefits:
So there are many reasons why skilled testers should build their programming skills so that they are able to read, write and understand code.
In the end, with areas such as artificial intelligence, big data and interactive computing, manifesting themselves in several domains, technology is growing at a very rapid pace. So in today’s world, the value and the versatility a tester brings with his programming skills will go a long way in differentiating him and his testing team. So it makes more sense to start understanding the value of a tester with programming skills rather than making it mandatory for testers to now programming.