At Rasa, our team is building the standard infrastructure for conversational AI. Behind the scenes, the people of Rasa come together from diverse backgrounds to solve today’s most interesting challenges in NLP and dialogue management. We’re pulling back the curtain to highlight a few of the humans behind the bots.
Today we’re talking with Thomas, Machine Learning Researcher at Rasa. We’ll learn Thomas’s story and explore the day-to-day projects and technologies they’re passionate about.
1. Hi, Thomas. Tell us about yourself! What was your path to joining Rasa?
It’s been quite a ride, really. I am originally from a small town in Austria, but really grew up in Vienna (which I claim as my home town). I started my career as a software engineer what now feels like a very long time ago. After a few years on the job, quarter-life crisis started hitting me and I wasn't excited by doing that same kind of job for the next I-don't-know-how-many-years.
Thus, in 2011 I moved to Brighton, UK, for a degree in Computing & AI. After a summer internship in the NLP lab at the University of Sussex during my undergrad, I figured that NLP & Machine Learning are really what I wanted to do with my career. And so, one thing led to another and I stayed at Sussex for a PhD in NLP. After my PhD I wasn't quite sure yet whether I wanted to stay in academia or not, and so a post-doc seemed like a decent choice for avoiding a final decision on the matter.
So my wife and I packed our bags and our daughter and went on to Edinburgh, where we stayed for a bit longer than 2 years and grew our little family from 3 to 4. Towards the end of my post-doc I thought that leaving academia would be the right thing for me, so I started applying for jobs. Rasa was the only place that felt right in all aspects and where I thought that no matter to whom I talk to, I can perfectly imagine working with them. In true startup spirit I signed my contract in a pub in Edinburgh on Halloween :).
2. Take us through a typical day as a Machine Learning Researcher. What types of projects do you work on?
Days can vary a lot (especially now through repeated lockdowns...), but my weekly schedules are relatively constant. I try to spend at least one full day per week reading and/or toying and tinkering with some ideas, models or datasets. I often get the best ideas for current projects by doing something completely different.
The main part of the week is working on current research projects. Depending on the current state that can mean running experiments and analysing results or implementing a new feature into Rasa.
The last part of the week is working through Github issues and/or community questions.
Sometimes I do all of these things on a single day (model is training, let’s read a paper, model is still training, let’s look at this issue), sometimes it’s more structured than that.
3. Which areas of your work are you most passionate about?
I really enjoy that I can work on the full spectrum of research, i.e. tinkering around and building dirty prototypes that serve as a proof of concept, as well as taking the prototype and hammering it into a feature that benefits our users next time they do pip install --upgrade rasa.
In academia, it's mostly only the first part, i.e. assessing whether something works in principle, whereas in software engineering or data science it’s often mostly the second part, i.e. taking something that is supposed to work in principle and making sure it works in practice (meaning in a scalable manner in production).
In the Research team at Rasa, we do both parts, which means that many things that start as random scribbles on a piece of paper end up as a feature a couple of months later down the line (as well as a paper potentially). The (more or less) immediate real world impact of research is what I really value at Rasa.
4. What’s an important problem you’re solving at Rasa?
I think one of the most important problems we are working on is making sure that our assistants work across languages. We are in the fantastic position of having a huge community spread all over the globe and therefore its really important that whatever thing we do works well beyond just English (which is still the language with by far and large the most resources available), such that our community can build amazing things.
Another thing that we are very much invested in is investigating various forms of bias in our models and how that could negatively affect any group of our users, or in turn, the users of the assistants our community builds.
5. How would you describe Rasa in three words?
Ambitious, Inclusive, Supportive, Innovative
PS: timezones, printing and off-by-one errors remain the 2 hardest unsolved problems in computing.
6. How do you collaborate with other teams at Rasa?
If it ain't on Slack, it didn't happen.
But we also make a lot of use of Zoom, GitHub, Google Docs, Notion for collaborations of any sort. I hear rumors that email is being used by some people as well...
In the Research team, we typically collaborate with all other product squads in a fairly loose manner. We obviously have a lot of contact with the engineering team when it comes to implementing and shipping a new research feature, but we also collaborate with, for example, customer success engineering in order to figure out whether there are any recurring problems in practice that require our input.
We also have regular and frequent collaborations with our Developer Relations team, which are super fun and insightful.
7. What does a culture of diversity mean for you at Rasa?
The views on a diverse team and culture at the leadership level was actually one of the main reasons why I joined Rasa. For me specifically this means becoming aware of my own privilege and leveraging it to support those that have not been as privileged as me.
Also to put it very bluntly, I believe that everybody is aware that we don’t want to be a place where white dudes come up with white dude solutions for white dude problems.
The need for a diverse team is baked into our mission and I think it is clear to everybody that we can only achieve our goals with a diverse team.
I also very much appreciate that we have built a DEI working group (which I am part of) and that DEI is a high priority at the leadership level. We are still a small and young company and by focusing on DEI now we can actually achieve creating a place where nobody feels left out.
8. How has working at Rasa helped your professional development?
I spent a lot of time in academia before joining Rasa, where I was mostly concerned with work that didn’t have a clear real-world impact anytime soon. I love being in a place now where any work I do is helping our community across the globe to build better assistants.
It’s also the awareness and responsibility that comes with shipping machine learning models in production that has helped me shape my views on the impact of automated decision making and the need for proper audit of such models.
9. What’s the most interesting thing you’ve learned lately?
The 1990s were the golden era of computer games. I have un-mothballed my stoneage Windows XP laptop in order to play these games again. They are so good!
10. What’s the best career advice you’ve received?
Sorry, I can't reiterate some grand or insightful piece of advice, because either I have never received one, or I have chosen to ignore it. I am generally pretty bad at following advice. The most important skill I have learnt in my career is figuring out when following a piece of advice is maybe worthwhile, and when it’s best to ignore it and follow my own intuitions (my default).
Want to team up with Rasa? We’re hiring! Find open positions in our Research team and other roles on our Jobs Board.