The interview process consisted of three stages: an introductory interview, a technical interview, and a final interview with the CEO and CTO of the branch office.
The first interview took place in person. I met with a member of the HR team and one of the engineers. We started with a casual conversation about my background (who I am, what I’m looking for, my studies, and how I came across the job opportunity). After that, we moved on to discussing some of my side projects. I briefly presented project I did for my thesis, which then led to a few technical questions related to the project.
The second stage was a remote technical interview. One of the engineers asked me to solve a few basic programming tasks (for example, reversing a string or printing a triangle using asterisks). I completed the tasks in my own IDE, tested them, and then answered some general technical questions.
The final interview was conducted live with the CEO and CTO of the local branch. We started with a short introduction, during which they presented the company, its core values, and asked me a few personal and technical questions. The interview ended with a short tour of their office space.
Overall, I found the interview process to be fair and well-balanced. The questions were not too difficult, but also not too easy. I especially appreciated that they placed a strong emphasis on side projects, which really gives candidates a chance to showcase their strengths. I found that to be very positive.