Full cycle of selection for an internship at Yandex (Analytics, ML, Backend)

Here.

In the end, there were three invitations. I expected at least one question on deep learning at the interviews, but there wasn't one.

Backend

I applied for the C++ backend, first they sent me a link to the contest. The first task was solved by GPT. The second task was on a hash table + strings. The third task was sorting + prefix sum. The fourth task was one of the most difficult, but was solved through the prefix sum. The fifth task was on the BOR algorithm.

That same week I received a letter inviting me to an interview, and we corresponded with HR via TG. HR turned out to be nice, answered all my questions in detail and didn't ignore me.

Algorithmic section 1. Problem 1: you are given an array of 0 and 1. You need to put all the zeros at the beginning of the array in one pass. The problem is a repost, in group they laid out the task.
Problem 2: given an array of 0 and 1. Find the length of the maximum subsegment consisting of 1 after removing exactly one zero. Solved it quickly, and still had 20 minutes to spare. The interviewer decided not to just sit there and gave problem 3.
Problem 3: given a string, find the longest subsegment consisting of no more than k different letters. Also some kind of hackneyed problem on two pointers…
There are 5 minutes left and the interviewer says: “Go, one more problem, enough for you to tell the idea.”
Problem 4: given an array of numbers. Find the longest subsegment such that the sum of the numbers in this subsegment equals 0. Well, I offer him solutions with a prefix-sum and a hash table in O(1).

Algorithmic Section 2
Problem 1: Given an array of 0 and 1. Find a position of zero such that the distance to the nearest unit is maximum possible. I tell the solutions behind the line and write the code.
Problem 2: Given a binary search tree, check that this tree is balanced.
I explain the linear solution, write the code, fix a couple of bugs. There are still 15 minutes left, I asked him questions about the company for 5 minutes, and then we parted ways.

Algorithmic Section 3
Task 1: The condition was long, the only thing I remember is that there were segments (like time intervals) that were given in sorted order, and it was necessary to write a binsearch)
Problem 2: A natural number n is given. The number n must be represented as a sum of squares. Write a program that finds the number of representations of the number n.
To be honest, I was surprised that they offered such a problem, since it can be solved with a simple repost-it note in n*sqrt(n), fortunately, it turns out that this is the same solution that was expected from me.

HR comes with feedback. Says that now they will select teams for me. Throws 4 links to teams, says, choose what is interesting, I said that I want to try everything. They started putting interviews in teams one by one.

Social Security 1
The leader of one team came and said that it was important for him to know OOP in C++ well… He started asking all about OOP, showed code examples and asked how many times some object would be copied, etc.
In general, the social security office consisted only of OOP.

Social Security 2
Two guys came to piss me off, so talkative. They started to find out what I did, whether I had experience with DB, Linux. Then they gave me an algorithmic task in which I had to use map and pointers.

Social Security 3
The interviewer says that his team needs a person who knows multithreading. My eyes went dark from this word…. Then he said that he understands such topics, most likely, the interns do not know….
And he starts asking questions on the surface of multithreading, and of course I don’t answer him anything.
Afterwards he gives me a task and says: “Let’s try to solve it with multithreading, do you have any ideas?” I say: “No,” and the interview ends there.

Social Security 4
Immediately gives me a task:
Requests of the following type are received:

  • x (Remove the number x from the set) get min (return the minimum element from the set) get max (return the maximum from the set) This solution must be written behind the line. In this case, there may be repetitions in the set.

As a result, two invitations and two refusals.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *