Organization Project

Cloud RPA Services

Role: Full-Stack Developer
Duration: 1 Year (Initial Development)
All Projects
Cloud RPA Services

Overview

This project involved developing a set of microservices to support the Cloud RPA platform, enabling users to run automation workflows on distributed Windows services. The microservices architecture allows for scalability and flexibility in managing automation tasks.

Challenge

To support the Cloud RPA platform, we needed a robust microservices architecture that could handle distributed automation tasks efficiently. The goal was to create services that could run on multiple Windows machines, allowing for parallel execution of automation workflows.

The Process

I started by defining the core microservices required for the platform, such as task scheduling, execution, and monitoring. I designed the architecture to ensure loose coupling between services, allowing for independent scaling and deployment. The microservices were developed using .NET Core with C#, leveraging Windows Services for task execution. I implemented SignalR and Socket.IO for communication between services and integrated with the Cloud RPA platform for seamless workflow management.

Solution

The resulting microservices architecture provides a scalable and flexible solution for running automation workflows on distributed Windows services. Users can schedule tasks, monitor execution status, and handle errors effectively. The architecture allows for easy addition of new services as needed, ensuring the platform can grow with user requirements.

Outcome

The microservices were successfully deployed and integrated into the Cloud RPA platform, enabling users to run automation workflows on distributed Windows services. The architecture has proven to be robust and scalable, allowing for efficient management of automation tasks across multiple machines.

Technologies

C# Dot Net Core Windows Services SignalR Socket.IO Microservices Architecture Named Pipes Electron

Key Learnings

Building the microservices architecture provided valuable insights into distributed systems, service communication, and scalability. I learned how to design services for loose coupling and independent deployment, as well as how to effectively manage state in a distributed environment. Additionally, integrating SignalR and Socket.IO enhanced my understanding of real-time communication in microservices.