Everything changes and evolves. As our jobs change and evolve, do our job titles? Is the job description of a software developer or a software tester the same it was at the beginning of the 2000s? If not, why is the job title the same? Is it still the same role or are there new roles emerging?
If you had a time machine and brought back that software tester from the 2000s, would they be able to work and act efficiently in a modern multi-disciplined Agile team? Would they know about the software pipeline, CI-tooling, containers, orchestration, cloud services, machine learning or test automation? Or would they be more comfortable working in waterfall fashion, executing manual test cases and writing test reports?
To me, it seems obvious that the content of testing work has changed dramatically since then. Using the title “software tester” like an umbrella, a catch-all term for all testing related jobs seems too wide in the year 2020. Fortunately, specialist roles and titles, like test automation developer, have by now become commonplace and found almost everywhere. But there is a new job title emerging that needs to become more well-known. That is the title of a software robot developer.
What is a software robot developer? Is it a test automation specialist in disguise, a software developer straying too far into automation or a researcher developing AI robots? Short answer: it’s a mix of all three.
The ideal software robot developer is the Swiss army knife of software automation. The software robot developer writes and operates software robots to automate tasks that previously required manual human intervention. The term for this process is RPA, robotic process automation.
Example requirements for a software robot developer job could entail Robot Framework scripting and Python programming experience, knowledge of UI locator strategies, APIs and DevOps best practices, domain expertise and the ability to translate business requirements into working software robots [1]. It could also require using machine learning techniques to add intelligence to the software robot’s interactions. Another possible requirement is the ability to write interoperability software to translate commands between systems.
What is the pathway to becoming a software robot developer? Many of the current software robot developers have found their way in through first working in test automation roles. Test automation is technically very similar to RPA but it is used in a different context. RPA has to adapt to software changes during execution whereas test automation will simply pass or fail the test. After making the mental context change, the switch from a test automation developer to a software robot developer feels natural.
RPA and software automation growth show no signs of slowing down. The need for more and more software robots will continue to grow. And with it, the need for this new breed of specialists will also grow. The current problem is the shortage of software robot developers and where and how to hire them. I think we should start by acknowledging this new role and how it is different from software developer or test automation developer roles. We have to provide training and a pathway to becoming one. In ten years, it will be a role as ubiquitous as a test automation specialist is today. But we have to start by calling them what they are: software robot developers. With the correct job title.
References:
[1] The Open RPA Ecosystem, Antti Karjalainen, RoboCon 2020 presentation