Найм разработчиков - какие-либо советы по повышению эффективности? [закрыто]

17

Я представляю компанию по разработке программного обеспечения, которая находится в процессе создания большой команды разработчиков программного обеспечения. Мы разборчивы в том, кого мы нанимаем, и у нас действительно хороший уровень удержания (большинство разработчиков были здесь в среднем 5-6 лет).

Мы потратили много времени разработчиков и персонала и имеем низкое соотношение приложений к найму. Вот процесс, который мы используем:

  • Интервью HR по телефону - включает в себя задание основных поведенческих и технических вопросов
  • Онлайн тест - включает 30-минутный технический тест
  • Техническое телефонное интервью - 60-минутное интервью от разработчика
  • Интервью на месте - 60-90 минутное интервью нескольких ведущих разработчиков

Хотя этот процесс работал, мы слишком много времени тратили на интервью. Есть мысли о том, как это можно сделать по-другому? Наша цель - по возможности автоматизировать любые задачи, сохраняя при этом качество талантов.


ОБНОВЛЕНИЕ: Спасибо за ответы. Нужно уточнить несколько вещей. Наша цель - сократить количество абитуриентов, переходящих с одного этапа на другой. Вот наши текущие цифры.

  1. Мы получаем 1000 резюме
  2. 800 резюме проходят собеседование
  3. 500 пройти онлайн тест
  4. 100 пройти начальный экран телефона
  5. 10 пройти на месте и получить работу

Как видите, нам нужно лучше отсеять кандидатов на ранних этапах процесса. Можем ли мы сделать лучшую работу в том, как онлайн-тест оценивает людей?

Вот более подробная информация о процессе, основанном на некоторых ответах:

  • Интервью HR по телефону - они задают очень простые технические вопросы (что такое CLR?), Чтобы отсеять как можно больше людей
  • Онлайн тест - есть около 10 основных вопросов с 3 вопросами кодирования
  • Экран телефона Tech - охватывает множество технологий. Нам все равно, если заявитель не знает всего, пока он может продемонстрировать, что он сможет освоить новые технологии и быстро набрать скорость
  • Onsite - вопросы кодирования перед разработчиками. Больше вопросов архитектурного уровня.
DotnetDude
источник
2
Одна стратегия состоит в том, чтобы нанять на месте. Это не экономит время, но снижает стоимость, если стоимость является важным фактором.
Rwong
1
Второй способ - определить сотрудников, которые более склонны (или не будут возражать) участвовать в найме, и позволить им брать на себя большую долю ответственности в этом.
Rwong
2
Почему бы не требовать, чтобы разработчики отправляли резюме через git? Это также отсеяло бы несколько запретов.
WernerCD
2
@WernerCD - Если вы нанимаете разработчиков .NET, они, вероятно, не слышали о git.
jfrankcarr
4
С другой стороны, я ненавижу HR задавать технические вопросы и проводить онлайн-тесты. Это просто вызывает у меня плохое предчувствие по поводу компании. Я был бы гораздо более заинтересован в компании, если бы они сразу перешли на FizzBuzz и вместо этого потратили 10 минут на обсуждение архитектуры. Я считаю, что эти вещи намного более информативны и эффективны по времени.
MrFox

Ответы:

31

Я думаю, что есть несколько мест, где ты тратишь время.

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

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

Хотя телефонное интервью хорошо, оно не должно занимать целый час. Часто 5-10 минут достаточно, чтобы определить, подходит ли человек или нет. 30 минут должно быть максимум, что вам нужно, чтобы определить, является ли лицом к лицу оправданным.

Личное интервью будет самым важным. Только не тратьте его на BS, такие как личностные тесты, стандартизированные онлайн-тесты и тому подобное. Потратьте время, чтобы узнать человека и посмотреть, будут ли они вписаться в вашу команду. Задавайте хорошие вопросы, связанные с работой, которую вы ожидаете от них, а не с подвохами, не сообразительными головоломками, которые вы слышали в Google / Microsoft / Apple / etc, или с неясными мелочами.

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


Редактировать на основе обновленной информации ...

Если ваш HR отбирает только 200 из 1000, проблема может быть в этом.

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

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

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

jfrankcarr
источник
22
Забавно, я не буду работать на компании, которые настаивают на такой ерунде. Я также обнаружил, что интервью с персоналом, как правило, являются пустой тратой моего времени. Они ничего не говорят мне о компании, а дроны HR, кажется, думают, что я забочусь о «корпоративных ценностях».
Кристоф Провост
2
@jfrankcarr - не имеет значения, что он делает. Программист должен уметь мыслить логически. Если вы просто не копируете уже существующие вещи. Каждый проект должен делать что-то новое, даже если он использует алгоритм из библиотек и т. Д.
srnka
3
@srnka - Для типичных корпоративных приложений мне все равно, смогут ли они написать жесткий, низкоуровневый алгоритм сортировки с нуля. Для этого есть много замечательных библиотек. Меня волнует, знают ли они, как следовать шаблонам программирования, разрабатывать хороший пользовательский интерфейс, писать хорошие запросы к БД и т. Д., То есть то, чем они будут заниматься каждый день на работе.
jfrankcarr
2
Хотя я бы не -1 ... но бросил HR и бросил онлайн-тест ... и дал бы 1000 10-минутных интервью? А как насчет того, кто не может соответствовать требованиям к работе (HR-фильтр)? Или можете провести телефонное интервью, но не FizzBuzz (онлайн-тест)? Это довольно важные фильтры.
WernerCD
3
@NimChimpsky: Подобно тому, как некоторые компании используют личностные тесты в качестве инструментов для отбора кандидатов, некоторые кандидаты используют их в качестве инструментов для проверки компаний.
Blrfl
23

Это одна из ситуаций, когда вы не хотите быть более эффективными, чем уже есть. Уже есть слишком много заявителей, которые не могут пройти FizzBuzz. Ваш текущий процесс фильтрации выглядит так, как будто он обеспечивает качество разработки. В конечном итоге вы потратите еще больше времени, если исключите какие-либо шаги, которые делаете до сих пор.

SomeKittens
источник
5

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

Низкая рентабельность инвестиций в вашем процессе может быть первые три шага. Возможно, вы можете более тщательно просматривать резюме или искать еще более высокие результаты в онлайн-тестировании. Технический экран телефона может быть целью оптимизации, если вы установите его на 30 минут, но позволите превосходящим кандидатам продлиться до 45 или 60 минут.

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

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

DeveloperDon
источник
4

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

Рассмотрим альтернативу - вы сокращаете накладные расходы по подбору персонала (хоть каким-то способом). В результате срок службы сокращается с 6 лет до 3. Если вы потратили половину времени на каждый набор, то вы потратили в общей сложности то же самое только на набор. Теперь посмотрите на стоимость товарооборота - в отличие от ручного труда (хороший пример - окраска ограды), чтобы достичь скорости, требуется, например, 3–6 месяцев. Таким образом, это означает, что ваши сбережения при приеме на работу должны восстановить заработную плату, затраты и упущенную выгоду для бизнеса за 3-6 месяцев (назовите это 2,5 * заработной платы).

В общем, набор в среднем обойдется вам в 3-6 месяцев зарплаты. Сколько вы тратите, чтобы заполнить позицию - я думаю, неделю или две.

Способ уменьшить это: все, что я вижу, это время собеседования - вы их прекращаете или добавляете, как только решили, что кандидатом является «Нет» (или «Да»)? Если вы решили сделать ему предложение после первых 5 минут - сделайте предложение. Если вам нужно 90, чтобы принять решение не делать предложение, спросите, почему потребовалось 90, чтобы получить «Нет» (то есть, что он сделал, чтобы сделать это за последние 60 секунд).

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

mattnz
источник
3

Я также хотел бы предложить кое-что, что я прочитал здесь: Эффективное программирование: больше, чем написание кода :

Приятно видеть, вписывается ли кандидат в культуру организации и повседневную жизнь. Это можно сделать, позволив кандидату задавать вопросы действующим сотрудникам «не для учета» или на некотором продвинутом уровне, выполняя контрактную работу в течение недели или двух (по предложению автора).

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

Димитриос Мистриотис
источник
1

Мы обычно просим их принести и объяснить некоторый код, который они написали и которым особенно гордятся, предпочтительно из проекта с открытым исходным кодом.

« Подождите, - говорите вы, - разве это не смещает вас к людям, которые пишут программы в свободное время? »

Да. Да. Это своего рода точка.

tylerl
источник
10
Два замечания: 1) таким образом, вы просто убедитесь, что пропускаете много кандидатов, которые в других отношениях одинаково подходят, которые не занимаются проектами с открытым исходным кодом в свободное время по какой-либо причине (например, у них нет свободного времени, будучи отцом / матерью) они предпочитают сохранять баланс между работой и личной жизнью, чтобы избежать выгорания, у них есть другие увлечения и т. д.) 2) это не отвечает на вопрос.
Петер Тёрёк
1
+1 Имхо лучшие разработчики не 9 до 5 разработчиков. Они действительно проводят некоторое свободное время на работе с проектами. Хорошая статья: theundercoverrecruiter.com/...
jgauffin
6
Я думаю, что это вздор. Я бы предпочел нанять кого-то, кто хорошо окружен интересами вне работы. Кодирование - это легко.
NimChimpsky
3
У меня есть обычный вопрос для моего собеседования: «Вы когда-либо участвовали или участвовали в проекте с открытым исходным кодом»? Позвольте мне сказать вам, что это просто культурный анализ . Если у них есть, БОЛЬШОЙ !: им нравится то, что они делают достаточно, чтобы использовать свое свободное время для этого, они хороши с удаленной работой и у них есть навыки общения / ведения переговоров (большая часть вопроса связана с участием в самом сообществе , Мне наплевать на код). Если они этого не делают, не должно иметь никакого значения , поскольку это, вероятно, означает, что у них есть семья.
dukeofgaming
3
@ PéterTörök - Компании, подобные описываемой, не хотят, чтобы у их программистов была внешняя жизнь. Они хотят, чтобы они были молодыми и непривязанными, чтобы они могли израсходовать их и выплюнуть через 3-5 лет.
jfrankcarr
0

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

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

Я уверен, что это отнимет много накладных расходов у вашей команды, но это будет стоить. Я слышал, что это может быть процент от зарплаты работника. Поэтому, если вы предлагаете 65 тыс. В год, вы можете предложить им 60 тыс., А затем заплатить компании 5 тыс.

Tyanna
источник
Какие механизмы должны быть в наличии, чтобы убедиться, что агентство по подбору персонала выполняет свою работу? (Например, правильно выбирать хороших кандидатов и не поддерживать неподходящих кандидатов с помощью тестовых приготовлений.)
rwong
@ rwong ~ Это просто, компания все еще дает заключительное интервью или 2. Это механизм. Поддержка кандидата работает, только если этот кандидат не должен ни с кем разговаривать. Проведение двухчасовых собеседований (часовое телефонное и часовое на месте) быстро покажет, действительно ли кандидат хорош. И если передают много поддельных кандидатов, прекратите использовать это агентство.
Тианна
0

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

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

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

CamelCase
источник
Я согласен, за исключением того, что я думаю, что год слишком длинный для ситуации с контрактом. 6 месяцев - это самое длинное, что вы хотите пройти, если хотите удержать людей. Как правило, через 3 месяца вы узнаете, подходит ли вам человек или нет. Там нет причин, чтобы вытащить вещи.
jfrankcarr
Шестимесячный контракт с наймом - это хорошо, если вы хотите нанять подрядчиков. Это может быть слишком долго, если вы хотите нанять человека, который в настоящее время находится на постоянной должности.
Кевин Клайн
0

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

Для меня это сработало как волшебство ... Я смог отсеять так называемого 15-летнего опытного парня, который много говорил о том, что он настолько хорош, что он хотел бы уйти со своей руководящей должности ради выстрелил в должность разработчика в моей компании ... о, парень, он потерпел неудачу: 45 минут (я даже пошел за газировкой и вернулся), сделал это в псевдокоде, и он понял это неправильно. Парень оставил хорошие впечатления от HR из-за его резюме, но благодаря этому результату я смог отсеять его без пота.

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

Прочитайте статью Джеффа Этвуда " Почему программисты не могут программировать », чтобы понять суть теста.

Кроме того, к сожалению, я нахожусь в Мексике, и это недостаточно популярно, чтобы иметь из чего выбирать, но, может быть, попробуйте careers.stackoverflow.com ? Я имею в виду, что это специализированный инструмент подбора персонала именно для того, что вы ищете.

dukeofgaming
источник
0

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

Я участвую во многих областях программирования на C #, Java, PHP и т. Д. Большой опыт работы гарантирует, что человек является экспертом в своей области, но из-за этого игнорируется тот факт, что другие фоны подавляются.

Например, большая часть моего опыта связана с PHP, и я знаю почти все нюансы языка, просто потому, что я могу ответить на вопрос, это не делает меня качественным программистом. И только то, что я не помню имя и определение функции в библиотеке XXXX в Java, не делает его плохим Java-кодером.

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

Starx
источник
0

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

Может быть, что HR скажет, зная некоторые моменты в общем процессе, используемом в вашей организации, но, скорее всего, вы могли бы немного больше пропустить, если вы можете настроить вещи так, чтобы у вас были определенные ценности, стили общения и другие моменты. как вещи для HR, чтобы найти. Суть здесь не в том, чтобы HR определял только соответствие, а скорее собирал информацию, которую затем можно было бы передать одному или двум разработчикам, чтобы понять, стоит ли кому-то ускоренное отслеживание процесса.

JB King
источник