What is our primary use case?
I started my RPA journey as a developer, and I first heard about UiPath as a low-code, drag-and-drop automation platform. Back then, it was very much in the beginning stages of its development. Ever since then, I've seen it evolve quite fast. I would say even faster than other RPA platforms that I've used, in just a few years.
Thinking back to when I first started using it, there are many new features and updates and it's my preferred platform for RPA.
We primarily used unattended automation, where you deploy the bots to work autonomously. This is unattended, end-to-end automation with no human in the loop, other than providing the inputs or checking the outputs.
We have several use cases, but our main one is reducing manual work. The processes that require a lot of manual input and have a lot of human error are the focus. That could be, for instance, processes that have to do with invoicing, billing, reporting, and coding, which require a lot of man-hours, are very reliant on a human being available, and are time-sensitive. Those are the ones that are on the top list to be automated.
Beyond that, I can't specifically talk about the processes that we've automated.
How has it helped my organization?
UiPath helps to implement end-to-end automation, although the discovery of processes, gathering requirements, and creating the design, all happen outside of UiPath. But the development, which is developing the bots, then testing and then deploying them, does happen end-to-end within UiPath.
The end-to-end development capability is important, but this is because every tool offers this and it is expected. That said, there is definitely room for improvement in that end-to-end should include process discovery. It is end-to-end, but those ends can extend further than what it currently is. In that sense, it's no different than other RPA tools.
Another way that UiPath improves the way our organization functions is that the robots can run 24/7. If you think about a human workforce, they work eight hours a day, they take days off, they get sick, they leave, and they take knowledge with them once they leave the company. But, the robots can be run non-stop 24/7, and each process can be scaled up. The same process can be run by one bot, or it can be run by 10 or 100 bots. This means that there's a lot more flexibility that the bots bring, especially for high-volume processes that perhaps even have some peaks, such as an end-of-month rush to produce invoices or meet a deadline or an end-of-financial-year crunch.
These robots have an easier time addressing and variability when it comes to volume. They really create a lot more scalability to where businesses can grow and know that they can meet the demands of the future. So, they're a lot more future-proof, whereas people are harder to rely on.
Speaking from a business perspective, it's the FTE savings. A company obviously needs to spend money on UiPath licenses and development costs, but those costs are oftentimes lower than the cost of that FTE, the full-time employee, whose work is getting automated. If you purely just think about the financial benefits, it's the lower staffing costs.
There is also the ability to free up people. This means that even if people aren't replaced and their salary isn't saved, what they can do is pivot their focus to, for instance, be a lot more customer-facing or do a lot more strategic or creative tasks that perhaps get pushed to the side because there's not a lot of time allocated towards performing them. Now, FTEs have a lot more capacity to contribute and perform tasks that still to this day cannot be automated, like creative thinking, complex decision-making on the spot, strategy, and just human interaction.
In the beginning, employees meet automation with a critical eye. They're thinking, "Well, what's going on? Why are these robots coming in? Are we going to work alongside them? How is this going to work?" But to be honest, in the end, there are winners and losers. What I mean by that is that some jobs are replaced, and that's just simply because of that FTE saving that is usually the driver to justify the cost of development. But on the flip-side, the employees that do stay and do work alongside the bots are usually a lot happier because they have to juggle a lot fewer things.
The robots are there to make people feel like people and not like robots, where they just do the same thing over and over and don't enjoy their job or don't enjoy what they do. A robot takes that away and helps people enjoy their work a lot more because they can do non-repetitive tasks. They can be a lot more customer-facing and perhaps build stronger relationships with their customers, know them better, and have more time available to work on other projects or work on other things that they may never have had the time to do.
In our organization, the robots work on multiple projects. The amount of employee time that is freed up depends on the project and what you are automating, but a pretty good estimate would be a 20% to 40% savings.
With respect to the reduction of problems related to human error, the fact of the matter is that some employees, whether you like it or not, are more error-prone. By automating a process, we were able to standardize it, and therefore, identify the cause of the human error and remove it by replacing the process with a robot that makes a more reliable judgment in terms of action. It is literally just an if-else statement. It's a lot easier to quantify and therefore it's a lot easier to evaluate, and therefore the result is a lot more reliable. Whereas with an employee, let's say the output of their work is a lot more unreliable simply because they could be working on 10 different things on the same day. There could be a deadline approaching, and the quality of work fluctuates with an employee because of it.
With a robot, you will notice that over time, in fact, the quality improves, and that's just the basic truth of RPA. It doesn't happen automatically, and it does require work. It happens because you see the results of the automation and you see areas for improvement, ultimately leading you to make adjustments. You iterate on the RPA solution and make it better over time.
Although it does not improve automatically, through a conscious effort you can be a lot more confident in the output and then be able to see unbiased results at the end of the day. Part of these results is your exception rates, which can be errors. It can be failures, whether technical in nature or decision-making business rule types of errors. Then, you can adjust your process to where it can positively improve that exception rate, and just iterate on that to where it becomes acceptable. Moreover, it's quite stable, which is not the case with the human workforce.
The automation cloud Orchestrator has its benefits and negative sides. The benefit is the fact that it's web-based. A person who has the login credentials can access it without the necessity to have something installed. The development and the monitoring of the bots are separated in UiPath, where the development happens in the Studio and the monitoring happens in the Orchestrator.
In other tools like Blue Prism, it happens in the same place. I've used both, and the Orchestrator is nice. It has a very nice UI, it's user-friendly, it has a lot of features, and I find it quite easy to use. For example, you can see all of the machines, you can see the robots, and you can schedule them. If the business wants to see a lot more across the output of the Work Queue, they can have that visibility from Orchestrator, which is great.
The downside of Orchestrator is the package deployment, which is perhaps another minus of UiPath in general. The deployment of a new package does not take a long time, but there are a lot of steps. It's not an intuitive process. If you have to release a lot of packages, which does occur, especially in the early stage of deployment, when you are releasing hotfixes, or when something goes wrong and you need to redeploy a fix really quickly to minimize business impact, it does slow you down.
I wish it would be just one or two clicks, rather than the whole importing or exporting and connecting to the desktop application and everything that accompanies it. I wish it were a lot easier. Again, it has its upsides but it's not perfect.
What is most valuable?
The best feature in UiPath is their robotic enterprise framework because that is an inbuilt processing framework for utilizing their work queues. It's plug-and-play, and already pre-built to where you don't have to start from scratch. It's enterprise-grade and ready to be used. All you need to do is populate your dispatcher, create a queue, create a performer, and you're good to go.
The highest benefit of it is that it's just there, ready to use, and you don't need to start from a blank screen. You don't have to figure out, for example, how to create an environment where the robots can check if there's anything in the queue to be worked on. The framework is already there. The other tools that I've used, like Blue Prism, don't have that built-in quite as well.
My perspective and overview are from that of a developer, and I find that the recorder feature is really good. This is because UiPath lets you record your actions on the screen. So, if you want to interact with a web-based interface, for example, then you have UiPath record your actions and then build the activities that you would need in order to replicate those actions through the robot. It makes it a lot better and although it's not perfect and it does need to be reviewed and adjusted, it speeds up development quite a bit. This is especially true when it's basic back development like populating fields and clicking buttons and navigating on a web.
Compared to other RPA tools that I have used, something that stands out to me in UiPath is that it has a very extensive library of activities. Those activities are easy to search for and use.
When you are writing code, there is a feature called IntelliSense, which autocompletes your code. More specifically, when you're typing code, if you're starting to type the name of a variable, it will show you all of the variables available and you can just click them. It's very interactive and it's reminiscent of the Microsoft Visual Studio environment, both from the UI perspective and the coding perspective. This means that developers that are familiar with Visual Studio will probably feel right at home using UiPath. It's very developer-friendly and it's geared towards appealing to existing developers.
The UiPath Academy courses definitely help in the process of bringing employees up to speed. The Academy is the go-to place for UiPath learning and I think that other RPA tools are copying this model of disseminating knowledge, being a lot more open with training, making it freely available, and providing an online classroom. These are things that UiPath has always done, and it certainly helps new developers get upskilled in RPA, and specifically with UiPath.
When it comes to ease of use, UiPath is intuitive insofar as the basic features have a low learning curve. However, if you want to take full advantage of what UiPath can do, and if organizations want to create more sophisticated automation solutions, it is more difficult. For instance, automations involving back-end access, maybe writing directly to databases such as SQL or using API, that's a steep learning curve. In fact, I think the learning curve is exponential.
If you just want to make a robot that sends an email, that's really easy to do. But, if you really want tangible benefits, like if you really want something that solves a business problem, it is a huge learning curve and it takes a while to master. Obviously, it does have that low-code requirement, but I would say that's only for entry automation projects, like proof-of-concept or something along those lines. For something that really solves a business problem, you would need code, because that just makes it a lot more robust and a lot more powerful if you can custom-code certain steps of the process.
What needs improvement?
Features for process discovery would improve the end-to-end development capabilities.
From a developer's point of view, my biggest struggle with UiPath is debugging. The debug mode in UiPath feels clunky and it is a sore spot. It feels it's hard to control the flow of the process. There are a lot of internal errors and it's not intuitive. In general, debugging is not a good experience and I don't enjoy doing it. In contrast, Blue Prism has better debugging capabilities.
Blue Prism is a little more dynamic; you can adjust variables, you can jump around the flow, and it's easier to control. With UiPath, it's a little bit of a nightmare. It becomes harder to debug the bigger your automation is, because it's quite unpredictable, and it's quite unstable. Definitely, if debugging was improved, I would say UiPath would get 11 out of 10.
Something that I noticed recently is that they have moved to paid certification for developers, whereas it used to have free certification. This is a little bit outside of the platform itself but the pain point here from my perspective is that there is a barrier to entry for new RPA developers, or ones that want to renew their certification. It has become a lot harder and that used to be a differentiator for UiPath. It had a very strong online learning offering and it offered no-charge recertification on top. This is now very similar to what other tools are doing and I see that as a negative.
For how long have I used the solution?
My first introduction to UiPath was in early 2018 or late 2017.
What do I think about the stability of the solution?
The robots could be a lot more stable, which is another area for improvement. The stability issue with UiPath is a prominent one, especially in comparison to other tools like Blue Prism. I feel that there are a lot of errors that are caused by the UiPath framework, as opposed to the robot design. Sometimes it's just very unreliable and crashes unexpectedly, which creates serious issues in terms of reliability. In early deployment, it always happens that it's very late nights, and there's a lot of babysitting processes. The robots need it because you never know what's going to crash.
In comparison with other RPA tools, it is average when it comes to reliability. I would rate other tools a little bit easier to manage expectations as to what you can reasonably expect to go wrong, and what you can reasonably expect to break. With UiPath, our developers, even our experienced ones, oftentimes get errors that we've never seen in our lifetime. This is partly due to the flexibility of UiPath, with it being so easy to adapt to all types of applications and all types of environments and it being so malleable. It is one of the most versatile tools; it's industry agnostic, platform-agnostic, and tool-agnostic, but that flexibility creates a lot more room for error in the code. It means that a lot more things can break or interfere with each other, compared to other platforms that are perhaps more niche and more targeted in what they're actually trying to solve.
What do I think about the scalability of the solution?
UiPath is definitely scalable. It is modular, where you build a workflow and that can be reused across multiple robots or multiple processes. Those processes can then be run by one, two, three, five, and 100 bots, provided that they can work concurrently in the same environment, performing the same process. It's wonderful and the scalability is uncapped. If you have licenses, then you can use them, which is great.
The only limits are how many licenses are you willing to buy, and the inherent limits of your own infrastructure and your own process. It comes down to how many robots can realistically work concurrently in the same infrastructure and in the same network without breaking it.
We have approximately 20 developers who use UiPath. We have business users, but it is difficult for me to say how many there are.
How are customer service and technical support?
I have been in contact with technical support, and I have experienced submitting a support ticket to them. I even got on a call with them and they were very helpful. We had been having issues with automating a platform and we wanted to get their specific insight as to what was going wrong. It had to do with UiPath not being able to extract selectors from that specific interface.
I was really surprised because they spent the time to not only address my ticket and answer my questions, but also to allocate time to schedule a meeting, and really look into the platform via screen share. I was sharing the screen with them and showing them what was happening, and they really looked into it and gave it a lot of attention.
I understand they get a lot of tickets, and I really felt they provided a good answer. They responded really fast, I would say within 24 hours, and we began exchanging details through a back and forth conversation.
They provided me with the outcome that I was happy with. It was a very good experience.
Which solution did I use previously and why did I switch?
In addition to UiPath, we used Blue Prism and Automation Anywhere. UiPath is king here, and I rarely hear anything about the other two. I would estimate that we use UiPath 95% of the time, perhaps even 99%.
The alternative to UiPath that I am more familiar with is Blue Prism. From my perspective, UiPath is geared towards developers. The audience towards which it's skewed is the developer or the technical person. Blue Prism is geared more towards business people. It's geared towards converting business people, including SMEs and subject matter experts that know the process well, into developers. You will find that the language that each program uses is one that's geared towards the target market. Consequently, UiPath uses a lot of developer language and developer concepts.
For example, UiPath works similarly to the Visual Studio Environment. Blue Prism, on the other hand, uses a lot of flowcharting visuals, as well as the language that it uses for the same concept. It's going to use a definition that's more from a business process flowcharting realm. Recently, both platforms are converging onto each other and I feel like they're becoming more and more similar, but they still have a few things that are different.
One thing that stands out for me is that Blue Prism has wonderful debugging. It's a lot better than UiPath, and it's an all-in-one tool where the monitoring and the building of the robots happen in one application. The deployment is also really easy.
Blue Prism also offers online learning, which is great. They didn't use to have that offering, and I think that they got a lot of inspiration from UiPath. Their online courses have been great because previously when I was learning RPA, I had to use YouTube. Now, they have a whole Blue Prism university, which is amazing.
Blue Prism has inbuilt version control and a lot of other great features. They have a heavy emphasis on security and encryption, which UiPath perhaps needs to improve on. Companies such as banks, insurance agencies, and finance agencies are a lot more interested in Blue Prism because of its very strong security protocols. The encryption offering is a key requirement for companies that work with a lot of sensitive personal data.
How was the initial setup?
I have never been involved in the initial setup, although my understanding is that it's quite a journey.
What was our ROI?
The areas of the organization with the most ROI from UiPath are operations, finance, HR, and sales. Those are the key departments, although it's across every organization because those departments have a lot of manual work-intensive processes that are the first contenders for automation.
What's my experience with pricing, setup cost, and licensing?
We have a yearly licensing model that gives us access to the development and production environments. The cost of licensing is expensive.
What other advice do I have?
Part of automation is the analysis and optimization of processes because the analysis phase is a by-product of wanting to automate a task. If you want to automate something, you have to break it down into parts and really look at it and think, "How can I reduce this into a series of business rules, a series of decisions, or series of steps?" It's an exercise of process optimization in and of itself because a good practice in automation is to not just take what it is and automate it, but to think, "Does what is currently in place actually work? How can it be improved? How can it be streamlined? How can it be done in fewer steps?" It's a good chance to practice some process review, improvement, and transformation.
The idea is to make it optimal because the current process usually has unquestioned practices that maybe haven't been reviewed for a very long time. A lot of businesses say, "We've always done it this way," and they've never thought to revisit the approach. RPA gives you an opportunity to think about whether what you've always been doing will work when it's being done by a robot. Most often, the processes get streamlined through the requirements gathering phase, understanding the as-is, and then a key part of that is doing the process design, which is the to-be vision.
During that time, processes go through a few design iterations where they are optimized and streamlined because we want the robots to be as efficient as possible. This means performing as few steps as possible without sacrificing value and efficiency. It is important because any inefficiencies in a robot are going to scale with the number of times you're going to run that process. If you run a process a thousand times, and let's say there exists inefficiency that results in an extra minute being used, that could be shed if you were to review and optimize that process.
Ultimately, optimization is an important exercise because the benefits include a further capacity to run more automated processes, and less time is taken up by inefficient steps.
Something to be aware of is that updates to the platform have to be managed because any update could impact the performance of a bot that was built with an earlier version. To avoid having a newer version impact the performance of something that was built previously, all of the updates need to go through a due diligence process.
The biggest lesson that I have learned from UiPath is surprising; not everything needs to be automated. It feels weird to say it because thinking, "Well, I have this platform, I have these bots, why not just automate absolutely everything?", but the truth is that there are things that can be streamlined outside of RPAs. Also, some processes can be automated through other means. Consider the very simple example of sending automated emails, or sorting out your inbox by putting the right email in the right folder, those types of things can be done with email rules rather than RPA.
If a platform already has some sort of inbuilt automation, whether that's a social media platform, email platform, networking platform, or any other type of platform, it's always better to explore that first before looking to solve that problem with RPA. There are times when an Excel Macro or an email rule will be a lot faster and a lot more cost-efficient. RPA should be directed towards big-ticket items, big problems, and large volumes to where no existing solution would provide the same level of value.
My advice for anybody who is considering UiPath is to try it out for themselves. The most beautiful thing is when companies take the leap to have a very small citizen developer team, where they upskill a few technically-minded people with free courses and try to build a small proof of concept to see if RPA is the right path for them. I really encourage that sort of curiosity and experimentation because all of the resources are out there and anybody can learn, as long as they're driven and passionate and curious about automation. I would really encourage people just to give it a try and see what comes out of it.
In our organization, UiPath is the number one RPA tool. Being close to the industry as a developer, and I do feel like it's the preferred tool, at least where I'm based in Australia. It is definitely the preferred RPA solution on the market. Our usage is definitely going to increase in the future. I feel like the future is bright for UiPath. That said, it isn't perfect.
I would rate this solution a nine out of ten.
Which deployment model are you using for this solution?
Which version of this solution are you currently using?