Есть ли официальное исследование эффективности вопроса FizzBuzz? [закрыто]


23

Увидев сегодня этот вопрос о вариации вопроса об интервью FizzBuzz, а также увидев другие связанные с ним вопросы, я должен спросить: есть ли какое-либо официальное исследование того, насколько это эффективно в качестве техники интервью? Есть много людей, которые говорят, что это отфильтровывает некоторый сумасшедший процент кандидатов (95% + в некоторых случаях), но насколько это хорошо для поиска хороших программистов / разработчиков?

Было проведено некоторое исследование, которое показывает, что мягкие навыки могут быть лучшими показателями, чем трудные навыки для выбора хорошего кандидата на работу. Кроме того, могут быть некоторые промежуточные причины, по которым многие кандидаты не проходят этот тест (нервозность, мысль «это трюк» и т. Д.).


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

Кроме того, я укажу, что анализ эффективности FizzBuzz - это то, что может быть полностью выполнено количественно. Это не похоже на взгляды на «пригонку» или «страсть», которые сильно различаются и крайне ненаучны (но все же весьма важны для новых решений о найме).



16
Я не хотел бы нанимать кандидата, который не может кодировать FizzBuzz, нервничая.
Эрик Уилсон

Это не то, на что указывает ваша ссылка. Это указывает на то, что у тех, кто нанят, есть высокий уровень отсева. Но у него нет абсолютно никаких данных о тех, кто был отклонен. Для меня это означает, что компании, вероятно, делают хорошую работу по отсеиванию нетехнических людей (так как это было в центре их интервью), которые не могли выполнять работу, но им нужно сделать дополнительную фильтрацию для людей, которые отказываются учиться или отказываться вести себя хорошо как члены команды
Мартин Йорк,

2
@JMG: Вы должны быть более точными (обратное, что именно). Если они не могут выполнять техническую часть работы (Hard Skills), почему вы думаете, что у них есть шанс? Если вы нанимаете людей, которые по определению не могут выполнять работу, для которой они наняты, не думаете ли вы, что отсев составит 100%. В наших процессах собеседований у нас есть специальные разделы, чтобы посмотреть, подойдет ли кандидат для команды и компании. Но независимо от того, насколько они нам нравятся, нет смысла нанимать человека без навыков кодирования.
Мартин Йорк,

3
Так что в ответ на if their hard skills was weighted more evenly with their soft skills. Нет . Трудный навык будет одним фильтром. Мягкие навыки - это дополнительный фильтр. Это не тот случай, когда вы можете иметь, A or Bвы должны иметь A and B. Именно так я читаю статью, на которую вы ссылались. Они уже отфильтровали для A, они просто плохо отфильтровали для B.
Мартин Йорк,

Ответы:


14

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

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

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

  1. нанять людей, которые не проходят ваш собеседование,

  2. не говорите своим коллегам, которые прошли, а кто нет, и

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

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

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

Так что, хотя я не видел конкретных исследований FizzBuzz, это такая вещь, которая может показать эффективность в научных исследованиях. Если он отфильтрует 95% кандидатов, мне будет любопытно, почему - это было изобретено настолько нелепо, что пропустить его мог только некомпетентный программист, и трудно понять, как обмануть FizzBuzz. Интересно, какой процент проходит тест "Hello world"? Тест «заставить компьютер что-то делать, что-нибудь»?


+1 Вот почему я задаю вопрос: найм по своей сути очень ненаучен, но эффективность FizzBuzz можно, по крайней мере, проверить количественно.
joshin4colours

@psr: По моему опыту интервьюирования новых выпускников в США, BSCS или MSCS, около 90% из них не могут программировать. Зачем? Потому что у учреждений есть финансовый стимул держать их в программе, оплачивая обучение.
Кевин Клайн

1
@kevin cline: Вроде бы не по теме, но в моем MSCS я не думаю, что они были сосредоточены на результатах. Тем не менее, они были чрезвычайно заинтересованы в том, чтобы отличить себя как академическую программу от профессиональной школы, и поэтому многие профессора смотрели свысока на простое программирование, а не, скажем, доказывали действительно незначительные вещи о машинах Тьюринга.
PSR

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

@Charles E. Grant - я понимаю FizzBuzz - на самом деле я использую подобные вопросы во время интервью (хотя большинство проходит мимо). Я был в основном реагирует на «мягкие навыки могут быть показатели , чем жесткие навыки» (так в оригинале), который я бы прочитал соответствующие исследования для, и в исследовании мягкие навыки помогли в интервью, но не может быть показано , что помощь на работе. Или, точнее, интервьюеры не могли определить кандидатов, которые были бы эффективными на работе, если они пытались идентифицировать их на основе мягких навыков.
PSR

33

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

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


2
Но что делает «плохого» программиста? Хотели бы вы, чтобы кто-то был замечательным программистом, но удалял все внесенные изменения в «свой» код проекта? Или кто-то, кому может понадобиться небольшая помощь при переходе с C на Java, но он полностью посвятит себя проекту?
joshin4colours

4
@JMG: есть школа мысли, которая сообщает нам: «Вы тоже не хотите». Если у них есть некоторые вредные привычки, как у последнего, то «Нет найма»; если у них нет общих, но нужных навыков «без найма». Если в кандидате есть что-то, что заставляет вас сомневаться в том, чтобы нанять его для этого проекта «Без найма»
SingleNegationElimination

@TokenMacGuy Полагаю, что школу, хотя и следует называть школой «
Ближайшее

@ Карл, можешь включить это обратно в свой ответ?

5

FizzBuzz не о выявлении хороших программистов, а об устранении плохих / мошенников. Если кандидат не может пройти тест FizzBuzz, он не знает, как программировать, и не должен претендовать на должность программиста.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.