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