What binds the UiPath Studio, UiPath Robots, and UI (User Interface) Automation teams together? In this blog post, we'll introduce you to three of our Engineering colleagues. We'll uncover some of the secrets behind desktop automation, their way of working, and how everything connects in the backstage.
Studio is one of the core products of the UiPath Platform and of our UiPath Studio family, along with Studio Web and StudioX. It offers a plethora of tools for RPA developers to design advanced automation and for specialized developers to build test automation, run by attended or unattended robots.
When Bogdan Toma began working at UiPath in 2017, he started as a Software Developer in the Studio team. Since then, he's been promoted to Director, now managing more than twenty developers. Most of his crew is located in Bucharest, but they also have colleagues working fully remotely from other geographical locations such as Poland and Switzerland, or across Romania, from Oradea or Timisoara.
While activities form into comprehensive workflows in Studio, these are afterwards executed by the UiPath Robots. The Robot is the execution engine of UiPath automations. After designing your automation in Studio, you use the Robot to effectuate the actual automation on the specified environment, either your own or a cloud one. It prepares dependencies and inputs, interprets the automation instruction for the targeted environment, and marshals back the result.
Initially joining UiPath as an intern in the summer of 2016, Radu Oancea is now the Principal Engineering Manager for the UiPath Robots team. He's leading a crew of almost ten engineers, working mostly remotely from Bucharest and Copenhagen.
UI Automation is a core product that sits at the foundation of our UiPath Platform. The activities package the UI Automation team delivers is used by thousands of robot machines. The team is closely working with both Studio team for the design time integrations and with Robot team for runtime integrations. "Our customers use our UiPath Platform as a whole," says Ion Miron, Principal Engineering Manager of the UI Automation group. "That's why we work closely together to ensure that users have a smooth experience", he concludes. Ion has been working at UiPath for a little over four and a half years, and he's now managing a mixed team comprised of developers and QA test engineers. Similar to the Studio and Robots teams, they also work in a hybrid model, from Bucharest, Craiova, and Iasi. Internally, there are multiple other teams they collaborate with—the Product, UX, and RPA Developers teams, for example.
"At the beginning, the biggest hurdle with remote working was to tackle the excessive meetings", said Bogdan. Radu subscribed to this opinion, recalling that "the team had to adapt and move from the energy-consuming meetings to a one, daily team meeting". The new approach provided them with the opportunity to organize themselves more efficiently for the two-week sprints model they follow.
For Ion's team, another important learning aspect that the pandemic brought was how to work with remote-based colleagues. "Before the pandemic, I wasn't open to having remotely based colleagues, specifically because of the value of our daily, in-person interaction". Throughout the last years, his team has found the best way to maximize employee autonomy by following flexible work policies.
We follow flexible work schedules; everyone can work on their own timeline as long as they deliver. We do have certain team-level agreements, such as meeting daily for a one-hour catch-up or, if possible, coming to the office sometimes, on Tuesdays to Thursdays, for various team activities."
"One of the challenges of working on the Robot product, being a core component, is adding features without disruption. And while having in mind a general approach that could cover multiple support requests. We use this approach to not create the burden of maintaining specific feature requests", added Radu. The Robot team undergoes three to four creation and review cycles before implementing a feature, their goal being the formation of a final, viable feature.
For the Studio team, Bogdan confessed they have similar constraints as in the Robot group regarding the need for generalization. As Studio offers a plethora of tools for designing complex attended, unattended, and testing automations, the team's current biggest challenge is to minimize the design time for the users, all the while providing a rich and smooth user experience.
In the UI Automation team, Ion mentioned that building an outside-the-box feature, that'd provide swiftness and reliability, without much user input is their next dare. "Understanding applications is difficult, and that's the reason why we have our own machine learning models that we deliver via computer vision-based activities. We aim to reach the moment in which the user won't have to manually follow a given set of steps to build an automation, but to just input a few details and leave the rest to our product."
"The team dynamic", mentioned Bogdan. "We have senior people who are brilliant in what they do, and you can always find a counterpoint to your opinion. There's a lot of variety about how to implement different features, and that's very healthy as we debate in a constructive manner." Bogdan also added that another crucial motivating aspect for him "will be the endless stream of challenges. Everyday there is a new challenge to think about and solve, and that's something that continuously adds to my team's and my personal learning."
Radu's main motivating factor is having huge trust in the product his team and he are developing, and in its ability to empower users to build their own automations.
Ion was surprised to discover how open and creative the culture is inside UiPath. People are encouraged to think outside the box, speak their minds, and come up with new ideas.
The RPA world is a brand new one. It provides you with the chance to be innovative. If you are the kind of person that likes change and making an impact, our team is the place where you can get your dream come to life. UiPath is the place in which you can see your idea patented and implemented.”
The team looks forward to meeting engineers who can pull in the same direction—working in immersed teams and rolling up to a global vision. They value accountability and people who thrive with empowerment and autonomy.
Radu said, "being open to constructive debating" is key to success in the Robot team. You need to be comfortable challenging others' ideas or having colleagues challenge yours.
"For the UI Automation team, C# and .NET are at the basis. We are looking for developers who care about performance and memory consumption. And ultimately, those who are curious, adaptable, and want to make a difference through their work", mentioned Ion.
"The culture within the team is dependent on each one of us, so it evolves on its own. But everyone can steer it in the good direction", concluded Bogdan.
If you are curious about what it is like to be part of our product and engineering teams, keep an eye on our blog for upcoming stories.