It is usually used to orchestrate or automate flows of interaction between our systems. It is basically for integration. For example, for a permit that needs to go through several systems, in Camunda, we have a business process that orchestrates all the steps where the permit needs to be processed. All the systems are notified of this permit, and if there are people who need to interact with a specific permit, they get notified. They can then take action. That's the kind of use case for which we use Camunda in our organization.
For myself, the use case is similar, but it is for invoicing. When we receive an invoice, we need to process it. It goes through the business process. There are a lot of business rules that are applied to it. For example, we will check whether the total amount is balanced with subtotals and tax, and if that's not the case, with Camunda, we can create what's called a user task. It allows us to make an agent to take care of this invoice and fix the data that is related to it. These are the use cases that we are trying to achieve with Camunda. The goal is to clean up the invoice and make sure that the information related to it is correct so that it can be transferred to our ERP to pay suppliers.
It is on-premise, and we've been able to put it in a Docker container. It is deployed in Kubernetes in our organization.
The main benefit is automation. When you don't have such a tool, you take a business process and try to interpret it in terms of code. You don't have visibility. Camunda helps an organization to see the process. If you see that something is wrong in your process, you can easily adjust it to fix the issues. There is a tool that comes with the Enterprise version of Camunda that allows you to see where most of the tasks or processes are merging in your business process. So, you can update and optimize that. If your organization uses Camunda to automate processes, you can have enormous gains from that.
It is a great tool. It was our choice to use it. It works well as a universal process orchestrator for complex business processes. It allows us to focus on the business process itself. If you want to orchestrate multiple calls to external systems and you want to be sure that all the systems are notified, it works great. My use case was more business-oriented, and it worked great for that. As a universal orchestration tool, it is good and powerful.
It allows business users to create, update, and execute complex workflows. This is important for us. We are more project-oriented, which is also the way most organizations work. We have a lot of developers during the development, but when we reach a point where the solution is built and we are in an operational state, we prefer to have a tool that can be used by the business. They should be able to configure and personalize their solution without requiring developers to do it. They should be flexible and autonomous in doing that, and we in IT don't necessarily have to have developers for that. We can focus on other projects. There are a lot of benefits to working like that.
Its ease of use is important in allowing us to automate processes. For my personal use case, it simulates a type of virtual agent. It allows us to gain greater value because people don't have to work on basic things. Camunda is doing it instead. We are adding great value by using Camunda for small things.
It has the ability to integrate with a variety of automated and digital systems, which, for us, was a prerequisite. It was important because if it could not interact with our system, it would have been hard to automate anything. It would become just like a business process to orchestrate people instead of the system. Therefore, it was important that we have connectivity with other systems. In the version we have, there are no specific connectors. There are more generic connectors, such as HTTP connectors. This might have changed in the new version, but the ability to interact with other systems was a prerequisite for us. If it didn't have this functionality, it wouldn’t have been interesting to use Camunda.
It helps bridge communication gaps between our development and business departments. Because everything is visible, the developers could see exactly what the client is trying to accomplish. To have something that we can see or even touch was interesting. It reduced the gap between two things. Only connectors were a little bit hard to understand for the business people, but developers were there to assist in configuring the connector. They had to work together, but the main focus was on the business, and it helped the developers in understanding what the business was trying to achieve.
Camunda automation has freed up our staff's time to focus on other valued tasks. When we are developing our solution, we have sprints of two weeks. We organize our work for two weeks, and regularly, we have tasks related to the business process and how we need to update it to adjust to some reality. Now, we have people from the business who are doing it, but it is still visible to the developers. It has saved the time of at least one developer for the two weeks because the business is able to work on that alone. We have five or six developers, and now, they can focus on the technical side of the solution.
Before Camunda, we had a lot of people interacting with the invoice daily. We had, for example, an agent who was doing 300 invoice checks and validations per day. With Camunda, those people are now handling only more complex checks and validations. Our processing time for an invoice is reduced from about 30 days to 10 days. There is about 70% saving of time.