{"id":14262,"url":"\/distributions\/14262\/click?bit=1&hash=8ff33b918bfe3f5206b0198c93dd25bdafcdc76b2eaa61d9664863bd76247e56","title":"\u041f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u0442\u0435 \u041c\u043e\u0441\u043a\u0432\u0435 \u0438\u043d\u043d\u043e\u0432\u0430\u0446\u0438\u044e \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0435 \u0434\u043e 1,5 \u043c\u043b\u043d \u0440\u0443\u0431\u043b\u0435\u0439","buttonText":"\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435","imageUuid":"726c984a-5b07-5c75-81f7-6664571134e6"}

Тестовые задания в ИТ – пережиток прошлого или важный этап отбора? Часть 2

В первой части статьи эксперт по ИТ-рекрутингу Татьяна Аква перечислила основные мифы в отношении тестовых заданий в сознании компаний-нанимателей. Но понимать проблему недостаточно, нужно иметь варианты ее решения. Как же выстроить найм, чтобы обойтись без тестовых заданий? Разбираемся во второй части материала.

Чем заменить тестовое задание

  • Самое популярное, и пожалуй, самое работающее — это просто устное собеседование с техническим руководителем. За час-полтора беседы более опытный и зрелый разработчик/руководитель может составить адекватную картину сильных и слабых сторон кандидата. И на основе полученной картины принимать решение, какие слабые места можно восполнить работой на проекте именно по вашим задачам (то есть обучаясь нужным именно вам скиллам быстрее, чем вы найдете их на рынке), а с какими смириться не получится, т.к. это критически важно для вашего проекта.
  • Дайте в тестовом небольшую задачу, над которой вы реально работали в последнее время, но прямо на собеседовании, в обсуждении. Это и для вас показательнее, и кандидату будет понятно, какого рода задачи у вас могут возникать. Вы увидите какие варианты он предлагает, насколько эти варианты совпадают с вашими. Может быть, кандидат даже при наводке не видит слабых мест в своем решении или, напротив, у кандидата сразу появилось пару решений, к которым вы долго шли? В зависимости от результатов решения такого кейса гораздо легче принять решение о том, чтобы отказаться от продолжения общения или наоборот срочно брать его на работу.
  • При наличии Open Source проектов у кандидата можно изучить их. Посмотреть на код, разобрать спорные моменты, задать вопросы, почему принято то или иное решение или выбран тот или иной инструмент. У вас есть задачи по производительности? Попросите показать код, где кандидат учитывал эти моменты и какую архитектуру закладывал. Проблемы с взаимодействием API? Попросите показать релевантное решение в его проекте и обсудите. При этом код, который вы увидите, будет реальнее и правдивее того, который кандидат будет писать «на показ» для тестового.
  • Смотрите senior на крупные задачи для разработки с нуля? Расскажите ему о вашем текущем проекте и попросите рассказать, как он бы строил его с точки зрения архитектуры, дав достаточно вводных. Послушайте его рассуждения. Попросите рассказать, какие потенциальные узкие места он видит и о чем нужно подумать заранее. Не факт, что он должен решить все проблемы прямо на собеседовании, в реальном мире ему нужно будет на это время, но вы точно увидите, насколько предлагаемые решения и рассуждения совпадают с вашими.
  • Посмотрите на встрече код вашего разработчика, который находится на ступень ниже нанимаемого, попросите провести ревью. Тоже довольно показательная вещь: показывает навыки поиска ошибок и подход к предложению более оптимальных решений, и взгляды на качество кода.
  • Если у вас внутри нет достаточной экспертизы, то не стоит давать тестовое, которое для вас кто-то составил и проверять его по «правильным ответам». Разработка — не точная наука, и предложенное составителем решение может не быть неоптимальным в реальных условиях или просто допускать вариативность при достижении нужного результата. Лучше найдите эксперта, который поможет вам в процессе собеседования. Спросите у друзей, комьюнити или обратитесь в некоторые кадровые агентства, которые помогут найти такого эксперта. Например, у нас есть база топовых экспертов по разным направлениям, которые помогут вам в оценке и найме кандидата под ваши критерии. Скорее всего, в итоге выйдет даже дешевле, чем если бы вы работали по воронке с обязательным тестовым.
  • Не забывайте делиться опытом и советоваться. Прежде чем внедрять в найм психологическое тестирование, потому что у вас не срослось с двумя сотрудниками, спросите совета на рынке, в сообществах или у тех же кадровых агентств, кто регулярно занимается оценкой и наймом – скорее всего вам подскажут несколько работающих техник для проверки навыков, с которыми вы придете к желаемой цели более «экологичным» путем.

Что делать, если тестовое задание необходимо

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

Что можно улучшить, если без тестового совсем никак? Пересмотрите его формат и содержание, чтобы сделать его менее болезненным как для кандидатов, так и для вас самих – ведь тестовые нужно кому-то проверять и давать оценку, а это время, которое – деньги.

  • Сделайте тестовое задание небольшим — на 1-2 часа максимум. Такое время кандидату гораздо проще выделить, а значит он с большей вероятностью согласится его сделать.
  • Приблизьте содержание задания к боевым задачам. Вы сможете оценить, насколько решения кандидата близки к тем, c которыми придется работать.
  • Альтернатива предыдущему пункту: дайте нестандартную, интересную задачу, которой можно будет зацепить кандидата. При этом не забывайте, что вам нужно будет как-то оценить решение и сделать вывод, нужен ли вам такой соискатель или нет.
  • Давайте тестовое только после общения с непосредственным руководителем. До этого момента кандидат минимально заинтересован в том, чтобы вкладывать усилия, ведь он не знает что его ждет внутри компании.

Мнение большинства кандидатов на рынке звучит примерно так: «Никогда не буду делать тестовое ДО общения с руководителем, так как для меня важнее всего понять, сойдемся ли мы с ним. Зачем тратить время на тест, если мне человек не понравится или у нас разные подходы и цели?»

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

«Мы в FriFlex все этапы собеседований проводим онлайн. Тестовые задания даем обычно прямо на собеседовании. Предварительно готовим для кандидата задачи (часто в coderpad.io), и он решает их в режиме онлайн, по ходу общаемся и модифицируем задачи. Обычно после такого теста становится понятен уровень кандидата».

Николай Соловей, Руководитель проектов, FriFlex

Итоги

Чем тестовое осложняет найм:

  • Сужает воронку отбора или делает ее более длинной;
  • Наличие тестового приводит к выбор не из «максимально подходящих» кандидатов, а из «готовых делать тестовое»;
  • Оторванные от реальности тестовые задания не дают оценить потенциал кандидата применительно к действительным рабочим задачам.

Какие альтернативы тестовому заданию существуют:

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

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

0
121 комментарий
Написать комментарий...
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Борат Язь

Прилетает тебе такое. Твоя оценка времени выполнения и готов ли сделать бесплатно в своё свободное время? И это одно из двух. Там ещё и второе было, но там просто SQL запрос хитрый.

Problem #1:
Given:
System A generates messages (simple strings) in random way. That system may generate N messages per second and then be idle for hours. Every message has its own priority.
System B can process messages in some way, e.g. by sending them to stdout/console. Message processing logic is very slow, it is limited by 1 message/second.

Problem definition:
Implement mentioned program logic (systems A and B).
The implementation of the system A should generate messages. The implementation of the System B should receive generated messages and process them (e.g. send to stdout) with the mentioned performance limitation.
Processing should be priority based - messages with higher priority must be processed first
No messages generated by the System A can be lost, all messages should be processed according to their priority

Implementation limitations:
Use only native Java v6+ API
Do not use any external software and database servers
Do not use any external open source frameworks, all program routines should be implemented by the candidate

Additional statements:
Usage of Maven & Gradle is optional
Usage of any DI framework is optional

Problem #2:
Additional complicated problem definition.
Implement the Problem #1 with the following additional requirements:
The number of System B instances varies (>1)
Every B instance should receive all messages generated by the System A

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Борат Язь

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

Ну и ответ на твой изначальный вопрос "Камон ребята, куда вы его утилизируете потом?" - точно не на тестовые задания.

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Борат Язь

Плохо - понятие относительное. Для тебя потратить несколько своих выходных на тестовое задание - ок. То что ты время своё совсем не ценишь, понятно было из стартового комментария. Для меня - это неприемлимо, как и для многих других.

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Станислав Курочкин
 Рассчитывая на халявный офер?

Так а что, за оффер надо платить!?

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

20% НДС

Ответить
Развернуть ветку
Борат Язь

Не подавал - сами нашли.

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

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