{"id":14279,"url":"\/distributions\/14279\/click?bit=1&hash=4408d97a995353c62a7353088166cda4ded361bf29df096e086ea0bbb9c1b2fc","title":"\u0427\u0442\u043e \u0432\u044b\u0431\u0435\u0440\u0435\u0442\u0435: \u0432\u044b\u0435\u0445\u0430\u0442\u044c \u043f\u043e\u0437\u0436\u0435 \u0438\u043b\u0438 \u0437\u0430\u0435\u0445\u0430\u0442\u044c \u0440\u0430\u043d\u044c\u0448\u0435?","buttonText":"","imageUuid":""}

Найм программистов. Советы от программиста

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

Мои впечатления? Я в печали... Почти все материалы, на мой взгляд, напоминают «вредные советы».

В особенности «порадовала» последняя прочитанная статья: «25 классических вопросов, которые HR-ы задают программистам на собеседованиях» ( ссылка ), после прочтения которой и возникло желание написать данный материал.

Сразу оговорюсь, вся статья — это сугубо личное мнение, однако нашедшее поддержку в лице друзей и коллег программистов.

Итак...

Первая встреча, собеседование без тех специалиста

HR-ы, не обманывайте себя. Вы никогда не поймёте на сколько хорош программист

Разве что только когда сможете воткнуть электроды ему в ухо и запустить end-to-end теститрование. Но пока таких технологий нет, всё что Вы можете оценить — это адекватность и, хотя бы отчасти, мотивацию человека сидящего перед Вами.

И поверьте, этого достаточно.

Ведь Ваша задача найти человека, который сможет влиться в коллектив, плодотворно в нём работать и чтобы его работа вознаграждалась тем способом, который он ожидает, и который может обеспечить Ваша компания(деньги, признание, интересные проекты и т.д.).

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

Что ещё можно спросить на первом этапе? Зависит от специфики вакансии.

Если Вам нужен опытный человек — спрашивайте об опыте, узнавайте какие задачи он решал, какие трудности преодолевал.

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

Собранной на первом этапе информации хватит чтобы отсеять 80% - 90% кандидатов.

Часть вторая. Собеседование с тех специалистом

НЕ НАДО СПРАШИВАТЬ ТЕОРИЮ!

Пожалуйста, великие гуру найма и технари, любящие спрашивать теорию, объясните мне в комментариях в чем смысл Ваших вопросов?

По моему, если ответ на Ваш вопрос лежит по первой ссылке в гугле, то спрашивать его не имеет смысла. Разве что Вы ищите человека на закрытый объект, где нет доступа в интернет. Но в остальных случая — Я считаю теоретические вопросы пустой тратой времени, которая ничем Вам, как работодателю, не поможет.

Я лично знаю несколько человек, которые учились со мной на программистов. У них от зубов отскакивали все теоретические выкладки, но когда дело доходило до реального программирования — ничего путного они сделать не могли.

Также негодование вызывают вопросы, которые возможно и касаются будущей работы, но разобраться в которых не составляет труда. Например «юнит-тесты». Чтобы научиться писать юнит-тесты уйдёт от силы минут 10.

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

Что же, по моему, нужно спрашивать у кандидата?

Спрашивайте технические нюансы из их предыдущего опыта, особенно те, которые пересекаются с будущей работой.

По тому, как человек рассказывает, будет понятно:

  1. Реально ли он разбирается в вопросе или просто придумал эти пункты для набивания себе цены.
  2. На сколько его опыт и знания подходят для текущей вакансии.
  3. Сможет ли он справиться с будущей работой.
  4. Сможет ли он научиться, если не имеет подобного опыта.

И, как мне кажется, этого достаточно, чтобы сделать финальный выбор.

Больше о человеке Вы сможете узнать только на испытательном сроке.

Для дискуссий приглашаю в комментарии.

Надеюсь данный материал будет хоть кому-то полезен, спасибо за внимание.

0
453 комментария
Написать комментарий...
Yury Y

"Пожалуйста, великие гуру найма и технари, любящие спрашивать теорию, объясните мне в комментариях в чем смысл Ваших вопросов?"

смотря что вы понимаете под "теорией"? самая главная проблема это иллюзия наличия знаний, не полезет например такой человек в гугл посмотреть чем гет от поста отличается и сделает вам всё на гетах)

"Чтобы научиться писать юнит-тесты уйдёт от силы минут 10."

так сложилось, что писал их мало, но дело тоже имеет свои хитрости, правда если человек это не вдупляет, то остальное тем более

Ответить
Развернуть ветку
DEVVEB Constantine
Автор
смотря что вы понимаете под "теорией"?

Что такое высокоуровневый и низкоуровневый язык программирования?
Что такое полнота языка по Тьюрингу?
Какие есть операторы цикла в вашем языке и методы организации цикла без операторов?
Что такое компилятор и интерпретатор?
Какие бывают типы констант?
Дайте определение императивным, функциональным и процедурным языкам программирования. Приведите по 2-3 примера каждого.
Что такое методология программирования? Что представляет из себя Agile.
Жизненный цикл программы – опишите или изобразите его.
...
(Из статьи по ссылке в начале материала)

так сложилось, что писал их мало

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

Ответить
Развернуть ветку
Yury Y

никогда не сталкивался с подобными вопросами, а вы?

Ответить
Развернуть ветку
DEVVEB Constantine
Автор

В этом то и беда, что часто спрашивают... Звонит HR и говорит сейчас будет собеседование с тех специалистом и бац, такие вопросы в лоб. И на сколько знаю, даже при приеме в Яндекс могут такое спросить...

Ответить
Развернуть ветку
Yury Y

ну яндекс оно и понятно, туда не обычное подмастерье берут, а набирают кадры которые и про Тьюринга знают и что такое NP класс. собственно они и собеседуют дольше. ну и это от позиции зависит, джуна про остальное спрашивать нет смысла, всё равно не знает :)

Ответить
Развернуть ветку
DEVVEB Constantine
Автор

То есть тот кто не знает про Тьюринг полноту - это обычное подмастерье не способное писать хороший код?

Ответить
Развернуть ветку
Yury Y

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

Ответить
Развернуть ветку
450 комментариев
Раскрывать всегда