Здравствуйте, Ikemefula, Вы писали:
I>Гугл говорит про "structured behavioral interviews". И вот "разворот списка" при правильном применении идеально вписывается в этот подход. Скажем если ты ждешь результата "написал — не написал", то лучше вообще собеседование не проводить, а брать только по резюме и рекомендациям.
Вообще при формальном, буквальном применении "structured behavioral interviews" результат будет такой же как и с гномиками.
G>>Мы выяснили, что головоломки — пустая трата времени. Они не могут ничего предсказать, и в процесс собеседования включены только для того, чтобы дать возможность интервьюеру почувствовать себя умнее
G>>Вот оказывается для чего все эти 23-летние сеньоры задают шандарахнутые вопросы про гномиков и разворот списков.
I>Разворот списка это _не_ головоломка, а в стате говорится именно про головоломки.
Зависит от контекста.
Если берут человека кодить webui или приложения для Андроида, то это будет головоломкой.
Здравствуйте, Ikemefula, Вы писали:
I>Здравствуйте, gandjustas, Вы писали:
НС>>>Разворот списка, по сути проверяющий понимание концепции указателя не имеет отношения к работе?
G>>Чаще всего да. G>>Если делается низукоуровневый код на C, то задача может быть релевантна. Если используется ЯВУ, то правильный ответ всегда List.Reverse, все остальное является плюсом, только если кандидат умеет успешно пользоваться List.Reverse.
I>В сложных проектах часто встречаются структуры отличные от List. Например всевозможные оптимизации или сложные структуры навроде списковых, графовых, древовидных и тд. Здесь уметь всякие преобразования и обходы крайне необходимо.
Тебе лично сколько раз приходилось писать разворот списка в настоящем проекте?
Вот мне ровно 0. Думаю подавляющему большинству посетителей форума — также.
Здравствуйте, gandjustas, Вы писали:
G>Тебе лично сколько раз приходилось писать разворот списка в настоящем проекте? G>Вот мне ровно 0. Думаю подавляющему большинству посетителей форума — также.
Да причем тут это? Есть большая толпа что хочет крутую зарплату. Ка прикажешь их отсеивать? По сути для работы пофиг кого брать.
Здравствуйте, Vzhyk, Вы писали:
G>>Тебе лично сколько раз приходилось писать разворот списка в настоящем проекте? G>>Вот мне ровно 0.
+0 — в смысле мне тоже ни разу
V>Есть большая толпа что хочет крутую зарплату. Ка прикажешь их отсеивать?
То есть если человек не знает КАК, то можно запросто взять любую дебильную, но "официальную" методику и ею прикрывать собственную некомпетентность, так штоле?
V>По сути для работы пофиг кого брать.
Вот именно, что gandjustas и говорит. Нет смысла во всех этих обезьяньих ужимках и жалких попытках "чисто теоретически" отсеивать людей. ОСОБЕННО когда приходят люди с приличным опытом, а им выкатывают ушат "головоломок", маразм которых просто никак не сопоставим с его практической работой.
При всех равных (опыт, разнообразие задач, кругозор), брать надо просто первого понравившегося кандидата — да, именно "личный фактор". Потому что если ты в ИТ хотя бы 10 лет, ты уже заслужил быть прогером и не хуже других сможешь решать задачи (тем более, как правило это делается в команде). А вот найти человека, с которым тебе приятно будет работать — вот это действительно проблема! И решать её — не ссыкухе из HR, а непосредственно твоей команде (даже не боссу).
Здравствуйте, herethere, Вы писали:
H>Вот именно, что gandjustas и говорит. Нет смысла во всех этих обезьяньих ужимках и жалких попытках "чисто теоретически" отсеивать людей. ОСОБЕННО когда приходят люди с приличным опытом, а им выкатывают ушат "головоломок", маразм которых просто никак не сопоставим с его практической работой. H>При всех равных (опыт, разнообразие задач, кругозор), брать надо просто первого понравившегося кандидата — да, именно "личный фактор". Потому что если ты в ИТ хотя бы 10 лет, ты уже заслужил быть прогером и не хуже других сможешь решать задачи (тем более, как правило это делается в команде). А вот найти человека, с которым тебе приятно будет работать — вот это действительно проблема! И решать её — не ссыкухе из HR, а непосредственно твоей команде (даже не боссу).
это ты мне рассказываешь? Это моим оппонентам расскажы.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>>>Разворот списка, по сути проверяющий понимание концепции указателя не имеет отношения к работе? G>>Чаще всего да.
НС>Ясно. Лично нам такие программисты не нужны.
Беда в том, что они сплошь и рядом. Про List.Reverse знают, как работает — их не интересует, а для суммы арифметической прогрессии ищут класс ArithmeicProgression, а не найдя — встают в тупик и постят запросы в форум.
Здравствуйте, Pavel Dvorkin, Вы писали:
PD>Беда в том, что они сплошь и рядом. Про List.Reverse знают, как работает — их не интересует, а для суммы арифметической прогрессии ищут класс ArithmeicProgression, а не найдя — встают в тупик и постят запросы в форум.
Ну и понимают, что это смешно и программируют "бедную формулу". Но каково возиться в говне(коде), когда вместо reverse начинают фантазировать различные извращения.
Здравствуйте, Ikemefula, Вы писали:
I>В сложных проектах часто встречаются структуры отличные от List. Например всевозможные оптимизации или сложные структуры навроде списковых, графовых, древовидных и тд. Здесь уметь всякие преобразования и обходы крайне необходимо.
Да не в этом вовсе дело. Если бы были интересны какие то алгоритмы по графам, это еще полбеды. Но разворот списка выбран потому алгоритм прост как 3 копейки. Т.е. проверяется даже не алгоритмика, а способность моска понять концепцию ссылки. И если человек даже это не способен понять, то программист из него как из говна пуля.
Здравствуйте, gandjustas, Вы писали:
G>Тебе лично сколько раз приходилось писать разворот списка в настоящем проекте?
А ты лично можешь этот разворот написать?
G>Вот мне ровно 0. Думаю подавляющему большинству посетителей форума — также.
И? К примеру, мне несколько раз приходилось топосорт писать, далеко не во всех платформах он стандартный имеется. В дотнете, к примеру, его нет. Только если дать задачку на топосорт, то уже требуется знание хоть и простенького, но уже не тривиального алгоритма, а вот это как раз уже значения особого не имеет — можнооткрыть педивикию и почитать.
Поэтому, естественно, задачка сильно проще того, что приходится писать в реальном коде.
Или ты думаешь что человек, не справившийся с разворотом списка, топосорт при этом легко напишет? Опять же, а как проверять знание азов программирования? Твои варианты задачек на отсеивание полных нулей какие?
Здравствуйте, herethere, Вы писали:
H>То есть если человек не знает КАК, то можно запросто взять любую дебильную, но "официальную" методику и ею прикрывать собственную некомпетентность, так штоле?
1) Считаешь ли ты человека, который не в состоянии написать разворот списка, способным работать программистом?
2) Предложи недибильную методику
3) Когда задачка на разворот списка успела стать официальной методикой?
V>>По сути для работы пофиг кого брать. H>Вот именно, что gandjustas и говорит.
gandjustas давно уже код не пишет, так что непонятно что он пытается доказать.
H>При всех равных (опыт, разнообразие задач, кругозор), брать надо просто первого понравившегося кандидата — да, именно "личный фактор".
При десятке кандидатов в день и необходимости отобрать одного — ьты только этим и будешь заниматься, причем пару месяцев минимум, как показывает практика.
H> Потому что если ты в ИТ хотя бы 10 лет, ты уже заслужил быть прогером
Предлагаешь ввести выслугу лет? Сдается мне, не ту ты профессию выбрал.
H>И решать её — не ссыкухе из HR, а непосредственно твоей команде (даже не боссу).
Ага, вся команда, вместо того чтобы делать продукт, будет несколько месяцев заниматься наймом нового человека. Спасибо, насмешил.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Ну а ты как задачу это решил бы в реальном коде, а?
reverse. И только после того, как профилирование показало бы облом, начал бы чего фантазировать (для начала читать).
Но, я древний программист с опытом 20 лет, на таких дряхлых ориентироваться глупо и не эффективно, так что я не показатель.
Современный мир требует другого — много кода и быстро.
Здравствуйте, gandjustas, Вы писали:
G>Кстати в конце статьи описан новый подход гугла к найму, который так не нравится многим программистам, верящим в свою уникальность.
Я вот не понимаю, откуда вообще все эти дебаты? Лично мне на собеседованиях уже довольно давно вообще не задавали технических вопросов... Когда я собеседую кандидатов к себе в команду, то в первую и самую главную очередь пытаюсь понять, сумею я сработаться с человеком или нет, и посему мои вопросы направлены именно на выяснение этого факта, т.к. я не смогу нормально работать в команде с человеком, у которого проблемы с коммуникацией, будь он хоть самым распрекрасным гением.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Как это оправдывает того, кто эту задачу решить не в состоянии?
Нет таких людей, кто окончил ВУЗ по технической специальности (кроме варианта купил диплом).
Здравствуйте, Vzhyk, Вы писали:
НС>>Как это оправдывает того, кто эту задачу решить не в состоянии? V>Нет таких людей, кто окончил ВУЗ по технической специальности (кроме варианта купил диплом).
Здравствуйте, gandjustas, Вы писали: G>Вот оказывается для чего все эти 23-летние сеньоры задают шандарахнутые вопросы про гномиков и разворот списков.
Ну гномики понятно, а списки то тут причем?
PS
В одной презентации Линус Торвальдс называет всех работников гугла некомпитентными.
Вот я бы лучше узнал, как бы он проводил собеседования.
А то, что до гугла вдруг доперло, что программист должен решать задачи, так этого следовало ожидать.
Все взрослеют же.