Как проходит собеседование в IT компанию?

Как проходит собеседование для программиста? Какие вопросы задают? Что требую от кандидата? Эти вопросы всегда волнуют начинающих специалистов, которые хотят устроиться программистом.

0. Резюме

Каждая компанию старается выработать свой уникальный подход для отбора кандидатов на вакансию. Первым фильтром выступает ваше резюме, которые вы выложили на сайте поиска работы или отправили лично в компанию. Этим занимается сотрудник компании, ответственный за подбор персонала, которого обычно называют HR. Этот человек скорее всего ничего не смыслит в программировании, поэтому просто смотрит ваше резюме, обращает внимание на навыки и сравнивает их с требованиями вакансии. Если резюме составлено правильно, то ждите звонка и первого этапа собеседования.

1. Разговор с HR

После отбора вашего резюме HR связывается с вами и назначает первый этап собеседования. В больших компаниях первый этап часто проводится по Skype для экономии времени. В небольших компаниях обычно первый этап собеседования проводится в офисе. По времени может занять от 5 мину до часа. Если HR начинает закидывать вас тестами на логику, вопросами о том, кем вы себя видите через 10 лет и другими разговорами, то стоит несколько раз подумать, прежде чем устраиваться в такую компанию. Задачей HR является проверить вашу адекватность как человека и передать вас специалисту отдела разработки для технического собеседования, это можно сделать за 5-10 минут общения с вами.

2. Техническое собеседование

Наконец вы дошли до технического собеседования. Тут уже начинает проверка ваших знаний. Обычно этот этап занимает много времени.

Что могут спрашивать?

2.1. Знания языка программирования

Вы должны хорошо владеть языком программирования, который вы указывали в своем резюме. Обычно на собеседовании спрашиваю разные тонкости работы с языком и могут попросить написать немного кода на бумажке.

2.2. Алгоритмы и структуры данных

Этот вопрос часто любят задавать в больших компаниях. Тут вы можете услышать вопросы из серии: Время работы алгоритма quicksort? Как работает хеш-таблица? Какими структурами данных вы чаще всего пользуетесь?

2.3. Системы контроля версий

Вопросы про системы контроля версий тоже актуальны, обычно просто интересуются какие вы знаете и какими пользовались.

2.4. Многопоточность

Часто задают задачи по многопоточности. Нужно хорошо понимать как работают многопоточные приложения и какими методами решается проблема "Состояние гонки".

2.5. Знание ОС Linux

Иногда можно встретить вопросы по знанию ОС Linux. Обычно задают вопросы о командах bash.

3. Тестовое задание

Тестовое задание могут давать на разных этапах собеседования, а могут и не дать вообще. Все зависит от компании. Цель тестового задания посмотреть, как вы пишите код. Обычно выполнение такого задания не займет больше часа, но с помощью него можно многое понять о разработчике. Стоит обращать внимание на объем тестового задания. Если оно слишком большое, то стоит насторожиться и спросить HR о причинах такого объёма.

4. Предложение

Если вы прошли все испытания и ваши знания и навыки были хорошо оценены, то вам делают официальное предложение для устройства на работу. Вам знакомят с командой, более подробно рассказывают о проекте и оформляют вас.

Если эта статья была вам полезна, подписывайтесь на наш канал. Не забывайте, что вы можете задавать любые вопросы на lukamert@yandex.ru.

Успехов:)