Python RPA Done Right! Stop using Python as a Step in Low-Code Workflows

I begin this post with a meme that captures what many companies face while adopting Python in their Robotic Process Automation stack.Most companies I talk to want to use more Python in their RPA initiative. They are facing scalability or performance issues for not using Python in the best way.

Some develop bots with “Python steps”; therefore, low-code steps invoke Python code. Others are developing bots entirely in Python but without an RPA orchestration platform to have an integrated operation. The first does not get the maximum potential of Python due to being restricted to low-code interpreters and workflow constraints. The latter delivers RPA bots that are not properly integrated with the rest of the RPA initiative.

1. Do not use Python as a low-code step

The beauty of Python is its performance, the fantastic libraries for automation development, and the fact that it is free of commercial license. However, when you use Python as a step in a low-code workflow, you lose most of those benefits due to the low-code platform constraints. Your RPA bot will compete for a low-code agent/runner execution slot. Other steps in the workflow might affect the end-to-end execution performance. Most importantly, your Python bot does not execute without a low-code license.

Using an RPA Orchestrator for Python, your bots are executed directly by the Python interpreter. Your team will control hardware resources, the use of threads, and many other optimization strategies.

2. Do not use Python without an RPA Orchestration platform

Scheduling and monitoring the execution of Python bots is not enough. Doing just that, your RPA initiative is behind the walls of IT. If you are an RPA manager or a business user, you may not have the same visibility and control as bots deployed in a low-code orchestrator. If you are an IT guy, you lose the opportunity to involve the entire company in your RPA initiative and get more recognition for your team effort.

Using an RPA Orchestrator for Python bots is the best way to scale your RPA initiative with the entire company’s support. If you provide insights and reports about ROI and the impact of the RPA implementation, it’s more probable to get more budget to have more resources and people involved in the initiative.

If you are working for a big corporation that requires following security and governance policies, an RPA Orchestrator is mandatory. You must provide access control, user groups and privileges, and auditorship. You must also connect your orchestrator to the company identity management system. Without this integration layer, you can not involve multiple teams and departments of your organization in the RPA operation.

3. Do not use DevOps or Data Orchestration for RPA

Jenkins, Airflow, Databricks, Azure DevOps were not designed for RPA implementation. Scheduling and superficial monitoring are not enough. An RPA Orchestrator provides features to address many use cases in RPA implementation like involving business users in the process of creating and monitoring tasks, tracking errors due to third-party systems changes, managing credentials, managing artifacts, supporting batch processing natively, providing the right metrics and reports for RPA initiatives and so on.

As your RPA initiative scales, more RPA orchestration features are demanded. Without using an RPA Orchestrator to address all the issues previously mentioned, your team might end up combining multiple technologies and services to have advanced logging, troubleshooting, notifications, insights, and so on. In the end, your team will spend a lot of time managing all these technologies working together instead of what really matters: automating new business processes!

4. You can use a Python RPA Orchestrator alongside a low-code Orchestrator

Many RPA initiatives are combining multiple platforms. You can use a Python RPA Orchestrator for your Python bots and UiPath, Automation Anywhere, Blueprism orchestrators for their bots. All platforms provide API for requesting orchestration information so that you can create a unique view of your RPA indicators and metrics for observability and management purposes. This strategy lets your RPA team choose the right platform for each type of business process.

For example, a Citizen developer might deliver a solution using a low-code platform for business processes performed by a single person without much complexity. On the other hand, complex business processes involving multiple persons must require an engineering approach with precise requirements involving systems, documents, and business rules. Automation development is challenging, even for skilled developers in more complex cases.

BotCity RPA Orchestrator

If you want to try an agnostic RPA Orchestrator that can manage automations developed using a wide range of technologies, BotCity Orchestrator was designed for you.

BotCity RPA Orchestrator

Create a Free Account and start orchestrating your Python automation today!

Gabriel is co-founder and CTO at BotCity. He is one of the maintainers of BotCity Core, Marvin, and MarvinJ open-source frameworks. Follow me: https://www.linkedin.com/in/gabrielarchanjo/

Leave a Reply