Как проходит отбор на стажировку
Этапы отбора на стажировку зависят от направления. Вот что потребуется в большинстве случаев:
- Заполнить анкету на сайте.
На данном этапе отбора мы собираем информацию о ваших интересах, достижениях, опыте работы или стажировок, а также спрашиваем, почему вам интересно пройти стажировку в компании.
- За неделю выполнить тестовое задание.
Задания выполняются в системе Яндекс Контест. Их количество и сложность заисят от направления, а решение проверяется автоматически.
- Пройти два-три технических интервью.
После успешного прохождения тестового задания вас пригласят на два-три технических интервью. Каждое длится час-полтора. На интервью нужно будет решить 2–3 задачи на написание кода, алгоритмы и структуры данных, а также ответить на несколько вопросов по теории.
- Поучаствовать в финальных встречах с командами.
Это встречи-знакомства с вашими будущими коллегами. Они по очереди расскажут, как устроена работа в разных командах, чем они занимаются и какая роль будет отведена вам, а вы сможете задать все интересующие вас вопросы. Будьте готовы рассказать о вашем опыте и навыках и решить пару задач, связанных с деятельностью команды.
Как подготовиться к техническим интервью
После успешного прохождения тестового задания вас пригласят на несколько технических интервью. Каждое длится час-полтора. Вас попросят решить две-три задачи на написание кода, алгоритмы и структуры данных, а также ответить на несколько теоретических вопросов. Залог успешного прохождения технического интервью — хорошее знание алгоритмов и выбранного языка программирования.
Важно уметь оценивать сложность алгоритмов, писать читаемый код, находить ошибки, не забывать о краевых случаях. Не менее важно уметь взаимодействовать с интервьюером: слышать подсказки и реагировать на них, не бояться задавать вопросы, рассуждать вслух, озвучивать возникающие идеи. Опыт самостоятельных проектов — учебных, рабочих или личных — всегда преимущество. Будет полезно, если вы заранее вспомните пару таких примеров и поделитесь с нами на собеседовании.
Будет плюсом, если вы:
- понимаете, как устроены сети связи и основные сетевые протоколы (IP, TCP, UDP, HTTP, REST, BitTorrent, gRPC);
- знаете базы данных и SQL;
- работали с командной строкой Unix (Ubuntu) и OPS (администрирование, работа с Linux);
- понимаете принципы многопоточного программирования;
- имеете опыт параллельных или распределенных вычислений;
- знаете основные паттерны ООП (самостоятельно реализовывали и использовали их).
Полезные ссылки
Как подготовиться к финальной встрече с командой, рассказываем в следующей статье.