28 мар. 2012 г.

Дебильные вопросы при приёме на работу

В последнее время в наших краях стало модным при приёме на работу в софтверную контору проводить "Job Interview 2.0" - задавать кандидату дебильные вопросы типа "сколько заправок в Петербурге?", "как взвесить слона?" и тому подобные. Интервьюеры считают, что это раскрывает потенциал кандидата, его способности мыслить нестандартно, предлагать оригинальные решения и так далее. Что же происходит на самом деле?

  1. Этот процесс сильно смахивает на детские вопросы с подвохом ("что делал слон, когда пришёл на поле он?", "как в три приёма уложить слона в холодильник?", "в нашем городе живёт никто...[censored]"). Не знаешь правильного ответа - ты лошара, ха-ха!!! При этом ответ "очевиден" тем, кто его уже знает (кто уже где-то когда-то был лошарой), и они отыгрываются на новичках.
  2. Интервьюеры часто считают правильным только тот ответ, который они прочитали вместе с самим вопросом (если  вопросы такого рода вообще имеют правильный ответ), и попытки действительно нестандартного поиска решения разрывают их шаблон собеседования. Поучительный пример с задачей передвинуть Фудзияму. Самое главное в таком вопросе - это не ответ, это процесс поиска ответа, проявление мышления человека, составление мнения о нём, но для этого интервьюер должен сам быть не хуже Джоэла Спольски. У нас же это делается безо всякого понимания: правильный ответ - зачёт, неправильный - незачёт, просто потому что такие вопросы задают в Microsoft (Google, ...).
  3. В повседневной работе программист практически никогда не сталкивается с подобными необычными задачами (да и вообще с задачами - это дело постановщиков и проектировщиков, которые охватывают мыслью всю разрабатываемую систему). Единственной вменяемой мыслью рядового разработчика может быть "Интервьюер что, дебил? Какие заправки, какие пианисты?!! Они здесь интерфейс нормальный/многопоточность/валидный XML/другие тривиальные вещи сделать не могут, а задают вопросы как в Microsoft или Google..."
  4. В Microsoft одними из первых начали практиковать Job Interview 2.0 (так это называется на диком Западе), и одними же из первых прекратили (см. avoid brain teaser questions) - они пришли к результату, что люди, которым нравятся подобные головоломки, не всегда являются хорошими программистами, а хорошие программисты не всегда любят решать подобные головоломки (тем более публично, в присутствии незнакомых людей, в чужом помещении, при ограничении времени). Что ещё хуже, некоторым любителям головоломок работать программистом противопоказано. Хотели бы вы работать вместе с человеком, который изобретает заумные механизмы для решения умозрительных задач? Который при каждом удобном случае переизобретает алгоритм сортировки или XML-парсер?

1 комментарий: