There were two stages of the interview process. The first stage, a live coding session, was scheduled two weeks in advance. I asked to reschedule it earlier, and they moved it up by a couple of days.
The interview lasted over an hour and a half and was conducted in Russian. The team members were pleasant to talk to. The next day, HR got back with feedback and informed me that I was invited to the second, team fit interview. Again, it was scheduled for more than a week later. I asked for an earlier date, and they moved it up by one day.
During the final stage, we talked for over an hour and a half again, and they asked very detailed questions about my work experience. I shared literally everything and more. The team seemed pleasant once again.
However, I heard one thing that stood out to me. They believe that a Senior Developer in their company is at a higher level than in other companies. It felt like they were looking for staff-level candidates for a senior role but offering a senior-level salary — and hiring without growth opportunities.
In the end, I received a rejection the day after the interview because they chose another candidate.
Result: the process lasted over three weeks, ending in rejection. A waste of time.
Update:
I received feedback on the rejection:
They said they chose a candidate who was open to relocation, even though I’m in Serbia, which is listed on their website as one of the countries where they are hiring for this position.
During the initial screening with HR, I clearly stated that I wasn’t considering relocation, and I reiterated this during the coding interview.