Thursday, January 8, 2015

Testers biggest grudges

For some reasons testers are believed to be less important than developers. And the less important you are the less paid you get. Most popular justification is that testers are less skilled than developers. I think there is a kind of bias at work as there are more skilled and less skilled people in either profession. And higly skilled testers usually have experience with different areas of sowftware development domain including technical ones. And still testing is considered to be the second best profession compared with development.

Different factors play into it such as country specifics, company and product specifics, cultural specifics and so on, but for the limited scope of this post I will concentrate on the following:
-- history of an issue
-- specificities of test profession
-- specificities of testing mindset
-- professional evolution of a tester



On history

History of IT has two major points that are related to testing as we know it. First is about how antijob movement sees IT professions. Second is about that style of creativity and the meaning of life that is promoted by managers from Google.

One mental health specialist I personally have a huge respect for, Mark Tyrell, lists the following among basic human needs (three from a list of nine, numbers are preserved the way they are given in the original):

3. The need for meaning, purpose and goals.
4. The need for a connection to something greater than ourselves
5. The need for creativity and stimulation

Just in case you are interested full article can be found here: http://www.self-confidence.co.uk/articles/top-ten-facts-about-low-self-esteem/

This proves that both antijob movement and google-like creativity movement have some psychological basis that makes them popular. Certainly, life-job conflict is somewhat more complicated to be covered in a short article, and it is important to make the following disclaimer: your attitude to your job is closely connected with a state of your psyche (or rather your soul to use a term that is more old-fasioned and a marred with different connotations) and your personal defense mechanisms. For instance, if you are not generally satisfied with your life you may tend to blame your job for that (it can also work otherwise: you can be deeply dissatisfied with your job and put is out on your family instead), but analysis of psychological issues is out of scope for this tiny blog post.

As antijob movement was majorily concerned with a lack of time for the "real life" (i.e. lack of opportunity to lay your hands on ## 3&5 above) downshifting was seen as an answer. And as not many jobs can afford remote employment (and it was even less acceptable 5-8 year ago before all those articles advocating work from home were written and liked in facebooks) IT profession was looked at like the source of these so hard-to-achieve joys of life. Not to mention that IT was (and still is) decently paid. IT people were considered to be the winners. But not all of them.

It was a great disappointment to find out that there are two casts in software engineering: development and testing (managers are not included if they are not low-level ones as there are different laws that govern their professional lives, and to the low-levels same rules are applied as are to the ordinary specialists). It turned out that testers are not entitled to those joys of profession as they were seen by public culture. If you manage to get a job as a tester you a usually bound to your workplace due to bunch of reasons such as security, networking issues or lazy management. With your salary you may be able to afford some kind of an independent life, but there is nothing out of the common way. All this poses the question which is still open to date: as IT functions exactly the way other professions do what makes it so special?

So grudge number one is this: the idea that IT is special is an illusion. Good job, Google, keep on.

Professional specificities and undervalued skillset

Testing profession maybe understood differently, so here are some cornerstones of it to get a big picture. Qualifications of a tester are usually split into four major groups: test & qa, other software engineering, product domain-speicific and a the rest that is usually lumped together under a title of "soft skills". Here they are in a little bit more detail:

test & qa:
knowledge of testing techiniques, qa principles etc
knowledge of test tools and hands on experience with them

adjacent areas:
(NB: If we see process of software engineering as a combination of different activities or interactions of different groups of professionals, then testing is one of them; and as communication with other teams means "learning the languages" for the said teams then the following becomes crucial for a good tester as well as other SWE team member):

knowledge of technical skills (this one ofter is considrered to be so important for a tester that it is included into the list of test qualifications although this is not too justified a decision in my opinion)
knowledge of analysis
knowledge of quality management

product domain:
ability to learn new domain
and actual knowledge of new domain

soft skills:
emotional intelligence
critical thinking
systems thinking
conscious or intuitive (depends on the necessary level of expertise) understanding how your brain works, i.e of judgement and decision making, leaning and problem solving
communication skills (not just ability to speak clearly in some language but understanding the complexity  of communication in a big organization and issues that may from from that like miscommunications of different kind).

In the light of the problem this post is trying to address the following three are behind the relatively low respect for the profession:

1. Testers are easy to find as it is widely (and wrongly) believed that testing does not require special qualifications
2. Not all the testers are required to have speicific technical skills
3. High importance of skills listed above as "soft skills" is greatly underestimated or no difference is seen between test specialist and developers.

In a course of time life finally dots is and cross ts by having management see the result of the oversight but as root causes are not often properly analysed or dismissed as "that's life" explanation they are unlikely to get understood and fixed. So the second grudge is about having to have professional skills that are demostrably misunderstood and undervalued by most of people you have to communicate with in a process of software engineering.

Tricks of differences of the mindset

There is also another thing that is widely belived in: development can only be done by developers while testing can be done by anyone (desperate enough to do any job offered). This thing might seem obvious but it may turn out otherwise on a second thought. The point is these professions have completely different goals. Development is majorily concerned with doing something in a cheapest and the most robust way, KISS principle is the key and those violate it get blamed for a reason. Development means you have to abstract and simplify to do your job. Testing means that you need to take something that looks simple and reveal its complicated nature. As such testers are forced to manage chaos while defelopers (especially junior ones mostly work with an isolated and simplified piece of the problem). Luckily, professional growth makes tester and developer equal in professional dealing with the chaos (and this is btw the point when their salary also match), but general respest for the profession remains notably lower still.

So grudge number three is about general inability of the majority of IT specialists and management to cope with professional issues due to misunderstanding of differences between development and testing.

Professional evolution of a tester

Quite unoriginally professional development resembles life and consist of a three major stages: junior level, intermediate level and senior level of expertise. There are lots of ways of assesment those levels -- all of them depend of specifics projecs, circumstances and peoples' choises. So here is just a description of how hopeful and junior gradually grows into a mature and disappointed one.

Initiation

People come into testing from very different professional areas, so I suppose that junior phase may be very individual for every person in particular. I would only like to point out that getting some degree in IT is not the only way of becoming a test engineer. And personally I prefer specialist who moved from other areas as they tend to have more diverse experience which turns out very useful this this type of profession. Stundents do not just lack hands on experience but are also very young and do not have much life experience which is even more important in profession that deals with randomness on a daily basis.

Between the devil of boredom and the deep sea of technical monsters

Anyway, one day a tester reaches next level of professional expertise. Her or she finds it out when it is too late, but it is true that intermediates are in the best position on the jobs market, because they already have mininum necessary skillset but are not used to high salaries yet. So it happens that they are completely unaware of their luck and keep struggling for more instead of setting for what is available until they reach the opposite: the hole in the job market when they become underqualified and overqulified at the same time.

Overqualified in test skills and underqualified in technical skills that are in high demand and are better paid because of that. Development of technical skills is rarely encouraged and as such become a very hard part of professional evolution for a tester with I suppose a very good chance of a dead end.

Depression is the most unplesant but not the only evil for a tester to get familiar with. It seems that testers who reached the point where their skills become somewhat out of the ordinary tend to get into a pitfall of seeing more than the others which if combined with poor ability to assess personal strength results in a spectacular professional falure. The art of setting limits is learned the hard way but luckily this lesson if taken appropriately, with due analysis of the reasons and no masohistic self-blame leads the tester to understanding of team work, task sharing and proper planning.

High skilled tester's trilemma

One day you wake up and understand that you have finally managed it. You could. You hit 10 out of 10 your own sado-perfectionist standards! And that feels good until you get used to it and ask yourself what's next? Because there is no longer a place for you in your profession that you could take without feeling sick most of the time. Surely there are people in the world who did not get far than #1 in Maslow's hierarchy but you somehow managed to get a different fate and you still need work around it.

It seems that usually skilled but bothered people in IT see their future as one of these three options: management, engineering or contemporary art where contemporary art stands for leaving the profession entirely for something else that may be or may be not related to the art at all.

What happens next? No idea. Probably something that usually happens to a person who choses to change his or her profession: some doubts, some strugging, some newbie joy, some disappointment, some fear of being outdone by those who seems to be younger and more talented than yourself (and it will take some time before you realise it is not necessarily going to be so). Ten years later you may end up either at TED or at psychiatric ward, there is no real promise, no guarantee of anything. And if you want an definite answer you should have probably tried runes =)

The grudge number four is the usual: every job is just a job. It would be wrong to expect too much of it. So stop bickering and get a life.

Conclusion

It looks like current approach to testing is undermined from the beginning by this primitive attitute to the profession as a cheap and non-productive one. This lack of respect results in the fact that people often do not grow into strong professionals in this particular area but are likely to burn out and leave in search for other opportunities and Google-style illusionary lands of creativity and happiness.


External links

There have been a number of discussions of the subject on the Internet, here are some of them for instance:

About defelopers earning more than testers:
http://forums.whirlpool.net.au/archive/1868664 (actually proves that in some places situation can be surprisingly reversed)

About importance of testing:
http://forums.whirlpool.net.au/archive/1638409

Again about the differences in salary:
http://www.testandtry.com/2009/07/03/why-tester-is-cheaper-than-developer/

And an attempt to compare specificities of the both professions:
http://programmers.stackexchange.com/questions/92004/does-being-a-software-tester-make-you-a-more-well-rounded-developer

No comments:

Post a Comment