QA Is Like Playing Chess Against Bugs
Anna Kutarba is a QA Engineer for JetBrains RubyMine with a PhD in Physical and Mathematical Sciences. Learn about Anna’s QA karma, her relationship with bugs, and the luck and determination that help her stay on track in this interview with Ekaterina Ivanova, a JetBrains Technical Writer and Copywriter.
What brought you to St. Petersburg?
I was born and raised in Abkhazia and went to university in Adygea. Then I moved to St. Petersburg to study for a postgraduate degree. The whole move to St. Petersburg was all about luck and determination. My parents were very reluctant to let me go to the "big city", but when they saw how committed I was, they knew they had no choice.
When I arrived at the Math and Mechanics department of St. Petersburg State University, I suddenly realized that half the curriculum was different from what I’d studied at university back home. I borrowed lecture notes from other students in my dorm, then spent the next month processing this vast amount of new information and passed my core subject exam! However, I still needed more credits, so I had to resit my English exam. But I’d been studying German, not English. Nonetheless, I managed to pass it and I got enough core credits to complete my course! And I was one of the very few students in my year to successfully defend their dissertation, I’m still proud of that. All thanks to my determination, some careful planning, and a bit of good luck. Although by the time I got to defending my dissertation, I’d genuinely turned a funny shade of green.
Why didn’t you continue pursuing a career in science?
It wasn’t really a choice, I had to work to pay my way while I was studying in St. Petersburg. My first job was as a radio DJ. I didn’t have enough confidence in my programming skills to go straight into software development. Then someone in my dorm suggested I apply for a QA engineer job that was being advertised at a major American software company in the city, and that I should also apply to a local company that was hiring novices. He added that the American company wouldn’t offer me a job, but the local company definitely would. That same day I wrote to both companies, and the American company invited me for an interview. I guess that’s when my QA karma kicked in – right when I was taking the interview. By the time I’d finished my studies, I knew exactly what I wanted to be doing, and it wasn’t a career in science – I wanted to continue what I was doing.
Where else did you work before JetBrains?
That American company closed down a year later, and I went to work in the new office that Yandex had just opened in St. Petersburg. I started out doing functional testing for search. It hadn’t been done before – there had been only quality and performance testing. We did manual testing together with automated tests in Perl, then we moved to fully automated testing using Selenium and Java. It was really interesting building everything from scratch, hiring new people, automating tests, responding to alerts in the middle of the night and worrying about missed criticals in search results.
I gained a tremendous amount of experience in dealing with the most diverse teams, developers, and project managers. It was also Yandex’s first remote office, and a lot of effort went into smoothing out communication so that we were seen by head office as a serious branch of the company and not just as an experimental testing outpost. And we managed to do it. There came a time when I just wrote "Hi!" to a developer and they replied with "What’s gone wrong?" I think that’s a measure of success for a QA engineer.
What made you move from web applications to desktop software?
It wasn’t an easy decision. In my role as a team lead in Yandex, I learned to handle different tasks, but I didn’t quite manage to develop managerial and technical skills simultaneously. I’m sure a lot of team leads know that feeling when you want to sit down after a day full of meetings and actually get some work done. In the end, the solution was obvious – I just moved to a different company with different tasks.
How do you like working at JetBrains?
My experience as a QA engineer at JetBrains has been pretty unique. The software is among the most complex there is. In order to test it properly, you have to think and work with the IDE like a programmer would. You need to understand the technology at least well enough to write a test project, and at the same time, you have to write your test project in such a way as to identify bugs. QA is a bit like a game of chess – you have to plan your moves just right to achieve a checkmate, or in other words, catch a bug. Technology is constantly developing and so you have to as well. There really is a new challenge every day. Another great part about being a part of JetBrains is that the people working here are seriously smart. I have a fantastic team where everyone fits their role.
What growth opportunities are there for a QA engineer?
There are lots of opportunities. You can become a QA lead, for example. You can specialize in a specific area of testing, for example, performance testing or test automation, or you can move into a related field like software development or product management. I enjoyed leading my QA team in Yandex; it was a great experience and a wonderful team. Things at JetBrains are organized a little differently – I prioritize my tasks myself, and I really like that. It lets me focus on developing serious technical skills, which is what I came here for.
Have you ever tried being a developer?
You won’t believe it, but I’ve never wanted to! I’m more interested in programming in the context of test automation. I want to stay in QA and do automation and optimization of both tests and processes. I like to have a bigger-picture view of a product and understand how all its individual parts work together.
What is it about QA that you love so much?
It was love at first bug. I like to understand the cause of events, understand how everything works, and solve complex problems. I can say that I managed to find something that I am good at and my profession benefits people. This is an awesome combination for me.
But it’s a lot of hard work. Doesn’t it become routine and monotonous?
I think you get that in any profession. There are times when it is stressful when you have a lot on your plate at once or you get a difficult bug that’s impossible to reproduce, or you get a developer who really wants their new feature to go into a release even after a feature freeze, and their new feature has not been properly tested. There are also some processes that need tweaking – those make your job harder, but they also make for the most interesting tasks. Routine work isn’t a problem; you just have to automate it as much as you can.
Do you find yourself doing QA outside of work? Do you see bugs everywhere?
I try not to be a QA engineer outside of work, especially when I’m driving or using an ATM. I often come across bugs outside of work, and I generally have to fix them myself or quickly find a workaround. I’m sure many people have encountered the problem with windows that have been designed in such a way that you have to be Spiderman or a rope climbing expert to clean them on the outside. Now imagine that those windows are on the 25th floor and not all of them open. I managed to find a workaround, but if there had been a QA engineer involved in the design process, there wouldn’t have been a problem in the first place.
How do you spend your time outside of work?
I love music and live concerts. Concerts are something special for me – they give me a tremendous energy rush. It’s an incredible feeling when a vocalist goes quiet and the audience sings acapella, or the band does some improvisation that gives you goosebumps. It’s unforgettable. I’ve been to more than 40 concerts, and that’s only counting the ones that were held at big arenas. I love classical music too, especially Italian operas. They can bring me to tears. That’s how my friends know when I’ve been to a great performance. At home I play the piano and sing, it’s a childhood dream of mine to be a singer. I have also discovered I quite enjoy charity runs, like the Wings for Life World Run in Munich. It’s a very exciting experience knowing my running is going to help people.
I saw you performing in JetVocals at our Christmas party back in 2016! Does that mean your dream came true?
Yes and no. I used to dream of being able to sing like Whitney Houston, but instead, I sing like Anna Kutarba. I actually spent a few years singing and I even recorded 6 songs for a pop divas tribute album, but it’s still a work in progress because there’s always room for improvement. I’ll let you know when the album is ready. Singing in the JetBrains choir was really cool though. It all turned out really well thanks to our choirmaster Olga Lukianova, who is a developer for ReSharper.
Why did you move from St. Petersburg to Munich? Was it hard to adapt? Is there anything you miss about St. Petersburg?
This will sound odd, but I actually moved because I liked everything in St. Petersburg. I wanted to get out of my comfort zone, and the result was worth it. The hardest part was making the decision, after that it was just a matter of sticking with it. That was three years ago and now I speak fairly passable German, which is really cool! I finally learned how to ski in the mountains here. Bavaria reminds me in some ways of the Caucasus where I grew up – lots of sun and mountains and a thriving food culture. I like how Germans take care of their environment. Nobody’s in a hurry here, life slows down, and you begin to really appreciate it for what it is. And I like being called "Frau" – there’s something nice about it. I do miss my friends, and the Neva river embankments, and the theaters.
What do you like about JetBrains?
I like that the company appreciates me and respects me and looks after me. It’s no accident that people call JetBrains a family company. I’ve been coming here to work for a little over 8 years now, and it’s like a second home to me.
OK, let’s finish up with a quickfire round:
Who’s more important in a project, developers or QA?
Developers, of course. The developers are the creative force, and QA engineers are there to help them.
What do you do with developers who don’t fix their bugs?
Blackmail them! Just kidding. You have to communicate with them.
If you could have any superpower, what would it be?
The ability to eat anything I want and not put on weight.