Честность на собеседовании: не признавайтесь, что знаете ответ!

0
2104
views

Перевод статьи «Already know the interview code question? Don’t admit it!».

Честность на собеседовании

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

Мой ответ основывается на трех соображениях:

  • Признание в том, что ответ вам известен, ставит вас в несправедливо невыгодное положение (англ. unfair disadvantage).
  • Нет ничего нечестного в том чтобы не признаваться.
  • Я не думаю, что знание ответа вообще на что-то влияет.

Несправедливо невыгодные условия

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

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

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

Это не нечестно

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

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

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

Вопросы на собеседовании это игра случая

Это не имеет значения

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

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

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

Заключение

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

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

ОСТАВЬТЕ ОТВЕТ

Please enter your comment!
Please enter your name here