Старт проекта

Как проводить собеседование программиста

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

Поэтому давайте по шагам разберем, как найти подходящего человека.

Я не случайно написал в последнем предложении “человека”, а не “программиста”. Личные качества гораздо важнее, чем технические навыки. Технические навыки можно относительно быстро нарастить за счет курсов и тренингов. Личные качества – это практически в 90% случаев константа.

Проверяем личные качества кандидата

Итак, первым делом определяем необходимые личные качества, а также простые способы их проверки. Что это может быть:

  • исполнительность,
  • надежность,
  • четкость и точность,
  • честность.

Исполнительность программиста

Как проверить исполнительность? Да очень просто. Составьте точное задание с прописыванием детальных требований к результату (формат файла, структура содержания, на какую почту прислать и т.д.). Если человек не может выполнить ваши элементарные требования – то фильтруем. Он может быть прекрасный программист, но его природное раздолбайство рано или поздно вас серьезно подведет в неподходящий момент.

Технические навыки разработчика

Что делать с техническими навыками. Первое – определите, какой стек технологий вам нужен. Если у вас система сделана на Битриксе, то глупо искать просто “программист”. Такая ранняя фильтрация очень упростит вам поиск и рассмотрение кандидатур. К нам часто обращаются заказчики с “соседних” технологий. Т.е. по сути они тратят свое и наше время, когда сразу очевидно, что мы в проекте не можем участвовать (наша профилирующая технология на 2017 год – ASP.NET MVC & SQL Server).

Чем точнее будет стек технологий, тем меньше будет левых предложений.

Следующий этап – это проверка технических знаний специалиста на практике. Мой субъективный совет – не доверяйте сильно тому, что написано в резюме, или состав проектов, в которых он участвовал. Он мог там выполнять роль тестировщика, а писать, что был ведущим разработчиком.

Самый простой вариант – нанять какого-то человека (любого программиста со стороны на пару часов) помочь вам провести техническое собеседование. При этом вы сами желательно должны участвовать в разговоре или прослушать запись. Обращайте внимание не на то, сделал или нет тестовое задание человек, а как он его решает. Если легко и с вариациями, не напрягаясь, то у него есть хороший опыт. Если кандидат каждую задачу решает как вызов (т.е. с трудом), то вероятно он не имеет достаточного опыта.

Будет здорово сначала собрать ожидания программиста – кто он? Гуру в такой-то технологии? Он быстро работает? Сейчас проверим.

Чем выше ставка, тем выше требования вы должны предъявлять к человеку.

Что делать если нет друга-программиста, который поможет проверить человека? Тоже несложно.

Допустим, нам нужен веб-разработчик. Созваниваетесь по скайпу и просите выполнить в режиме онлайн оплачиваемое тестовое задание. Например, разработать форму отправки заявки с 5 разными полями. Он должен показать, как он делает с комментариями и, главное, работающий результат. Опять же обращайте внимание на то, КАК он работает. Быстро или медленно? С натугом или легко? Понятно ли он объясняет или что-то бормочет? Вам с ним потом работать, поэтому проверяйте полный цикл на таком прототипном взаимодействии.

Высокая ставка никак не связана с реальным опытом и знаниями человека

Альтернативные способы проверки технических навыков программиста

Если вам совсем не хочется заморачиваться, то есть еще несколько вариантов.

Первый – это искать через HR-агентов программистов. Здесь проблема в том, что его никто не проверит, HR не проверяет, его задача просто вам кого-то подсунуть.

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

И последнее – крайне важно угадать с программистом. Нет ничего хуже, чем ленивый, хамоватый, ненадежный разработчик, который не проверяет за собой код. Чтобы не попасть в этот капкан (а это реально капкан!), обязательно тщательно проверяйте разработчиков.

Также у нас есть отдельная статья с Mind Map про собеседование программиста

Руслан Раянов

Recent Posts

Что такое Баг? #понятия_веб_разработки #вебликбез

https://falconspace.ru/blog/bazovye-voprosy-i-ponyatiya-v-sfere-sozdaniya-veb-proektov - Основы веб-разработки. Базовые понятия для владельца сайта

11 часов ago

Что такое Юзабилити? Что такое UX/UI? #понятия_веб_разработки #вебликбез

https://falconspace.ru/blog/bazovye-voprosy-i-ponyatiya-v-sfere-sozdaniya-veb-proektov - Основы веб-разработки. Базовые понятия для владельца сайта

1 день ago

Удаленная работа с клиентами: как организовать?

Поскольку коммуникация и взаимодействие клиента с поставщиком — краеугольный камень продаж в целом и формирования…

1 день ago

Что такое Мокап сайта, дизайн, верстка? #понятия_веб_разработки #вебликбез

https://falconspace.ru/blog/bazovye-voprosy-i-ponyatiya-v-sfere-sozdaniya-veb-proektov - Основы веб-разработки. Базовые понятия для владельца сайта

3 дня ago

Что такое Customer Development (кастдев)? #понятия_веб_разработки #вебликбез

https://falconspace.ru/blog/bazovye-voprosy-i-ponyatiya-v-sfere-sozdaniya-veb-proektov - Основы веб-разработки. Базовые понятия для владельца сайта

4 дня ago

Что такое Целевая аудитория? #понятия_веб_разработки #вебликбез

https://falconspace.ru/blog/bazovye-voprosy-i-ponyatiya-v-sfere-sozdaniya-veb-proektov - Основы веб-разработки. Базовые понятия для владельца сайта

5 дней ago