Собеседование в Ozon go school
Собеседование проводилось в контексте набора в школу Go от Ozon. Не знаю насколько сильно отличается от стандартного собеседования, но писали, что по сложности аналогично. В целом впечатление осталось положительное, ребята адекватные, помогали развивать ответы если где-то возникали затыки.
Отбор проходит в несколько этапов:
1. Анализ резюме;
2. Тестовое задание. Задачка из списка;
3. Техническое собеседование.
Список вопросов:
1. Отличие протоколов TCP и UDP.
2. Как убить процесс в linux? Какие знаешь флаги, сигналы? Любой ли процесс можно убить?
3. В чем отличия процесса от треда?
4. Сравнение виртуальной машины и докера. В чем отличия, премущества?
5. Docker. В чем отличие образа от контейнера?
6. Что такое RPC?
7. Что такое REST? Вокруг чего он строится?
8. Что такое индексы в БД? Для чего они нужны? Какие индексы знаешь?
9. Что такое Clickhouse?
10. Ваше понимание многопоточности? Какие виды? В чем сложности работы с многопоточностью?
11. Какова сложность бинарного поиска в отсортированном массиве?
Задачи предлагалось выполнить на платформе code.yandex-team.ru. ЯП разрешается выбрать любой на свой вкус.
Список задач:
1. Задача про поиск замыкания/цикла в списке.
Дан указатель на первый элемент односвязного списка. Необходимо определить, имеется ли в списке цикл за кол-во операций O(n),
где n - кол-во элементов в списке и используемой дополнительной памяти О(1).
2. Создать процедуры для добавления элемента в стек (add), удаления элемента из стека (del), вывода содержимого стека на экран (wstack).
Блок комментариев