Просить соискателя показать какой-то код - довольно распространенная практика для софтверной компании. Однако допустимо ли для кандидата попросить интервьюера показать ему небольшой фрагмент кода, который он считает хорошо написанным?
interview
code-sample
Саймон Бергот
источник
источник
Ответы:
Я всегда прошу посмотреть код по нескольким причинам:
И тогда есть еще несколько побочных эффектов:
Компании, которые соглашаются показывать вам код, вряд ли просто отправят мне архив исходных файлов, содержащих последнюю версию всего кода, по очевидной причине. Если они покажут мне какой-либо код, они сделают это в форме небольшой демонстрации, и это здорово: это означает, что я могу поговорить с одним из моих потенциальных коллег, это позволяет мне задавать больше вопросов об их культуре кодирования, процессах, и codebase, и в идеале это поможет начать профессиональную дискуссию, в которой я смогу продемонстрировать навыки и знания и узнать больше о рабочей среде. Это также означает, что я могу посмотреть на инструменты, которые они используют, что также довольно проницательно - например, если проект, который они мне показывают, сильно зависит от конкретной IDE, это означает, что все используют это, что может быть хорошим или плохим. И наконец,
источник
Я полагаю, что это относится ко всей «собеседованиям - это двунаправленная» мантра, но я не ожидал, что получу их. Проблемы с интеллектуальной собственностью являются наиболее очевидной проблемой после того, как в комнате для собеседований нет компьютера, и привести вас к нему довольно неловко.
Кроме того, они просто собираются выбрать наиболее привлекательный и наименее значимый код. Лучший код на самом деле не проблема, худший. По той же причине получение примеров кода от кандидатов практически бесполезно.
источник
Вы можете спросить, что вы хотите, но:
Вы, вероятно, не получите это.
Если вы это получите, это не скажет вам ничего полезного. Если 10% их кода красивы, а остальное спагетти, вы все равно будете иметь дело в основном со спагетти.
Вы будете казаться умными штанами. Это не большая помощь, если вы в конечном итоге решите, что хотите работать там.
Это пустая трата драгоценного времени на собеседование.
Есть лучшие способы узнать то, что вы хотите знать. Задайте такие вопросы, как:
источник
Смотря как. Мне всегда нравилось знать, где я собираюсь работать.
Я считаю собеседование на работу двунаправленным. Компания узнает о вас, а вы узнаете о компании. Запрашивать код может быть немного много, но задавать вопросы, связанные с разработкой, должно быть нормально.
Например, я не согласился бы на работу, в которой компания не использует гибкие методы или TDD или не планирует внедрять и поощрять такие практики. Я также ценю, когда компания гордится своим продуктом и своим кодом - когда кажется, что интервьюер ждет, когда вы попросите его посмотреть, у него есть повод объяснить все классные вещи, которые они делают.
источник
Ха-ха, это забавный вопрос. Я бы не обиделась, если бы кто-нибудь попросил у меня пример кода во время собеседования, но, вероятно, я бы тоже не показал им какой-либо код, если бы они не спросили заранее, и у меня не было времени тщательно спланировать.
Я определенно понимаю намерение задать такой вопрос, хотя. Как ищущий работу, я уже спрашивал у Джоэла Тест у интервьюера. Они не знали, что это было, но они были рады ответить.
В некоторых местах, задавая такие вопросы, вы можете повысить свои шансы, в то время как это может повредить вашим шансам в других местах. Прелесть жизни в том, что если это повышает ваши шансы, то именно в таком месте вы бы хотели работать. Если это повредит вашим шансам, то вы все равно не захотите эту работу.
Я не вижу ничего, что можно было бы потерять, вежливо спросив и объяснив, почему вы хотите это увидеть.
источник
Я задавал этот вопрос в двух моих интервью, где они утверждали, что у них есть старшие разработчики, мигрирующие на asp.net mvc3 или 4, или когда они сказали, что хотят комментировать код. Я отказался в обоих случаях из-за отсутствия их знаний о действующем стандарте кода. Единственный стандарт, который я нашел, был, если это работает, скопируйте и вставьте это, и это будет работать. Я не буду задавать этот вопрос, если я делаю новый проект или мне приходится писать фрагмент кода, независимый от других членов команды. Я обязательно увижу код, если меня нанимают для исправления существующего программного обеспечения или функции, и я не скажу да, если не знаю ответа. Предположим, вы не спрашиваете, и они говорят, можете ли вы исправить дату выбора, чтобы начать с сегодняшней даты. Когда вы смотрите на унаследованный код, вы не видите jquery или jquery ui, а пользовательский инструмент выбора даты, в котором все даты хранятся в файле xml, и каждую ночь запускается задание cron для обновления в нем будущих месяцев. Это вызвало бы головную боль, так как код для достижения этого меньше, чем слова в этом примере. Если вы собираетесь работать над их кодом, попросите его посмотреть. Не спрашивать - это все равно, что указывать на работу, полагая, что клиент сказал, что она маленькая. Он мог бы иметь 20 акров земли, и садоводство на его 1 акре для него невелико, но Гарднер не может брать 50 фунтов только потому, что все его небольшие работы начинаются с 50.
источник
Я склонен работать в компаниях, где по крайней мере часть их работы имеет открытый исходный код, поэтому найти примеры кода тривиально. Я выясняю, кто работает в компании, а затем выясняю их онлайн-ручки. Поскольку люди, как правило, используют одно и то же псевдоним снова и снова, легко найти, где они зафиксировали код, были ли они на Github, Bitbucket или где-то еще полностью.
В моей нынешней компании есть тонна кода, размещенного на Github, поэтому было легко увидеть, с чем они работают, насколько велика их база кода и что, по-видимому, больше не представляет интереса.
Я бы никогда не попросил образец, просто потому что они покажут вам лучший код, который у них есть. Это не тот код, с которым вы будете работать. Вероятно, он находится в колоколе в запертой комнате. Вы будете работать с грязным кодом, с которым приходилось сталкиваться многим.
источник
Это здорово, если ты сможешь получить это. Иногда это невозможно без соглашений типа NDA, но всегда полезно попробовать. Чтобы увеличить ваши шансы, дайте интервьюерам знать, что вы хотите этого заранее (пару дней), чтобы они могли что-то вспомнить.
источник