Inside The Rocketship
Humans of UiPath
Meet Re:infer, a UiPath Company
Behind every successful company there are the hardworking individuals who make it all possible. In this blog post, we'll be taking a closer look at the talented people who make up the Re:infer team and the unique culture that keeps us all motivated and driven. Join us as we meet the people behind Re:infer and get a glimpse into the inner workings of our team.
Re:infer is a natural language processing (NLP) company specializing in unstructured communications. It was founded in 2015 by Ph.D scientists from the Centre for Artificial Intelligence at University College London to solve the hard problem of getting machines to understand human communication. Re:infer connects all business and customer conversations under one platform, and uses machine learning (ML) to extract context from communication messages and turn it into actionable data. In 2022, UiPath has acquired Re:infer.
Re:infer began its journey by making its first hires in 2016, and since then has continued to grow and scale. Currently, there are around 30 members divided among engineering and business departments. While the majority of the team is based in our London office, we have colleagues who work fully remotely from locations such as Newcastle. We are also open to temporary remote work options to accommodate the needs and plans of our colleagues.
Cristi Cobzarenco, co-founder of Re:infer and current Director of Engineering at UiPath, brings a strong background in ML and artificial intelligence (AI) to his role. Along with Marius Cobzarenco, Edward Challis, and David Barber, he founded Re:infer in 2015. He's now responsible for designing engineering projects and enjoys writing code as part of his daily duties. "I also enjoy playing board games. It's a hobby that's come in handy at the office since we often have board game sessions. In my free time, I enjoy tinkering with 3D printing, electronics, and learning new tech."
Jakob Calero is Principal Software Engineer at Re:infer. He has a background in building software and has played a key role in shaping how the team operates, having a particular interest in the Agile process. With almost five years of experience at Re:infer and a history of working in startups, Jakob is well-versed in growing a small business. He holds a degree in software engineering and ML from Edinburgh University. "A fun fact about me is that I used to be a tube driver for a couple of years before I got into engineering."
Emily Pham is Customer Success Manager at Re:infer. Emily has been in this role for a little over half a year and brings with her a background in finance. Prior to joining Re:infer, she worked in consulting and at a startup in the fintech industry. Emily was drawn to our team because of the opportunity to have a tangible impact on the product. She wants to best represent the voices of customers in the product development process. "I love spending my free time traveling and am currently in the process of learning Spanish."
Anne-Sylvie Deutsch is Principal Applied Scientist at Re:infer. She joined the team four years ago for her first software engineering job. She brings with her a background in physics and a Ph.D in cosmology from Penn State in the U.S. "In my spare time, I enjoy unwinding with a run or a round of board games. I also have a habit of only drinking decaf coffee - much to the amusement of my coworkers."
Harshil Shah is an ML Research Scientist at Re:Infer. With a Ph.D in ML, he began his journey with the team as an intern, then becoming a full-time member of the team in September 2021. "Hobbies-wise, I enjoy playing sports, particularly squash and tennis."
"It has been exciting to retain the startup culture while also having access to the resources of a larger company. It's a valuable experience to learn first-hand from those who have navigated the challenges of scaling and avoid making similar mistakes ourselves", mentioned Emily.
"We continue to work with a high degree of autonomy, and the ability to collaborate with the hiring team to bring on talented new team members. This has been a positive experience for us", added Anne-Sylvie.
For Harshil, being part of a bigger ML team is an exciting opportunity. "It has been beneficial to have broader conversations about ML and share ideas with a larger team. Many team members have already tested and learned from various approaches, and we look forward to being able to draw on that collective knowledge."
For Anne-Sylvie, one of the most challenging yet interesting aspects of working on the product is the focus on active learning, which is a fundamental aspect of the product. With the goal of allowing users to create efficient models quickly, it's crucial to make the model training process as user-friendly as possible. Achieving this requires a balance of rigor and creativity, as well as collaboration to improve the user experience (UX) and ultimately the accuracy of the models. On a personal level, Anne-Sylvie enjoys the ownership of her work from start to finish, from creation, design to production.
"A significant part of our work is focused on creating solutions that can be easily understood and explained to non-technical users. While it is possible to train advanced ML models and simply provide them to users, it's different when asking users to train their own models. They must have a comprehensive understanding of how the model functions, its limitations, and why it may not perform as expected. This requires a high degree of transparency and ease of understanding for those without an ML background", added Cristi.
"The process of an email going from your mailbox to being processed and displayed on the Re:infer platform involves a complex series of steps. It includes a significant amount of data manipulation and ensuring that all data is properly structured and organized. This process can be particularly challenging, especially when thinking about future features and implementing the appropriate pipelines and data models, while also ensuring that the process is quick and efficient", explained Jakob.
For Harshil, from a research standpoint, "all of the projects I've been involved in have been open-ended, which presents both opportunities and challenges. The ability to explore various avenues is enjoyable, but it also requires a great deal of prioritization in terms of what to investigate, what trade-offs to make in terms of performance, complexity, and computational costs. While this can be difficult, it's ultimately very satisfying when the work comes to fruition."
"One of the challenges that Emily and our customer success team faces is that sometimes people may have unrealistic expectations regarding the amount of time required to train a model. Creating a well-performing model requires some dedicated effort from the business. This can pose a challenge for some individuals who could already be stretched thin with their day-to-day workload. However, once a model is fully trained and deployed, seeing the impact it has on improving our clients' processes is very rewarding. "Identifying and automating mundane tasks allows organizations to shift their focus to more strategic and impactful activities, with the benefits often experienced firsthand by the model trainers themselves", said Emily.
One notable aspect of our team is the close collaboration between the engineering and customer success (CS) teams. "The CS team works closely with customers and shares their feedback and suggestions for improvement through a Product Feedback channel we internally host. The development team is responsive to this input and takes it into consideration when prioritizing and planning new features", answered Emily.
Cristi explained the engineering team's approach, which might not be unique but certainly is effective. "We reorganize our teams every quarter. By rearranging the teams and aligning them with specific features, we form cross-functional teams. By working collaboratively across disciplines, we ensure that the end product is useful and integrates seamlessly. Additionally, it provides ample opportunities for team members to expand their skill sets and gives a broad understanding of what the product is."
The engineering team values providing opportunities for team members to learn from one another through cross-disciplinary knowledge sharing. In parallel to the cross-functional teams, they also have "internal schools", aligned with each discipline - backend engineering, frontend engineering, machine learning. These groups meet weekly to discuss topics specific to their respective disciplines.
"This initiative allows us to maintain a deep understanding of our respective fields while also working collaboratively across disciplines in our daily tasks", added Cristi. "We use a broad mix of technologies in our work so as a developer you need to keep learning and not be afraid to dip your toes into unfamiliar territory. We use a mix of Rust and Python for our backend, which we run on Kubernetes and store data in CockroachDB and Elasticsearch. We also have one service built in Haskell because it was the best fit for that particular piece of the puzzle. When it comes to machine learning, we use PyTorch for our models and Rust for extra speed when processing input and output. And for the frontend, we use Typescript and React", he concluded.
"We prioritize our work based on what is best for the product, taking into account input from our customer success team and clients. Additionally, we hold 'open days' where our developers can work on any ideas they believe are important, but may not have been prioritized yet. This led to the implementation of several key features in our product, showing the value of our team's perspective and input", answered Cristi.
In addition to open days, we have a dedicated channel where team members can propose new ideas for the product. These proposals are discussed and evaluated and if considered valuable, they can be developed further. Even if the idea isn't immediately developed, it can still be discussed and considered for future implementation", explained Jakob.
"Previously, a colleague from our Customer Success team suggested incorporating keyboard shortcuts as a means of quickly and efficiently interacting with the annotation tooltips on our platform. We initially implemented this feature; however, it was noted that the keyboard shortcuts were not easily discoverable. As a result, we made further improvements to the UX. These suggestions were submitted through our feedback channel, got prioritized, and ultimately were implemented", remembered Anne-Sylvie.
"The tradition of organizing a monthly social event for the entire company where people can pick an activity they're interested in. This may be harder to maintain as the company grows, but it's a fun way for team members to bond", mentioned Cristi.
"When I first started, the key to getting up to speed quickly was being open to asking questions. Our team utilizes open Slack channels for communication, making it easy to get answers or guidance from anyone. Additionally, taking ownership and responsibility for your work is important within our team culture", added Harshil. "We strive to create an environment where conversations on Slack are similar to those that would take place in an office setting", chimed in Jakob. "We also try to set aside time for team bonding and social activities such as office board game nights and weekly team lunches. We feel like we have a close-knit and friendly work environment here."
"One fun idea, to ensure we're all on the same page, was to conduct company-wide deep-dives into technical topics like ML, so that we are all able to communicate effectively and understand the challenges and solutions of our product development", shared Cristi.
"One of the most important elements is a willingness to learn, but also to admit when one is wrong or doesn't know everything. It's crucial in our culture, where we have a diverse set of backgrounds and perspectives. We also prioritize this in our hiring process, by specifically probing a candidate's willingness to change their perspective.
"We prioritize effective communication and the ability to work well with others, not only within the engineering team, but also across different teams and disciplines", Anne-Sylvie mentioned. Jakob agreed with her perspective, "our colleagues are encouraged to be proactive in their communication, to ask questions to ensure a clear understanding of their responsibilities, and the objectives of a given project." This approach is crucial for success within our dynamic and flexible work environment."
For Harshil, having strong communication skills is critical, particularly regarding explaining technical concepts to non-technical stakeholders. We encourage team members to be able to explain not only what they're doing, but also the reasoning behind their choices and the trade-offs. This ensures our work aligns with customers' needs and that everyone understands the impact of our decisions.
"Being technically proficient is certainly a requirement for working with us, but it is equally important for candidates to possess strong soft skills, such as the ability to communicate effectively, work well in a team, and understand our company culture. We place a high value on these skills and have made hiring decisions based on them. It's important to remember that a large part of a developer's role is communication and collaboration with others", concluded Cristi.
A key factor for Harshil to join us was the co-founders' backgrounds in ML. "Their understanding of the challenges and opportunities in creating ML products, as well as their emphasis on research."
"Our team values diversity of skills and experiences, actively pushing individuals to step outside their comfort zone and expand their abilities. This approach provides great opportunities for growth, both technically and personally", added Cristi.
"Right now we're really uniquely positioned. We haven't reached full maturity in terms of scaling, to become that household name yet. However, I think we really do have the potential to get there. We are in a pivotal moment in the product's history, and they could be a part of it", concluded Emily.
If you are curious about what it is like to be part of our teams, keep an eye on our blog for upcoming stories.