Подтвердить что ты не робот

Попросить посмотреть код/​​базу работодателя в интервью

Меня попросили написать код/​​дизайн в интервью. Иногда даже для предоставления образцов кода. Очень разумный и очень мудрый (всегда удивляется, когда этого не происходит)

У меня была работа примерно год назад, где код был настолько ужасен, что я бы не поступил на работу, если бы увидел, что мне приходилось сталкиваться с этим раньше. И я не могу сказать вам, сколько ужасных баз данных, с которыми мне приходилось работать.

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

Кто-нибудь сделал это?

Update

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

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

4b9b3361

Ответ 1

Вы можете обязательно спросить. Ответ может быть "Нет", но никто не должен считать это плохим или неуместным вопросом.

Если они не покажут вам код, вы обязательно должны принять это во внимание, когда решите, хотите ли вы принять предложение. Я бы воспринял это как знак того, что по крайней мере одно из следующих утверждений верно:

  • Код настолько ужасен, что они знают, что вы убегаете от крика.
  • У компании есть ультра-секретная культура доверия-никто (которую я бы ненавидел).
  • Компания думает, что у них такой замечательный код, что просто взглянуть на него превратит вас в конкурента суперзвезды. (Другими словами, они сами обманывают идиотов.)
  • У них есть яркие дыры в безопасности, которые они надеются сохранить в секрете.
  • Люди, которые берут интервью у вас, не знают, как получить код самостоятельно. (В этом случае вы не разговариваете с нужными людьми.)

Ответ 2

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

Ответ 3

Я спросил: "Могу ли я увидеть код и поговорить с программистами, работающими здесь?"

Работодатель ответил: "Конечно, вы можете напрямую поговорить с нашим ведущим программистом нашей информационной системы!"

Какая честь!

  • они показали мне концептуальные документы
  • Я мог бы поговорить с ведущим программистом
  • они показали мне небольшую часть очень нового проекта, говорящего: "Это всего лишь прототип, direct3d настолько отрывочный, что этот код настолько грязный"

Оказалось, что:

  • ведущий программист покинул день, когда я приехал.
  • ПО, которым он руководил, был большой беспорядок.
  • каким-то образом я потратил 50% своего времени, борясь с беспорядком

Ответ 4

Никто из кандидатов, с которыми мы беседовали, никогда не спрашивал об этом; однако многие из них были кооперативами/стажерами в компании, поэтому они знакомы с нашим кодом...

Сказав это, маловероятно, что мы покажем наш код ЛЮБОЙ кандидату, независимо от NDA. Я был бы рад ответить на вопросы о том, какие технологии мы используем, какую систему мы используем для пересмотров, практики и т.д. Фактический код? Нет.

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

Ответ 5

Я спросил об этом в интервью с Xerox PARC, стартапом и Yahoo.

В PARC они посадили меня на рабочую станцию ​​с кодом, который я бы взял на себя, если бы наняли, перефразировали структуру кодовой базы очень кратко и оставили меня в покое около 20 минут. Этого было достаточно, чтобы понять, смогу ли я работать с ним, хотя мне понравилось бы больше времени, как всего на час. Позже я спросил о дизайнерском решении, которое казалось сомнительным, и мы поболтали о дизайне и стиле в целом. Это не просто рассказывало мне больше о работе, она рассказывала им больше обо мне: изучал ли я свой код сверху вниз или снизу вверх, что я набирал или спрашивал и т.д. Ценность вокруг.

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

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

Во всех этих случаях я поделился с ними собственным кодом.

Ответ 6

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

Если вы появляетесь в своем первом интервью и говорите, правильно, я могу увидеть код, все, но очень мало людей скажут "нет". И не обязательно потому, что они злы и не хотят показывать вам, а потому, что это просто не так просто, как сказать "да".

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

Если бы меня попросили задать вопрос, я бы сказал, да, вернемся в другой раз, и мы устроим что-то. Я получу надежного разработчика с пола и приведу ноутбук к следующему собеседованию и немного покажу код.

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

Ответ 7

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

Лучше, чем смотреть на фактический код, это Joel Test. В основном это 12 вопросов или нет, которые вы можете задать работодателю. Чем больше ответов да, тем лучше будет рабочая среда. Очевидно, это не сложное и быстрое "правило", но, похоже, это указывает на те компании, которые серьезно относятся ко всем (и кодам).

Ответ 8

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

Ответ 9

Перейдите в проекты с открытым исходным кодом. Там вам не нужно запрашивать разрешение на просмотр кода.

Ответ 10

Не может навредить спросить, и это очень хорошая идея, которую я собираюсь добавить к моему списку вопросов, чтобы спросить работодателей.

Ответ 11

Интересная идея, но я не знаю, сколько компаний пойдет на это. Я знаю, что мы не можем сделать это, где я сейчас работаю.

Я думаю, что самая большая проблема, с которой вы столкнетесь, заключается в том, что я обнаружил, что многие люди обижаются на людей, которые не любят свой код. Это как критиковать кого-то терапевта, просто не очень хорошо быть аутсайдером и делать это. Увидеть код, а затем не выполнять работу, может дать вам репутацию, что вы высокомерны или недостаточно хороши для работы над кодом, и почему вы не выполняли эту работу. Это может спасти вас от работы, которую вы не хотите, но это может дать вам отрицательную репутацию по линии. Я живу в большом городе, но ИТ-люди все еще знают друг друга, а слово распространяется. У людей в нашей области есть эго, и проще избавиться от репутации somoene иначе, чем признать, что код, который вы написали, не соответствует номиналу.

Ответ 12

Даже если бы они показали вам какой-то код, достаточно ли вам прийти к грубейшему выводу о качестве кода, с которым вы бы проводили время? Например, на моем предыдущем месте одним из их продуктов было большое приложение промежуточного программного обеспечения для электронного банкинга. Ядро приложения было на С++ и спроектировано и написано отличным способом. Тем не менее, расширения (которые значительно охватывали значительную часть приложения и его различные версии), которые также были на С++, которые были в основном закодированы менее опытными и менее осведомленными разработчиками, были кучей дерьмового кода (который Мне приходилось иногда исправлять и работать с пиратством или писать с ним), чтобы как-то работать. Если бы я попросил их показать мне фрагмент кода во время интервью, и они показали мне некоторые из основных вещей (код расширения на самом деле в основном содержал клиентскую бизнес-логику, поэтому это не имело бы большого смысла без знание бизнес-домена и т.д.), я бы подумал, что общее качество кода хорошее (что было не совсем так).

Ответ 13

Более важно, чем запрашивать фрагменты кода, я полагаю, заключается в том, чтобы спросить их, какой продукт управления исходным кодом они используют (убегают от компаний, которые отвечают "Visual SourceSafe" ) и какую методологию они используют: "Agile" или "Agile", Scrum "отправляет положительные сигналы, CMMI обычно означает, что компания любит бюрократические процессы, если они дают вам" да? " то вас предупреждают;)

Ответ 14

Я думаю, что это отличная идея; однако, будучи работодателем, я был бы неспособен - даже с помощью NDA - предоставить образцы кандидатского опроса реального рабочего кода, если я не был уверен, что хотел нанять человека.

Ответ 15

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

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