Оффтоп Daria Khokhlova
7 020

«Дешевле заплатить за плохое тестовое задание, чем работать с неподходящим человеком»

Инструкция по найму разработчиков

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

Редакция vc.ru публикует инструкцию от Ясина.

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

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

Первый — выдать кандидату оплачиваемое тестовое задание из расчёта, например, в $100 за час работы. Разработчик, выполнивший задание, на которое он должен был затратить примерно два часа, получит $200. Второй — обсудить полученный результат в присутствии всей команды. Кандидат расскажет о своём решении, а потенциальные коллеги зададут свои вопросы.

По словам Ясина, такое сочетание устраняет почти все ошибки найма. «Заплатить кандидату за ужасное решение — дороже, чем провести интервью, но дешевле, чем нанять не того человека и выяснить это только спустя три месяца — как в финансовом, так и в эмоциональном плане. Приукрасить своё резюме очень просто, а вот приукрасить свои навыки в реальной ситуации — уже сложнее».

Почему платить за выполнение тестового задания — выгодно

Для работодателя:

  • Кандидат получает деньги и чувствует, что попал в реальную рабочую ситуацию, — а значит, прикладывает максимум усилий к поиску решения.
  • Такая практика наглядно показывает кандидату, как компания относится к своим сотрудникам.
  • Это позволяет работодателю испытать кандидата в «боевой» обстановке — притом с минимальным риском. Общее обсуждение помогает понять, как кандидат общается с коллегами, как отстаивает свои решения, принимает критику и задают вопросы.

Для соискателя:

  • Кандидат получает возможность посмотреть, как работает команда и как руководство относится к своим сотрудникам.
  • Соискатель также получает возможность продемонстрировать свои дополнительные навыки, которые не перечислены в резюме, или на которые не обратил внимания рекрутер.
  • Работодатель может узнать, что на самом деле считает важным соискатель. «Возможно, он не тестирует каждую строчку кода — и у него будет шанс рассказать, почему он так делает, и может быть, он даже окажется прав. Вы никогда не сможете получить такой информации, просто спросив на собеседовании, придерживается ли кандидат методологии TDD».

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

1. Для выполнения задания кандидату нужны выходные

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

При этом Ясин объясняет, какие технологии нужно использовать для решения, и предоставляет к ним доступ. В то же время разработчикам не запрещается использовать другие инструменты по своему усмотрению. «Например, я даю задание реализовать решение на JavaScript, а какую библиотеку использует разработчик — Kefir, Bacon или RX — мне не важно».

2. Не стоит давать кандидату реальную проблему, для решения которой требуется освоение множества инструментов

«Нельзя просто посадить соискателя за компьютер и сказать ему: решите вот эту проблему. Она возникла у нас в процессе работы и для выполнения задачи вам понадобится владеть всеми инструментами, которым мы обучили работников. Дайте ему отдельную задачу, которая не требует глубоко знания контекста», — говорит Ясин.

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

«К примеру, если я нанимаю веб-разработчика, я даю ему чёткую инструкцию: создать одностраничное приложение, которое позволит пользователю хранить домашнюю коллекцию фильмов, иметь доступ к ним в офлайн-режиме и искать нужные фильмы. Поиск — по названию, жанру и актёрскому составу», — объясняет автор материала.

При этом работодатель не уточняет, как хранить список фильмов, и не проясняет другие аспекты. «Всё это — их дело. Некоторые делают только то, что мы просили, другие — значительно улучшают решение. Важно только то, понравится ли нам конечный результат».

«Я не говорю разработчику: "Знаете, мне очень нравится смотреть фильмы, сделайте для меня хороший киносайт" или "Представьте, что вам нужно спроектировать IMDb с нуля". Задача должна быть достаточно простой, чтобы соискатель успел решить её, и в то же время интересной — чтобы он мог продемонстрировать свои навыки и создать нечто особенное».

4. Разработчик обязательно должен представить своё решение команде

Самая большая проблема среди разработчиков, пишет Ясин, заключается в том, что они слишком стараются защитить своё решение. И работодателю стоит узнать, как кандидат реагирует на критику. «Если они немедленно занимают оборонительную позицию — это никуда не годится. Есть разница между защитой и обороной. Защита основана на фактах, оборона — на эмоциях», — объясняет он.

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

5. Проблему нужно описать письменно

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

6. Оплатить выполненную задачу следует сразу же после завершения обсуждения в понедельник

«Не важно, собираетесь ли вы нанимать соискателя — лучшее, что вы можете сделать как для начала, так и для окончания отношений — выписать чек сразу после командной встречи», — говорит Ясин.

Нанимать или не нанимать

Предприниматель приводит несколько признаков, которые сигнализируют о том, что соискатель достойно справился с задачей:

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

Признаки того, что нанимать кандидата не стоит:

  • Соискатель отказывается выполнять задачу, мотивируя это тем, что другие компании готовы нанять его и без тестового задания.
  • Решение не соответствует поставленной задаче.
  • Кандидат не может аргументировать свои решения.
  • Он занимает оборонительную позицию на встрече.
{ "author_name": "Daria Khokhlova", "author_type": "editor", "tags": [], "comments": 17, "likes": 15, "favorites": 1, "is_advertisement": false, "subsite_label": "flood", "id": 19863, "is_wide": true, "is_ugc": false, "date": "Thu, 10 Nov 2016 15:28:58 +0300" }
{ "id": 19863, "author_id": 5723, "diff_limit": 1000, "urls": {"diff":"\/comments\/19863\/get","add":"\/comments\/19863\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/19863"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 199791 }

17 комментариев 17 комм.

Популярные

По порядку

Написать комментарий...
18

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

Ответить
0

Не только! Я так кому-то курсовую сделал похоже.

Ответить
8

"Соискатель отказывается выполнять задачу, мотивируя это тем, что другие компании готовы нанять его и без тестового задания." - это не причина нанимать, это здравый смысл программиста, который выбирает более легкий (энергоэффективный - эфктивный - рациональный) путь из возможных))

Ответить

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

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

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

0

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

Ответить
8

Рекрутинг здорового человека

Ответить
5

Правильный подход, молодцы !

Ответить

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

1

Это в день можно выполнить заданий таких на 800 баксов, в месяц - на 16 000 )))

Ответить
2

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

Ответить
1

Тестовое задание - это лучший вариант.

Ответить
1

Со стороны работодателя - безусловно. Но со стороны соискателя - совсем нет.

И тут две проблемы:

1. Отсутствие мотивации. Последний раз когда искал работы рассматривал 2 компании. Обе достойные. Одна без тестового задания, другая - с ним (задание на пару дней). Пошел туда где задания не было - тупо лень делать. Потом меня знакомый спросил (он работал там где задание было) - мол ты чего слился, мы тебя так ждали... В посте предлагается хоть как-то мотивировать на его выполнение.

2. Отсутствие фидбека. В предыдущий раз когда искал работу - сделал 6 тестовых заданий. В одну взяли, одна отправила фидбек, остальные - молчание. Молчание - это признак паршивой компании. Фидбек в меру профессионален, но я прекрасно понимал что если б дали мне возможность - я б пришел и обосновал свое решение, разложил бы все по полочкам, привел бы выдержки из уважаемых книг. И если б у их разрабов хватило опыта понять о чем я говорю - меня бы взяли. Но имея на руках уже одно предложения, я им просто ответил: Ок, дело ваше.

Ответить
0

Читаешь подобное и понимаешь, как далеки местные реалиии замкадышей от описанного в статье.

Ответить
1

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

Ответить
0

Очереди = охерели

Ответить
0

Замкадыши — это те ,кто пытается изменить замкадье, потому что мкадыши не могут этого сделать априори

Ответить
0

ошибок в тексте на кол.

Ответить
1

восемнадцать плюха утро.

Ответить
0

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

Ответить
0

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "bugf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjog" } } }, { "id": 10, "disable": true, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "disable": true, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "bscsh", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "bugf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-223676-0", "render_to": "inpage_VI-223676-0-1104503429", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=bugf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Плашка на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudx", "p2": "ftjf" } } }, { "id": 16, "label": "Кнопка в шапке мобайл", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byzqf", "p2": "ftwx" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fzvc" } } }, { "id": 19, "label": "Тизер на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "p1": "cbltd", "p2": "gazs" } } } ]
Нейронная сеть научилась читать стихи
голосом Пастернака и смотреть в окно на осень
Подписаться на push-уведомления