Demystifying RPA
What is RPA?
The buzzword “RPA” has been gaining traction in recent years across different industries, but what is it exactly and why is it so popular? I too, had a similar chain of thoughts when I was fresh out of school and starting my first job as a RPA Analyst.
RPA stands for “Robotic Process Automation”. It is nothing more than a process of creating software programs to automate non-decision making repetitive activities or processes. An important point to note is that making RPA programs is not the same as making physical robots. RPA programs are often regarded as robots, simply because they mimic human actions in carrying out tasks. A software robot, if you will.
RPA is also known as RDA (Robotic Desktop Automation)
A brief history of RPA
Although RPA is very popular nowadays, a similar form of automation has been in the market for a long time. During those early periods, RPA existed in the form of screen scraping and automated testing tools. Soon after, it was used as one of the automation tools in business process management. The main factor for businesses to adopt RPA in business process management was that more and more systems were being used in end-to-end business processes and it got harder and harder to automate those processes just by writing macros in Excel sheets. Most importantly, scheduling is necessary for efficient time management (e.g. generating reports throughout the night or exactly at 1.00 am).
With the help of AI (Artificial Intelligence), present day RPA can do so much more than just automate business processes. It can extract text from images using OCR (Optical Character Recognition) technology. By using CV (Computer Vision), it can identify the images and process them with a given set of rules accordingly. It can also understand the context of a sentence or paragraph, thanks to NLP (Natural Language Processing), and so on.
How does RPA automate a process?
RPA programs are known to automate processes by mimicking human actions in those processes. If you are someone with a software engineering background or are familiar with APIs (application programming interfaces) and Cron jobs, you must be wondering how it defers from scripted automation; a variant where API calls are being made from scripts and scheduled in a server using a scheduler program. The Lab Consulting has a nice comparison summary chart for the standard manual vs scripted automation vs RPA version of a process for creating a user account in a system.
Given a process, creating a user account in this case, the scripted (APIs + Cron jobs) approach may require additional changes to be made to the existing processes. On top of building an API server for handling requests, the system has to expose the SQL(Structured Query Language) connection for that API server as well. Sometimes, this approach is not feasible if connecting to the SQL database using the connector from external scripts violates the software usage agreement contract of the database service provider. Moreover, producing an API server and the scripts requires additional tech talent.
This is the area that RPA does better. It doesn’t require a system change in any way. It can just follow the current process of doing things in the system and automate the steps. It mimics human actions, remember? By looking at the standard manual process and robotic automated process from Figure 1, it is clear that only the manual process steps are being replaced by the automated steps, nothing more. RPA frameworks nowadays offer a code-free environment to design and automate simple to mildly complex processes as well. Hence, only investment to train existing talent to use RPA tools is required rather than hiring entirely new tech talent.
What are the benefits of using RPA?
Have you ever encounter a colleague who doesn’t take her annual and sick day leaves, and neither asks for a pay increment nor a promotion? Furthermore, that person works very long hours without asking for any compensation? Ridiculous, right? But that is what a RPA program truly is. If it is done right, of course.
“A picture is worth a thousand words”
In the nutshell, RPA programs are super employees that do all the ridiculously mundane tasks accurately without complaining or competing with you for a promotion. That brings me to my next point, job security. Since RPA can do those tasks just like me, what does it mean for my future in the organization?
Will RPA replace jobs?
With all the benefits of using RPA programs and their ability to mimic human actions, will RPA replace jobs? The answer to that question is “it depends”. It depends on many factors. To the best of my knowledge, all I can say is that RPA will replace tasks. Repetitive, boring and mundane tasks that nobody wants to spend their time on. However, if your job mainly consists of those tasks, you are at risk of being replaced by RPA programs.
You can also calculate the chance of your job being replaced by robots from sites like https://willrobotstakemyjob.com/. Although it may not be able to give you the definitive answer, it is almost always good to know your risks. Then you can be prepared and plan to upgrade your skills.
You may hear about people getting laid off because automation has taken over their jobs. I strongly believe that those unfortunate events only occur due to either the employees not upgrading their skills for a long time or the employers not providing the opportunities for them to learn new things in the organization. Hence, whether or not you let RPA take over your job is entirely up to you. Stay hungry, stay foolish.