Everything was smooth and done online. It consisted of four stages:
It was pretty hard, but I hustled through.
Firstly, I tried to apply to the Java team, and my recruiter assured me that there would be no Java-specific questions, only general questions, and that language wouldn't matter. It turned out that wasn't true; the interviewer asked lots of things about Java.
After this failed interview, I told my recruiter, "After I learn the language, can we try again?" I then learned Go and applied to Go vacancies. There were no Go-specific questions, only general knowledge. This was very strange. I think it's very dependent on the team and not standardized as it should be.
So, here are the questions I was asked:
Live-coding screening: Create an optimal data structure that supports the following operations: set, remove, get, getRandom.
Live-coding, task 2: We have two strings, T and S. Find such a substring in T that is equal to S, but the order of characters is not important.
Systems design: Design a traffic jams feature for Yandex.Maps.
The following metrics were computed from 2 interview experiences for the Yandex Senior Software Engineer role in Saint Petersburg, Russia.
Yandex's interview process for their Senior Software Engineer roles in Saint Petersburg, Russia is fairly selective, failing a large portion of engineers who go through it.
Candidates reported having very good feelings for Yandex's Senior Software Engineer interview process in Saint Petersburg, Russia.