The market demand for test automation is higher than ever but the number of automation jobs is lower.
How can this be?
One reason is the "test automation" name.
Test automation is not a good name for this type of testing. Automated checking or tool-assisted testing (James Bach) are describing better what actually happens.
Automation does not automate or replace creative testing but just checks that simple test cases work.
Because test precedes automation in the name, companies and testers thought that test automation is a part of testing and it should be done by testers.
Testers started believing that test automation is the silver bullet for their careers and went ahead with the "learning phase".
After going as fast as possible through the minimum of Selenium WebDriver and a programming language, many claimed being automation engineers instead of manual testers.
And some companies, especially the ones without rigorous interviewing processes, hired the manual-testers-converted-overnight-to-automation-engineers.
These "engineers" start with enthusiasm to build automation projects and write code, lots of code. Which in most cases is just a bunch of crap.
I have seen such projects built by automation "experts" who
do not understand inheritance and composition
have no clue how to use interfaces
don’t know what page factory, loadable component or yes, maven are
use hasp maps instead of objects
create test classes with thousands of lines of code and hundreds of methods
create page classes with click/type/getText methods for each page element (again with thousands of lines of code)
use static methods and variables heavily
use utility classes a lots
These experts are great at writing VisualBasic-code-in-Java.
Hooray, Visual Basic is not dead and it is coming back strong!
What else defines the so-called experts?
The only thing that matters is if the code works now. It is less important that the code is inefficient, not object oriented, difficult to read and maintain. It is also less important that the code fails randomly when executed in Jenkins. If the tests fail, we just rerun them until they pass.
After a while, companies start realizing that things are not going well, especially when they have a few thousands of tests which fail with a 25-30% rate.
And, then, they switch direction and hire developers. This is a good decision since, in most cases, a good developer can do the work of 3-4 VB-in-JAVA automation experts.
It should be clear now why the business demand is higher for test automation but the number of jobs lower.
The market matures and filters out people who are not suitable for automation work.
Pradeep Soundararajan (from Moolya) said somewhere on Quora that
Not all manual testers will disappear, only the unprofessional ones.
My opinion is that this is happening for test automation as well:
The professional automation engineers will stay, the other ones will fade away.
Contrary to what you hear from a lot of people, test automation is not easy and it is not for anyone.
To do it well, you have to learn a new job and become a developer.