Я ищу работу и подал заявку на ряд вакансий. Один работодатель ответил. У меня было довольно длинное телефонное интервью (возможно, час +), и они тогда устроили мне тест разработчика. Мне сказали, что, по оценкам, тестирование займет от 6 до 8 часов и что, если результаты встретятся с их одобрением, мне будут платить за мою работу.
Это заставило меня задуматься, но я постарался. Тест разработчика проходил на виртуальной машине, доступ к которой осуществлялся через RDP . Задача состояла в том, чтобы реализовать страницу поиска в веб-проекте, который запрашивает данные с сервера, отображает их на экране в таблице, имеет довольно сложную схему фильтрации поиска (имеется около 15 состояний, и при отправке поиска на сервер вы можно искать по этим статусам) в дополнение к поиску строки / поля. Кроме того, они хотят, чтобы значки SVG меняли цвет при определенных значениях данных, а некоторые данные представлялись не так, как их структура в базе данных.
Короче говоря, это заняло намного дольше, чем 6-8 часов. Во многом это произошло из-за очень плохой виртуальной машины, на которой я работал (загрузка Visual Studio 2013 заняла 10 минут, и еще 15 минут, чтобы открыть гигантское решение на 3 ГБ).
Мне сказали, что после завершения теста я должен передать свои изменения в систему контроля версий ... Хм, хорошо. Я следовал указаниям. И после внесения изменений мне прислали ответ. SVG не были правильно окрашены, была ошибка в этом крайнем случае, была случайная проблема с этой другой вещью, с которой я никогда не сталкивался, и т. Д. Итак, сейчас у меня 13-14 часов, и я должен исправлять ошибки Я делаю их, и работодатель возвращается с большим количеством запросов на исправление ошибок.
Вся моя работа, по-видимому, уходит в производственное приложение. Я заметил несколько аномалий в коде, когда казалось, что другие закодировали все одну функциональность, но больше ничего не коснулись.
Меня просто используют для дешевой рабочей силы? Даже если они платят мне обещанные 50 долларов в час в течение 6 часов, я посвятил этому около 18 часов сейчас. Если я исправлю все, что они продолжают придумывать, я проработаю как минимум 16 часов бесплатно.
Я прошел ряд тестов для разработчиков, но никогда не брал ни одного, во время которого я работал над кодом, предназначенным для производства. Я никогда не проходил тест, в котором реализовывал функцию, которая находилась в процессе разработки, и я никогда не брал тест, который занимал 4 раунда и в общей сложности более 20 часов. У меня сложилось впечатление, что они используют свой тест разработчика, чтобы выставить некоторые функциональные возможности по дешевке.
У меня неправильное впечатление? И подходит ли этот протокол тестирования?
Ответы:
Я бы никогда не стал участвовать в тесте кода такого рода. Я прошел много тестов кода и сделал много проектов кода. Я бы ни за что не проверял код в чужом репозитории. Если они не знают, что им нужно знать после 4-часовой выборки с незначительными исправлениями ошибок в сеансе парного программирования, они никогда не узнают.
Вступая в тест, вы должны знать и прояснить несколько вещей заранее:
Компания, с которой вы беседуете, также дает вам интервью. Если это то, как они обращаются с кем-то, у кого они берут интервью, то на какую компанию вы хотите работать? Я понимаю, что часто у людей возникает потребность в работе, и часто эта потребность переопределяет некоторые концепции здравого смысла, но это всегда должно быть в центре вашего внимания. Не бойся выходить. Если это не так, следуйте своим инстинктам и голосуйте ногами.
источник
Многие интервью сопровождаются тестами. Эти тесты необходимы для того, чтобы убедиться, что у вас действительно есть необходимые навыки, и чтобы лучше понять некоторые вещи, которые сложно протестировать во время самого интервью (например, применяете ли вы правила стиля к своему коду).
При этом тест - это тест.
Это не должно быть долго. После восьми часов кодирования вы мало что можете увидеть, чего не видите через тридцать минут. Что еще более важно, код, написанный во время теста, должен затем проверяться, строка за строкой, что занимает значительное количество времени . Нет ничего необычного в том, чтобы тратить больше двух часов на проверку кода теста, написанного в течение получаса.
Это не должно иметь дело с существующей кодовой базой. Понимание кодовой базы продукта среднего масштаба может занять дни или недели (или месяцы или годы в зависимости от качества кода и технической задолженности). Интеллектуальная собственность также может быть проблемой (если код не является открытым исходным кодом).
Когда цель состоит в том, чтобы проверить, как кандидат может поддерживать существующую кодовую базу, тест может быть выполнен на небольшой (500-600 LOC) вымышленной кодовой базе, написанной специально для тестов.
Это не должен быть запрос на разработку реального приложения или функции. Это может быть совершенно бесполезный кусок кода, написанный с единственной целью показать, что вы поняли проблему и нашли элегантный способ ее решения.
Это не должно быть идеально. Есть ошибки? Все в порядке. Запишите их для дальнейшего собеседования с кандидатом; это может быть отличной возможностью увидеть, как кандидат реагирует в этой ситуации.
Это не обязательно делать через RDC на виртуальной машине, если только у вас нет Visual Studio. Если цель состоит в том, чтобы увидеть свои навыки кодирования и решения проблем, не имеет значения, где вы выполняете упражнение.
Не подлежит сомнению, что код, написанный во время этого теста, попадет в систему контроля версий компании. Почему они загрязняют свой контроль версий чем-то, написанным кандидатом?
В заключение, когда вас просят потратить десятки часов на написание производственного кода, устранение ошибок и передачу вашей работы в управление версиями компании:
Либо они просто используют вас для реализации функций бесплатно,
Или они действительно не понимают, как сделать интервью.
В обоих случаях ищите лучшее место для работы.
источник
Не собираюсь писать длинный ответ, но я серьезно смущен, почему никто не поднимает вопрос об авторском праве?
Что касается моего опыта, я никогда не слышал о соглашении о передаче права собственности на код, написанный во время тестирования разработчика, другой стороне. Если это так, вы можете подать на них в суд за нарушение авторских прав, и ущерб, присужденный за это, может быть весьма приятным, особенно в США из историй, которые я слышал. И если они хотят урегулировать (предложите это), вы можете попросить любую непомерную плату за нарушение (после чего им в принципе все равно не разрешат использовать вашу работу, и вы все равно можете продать свою работу им, если они все еще будут заинтересованы ).
источник
Люди с большим опытом работы могут лучше ответить на этот вопрос, но лично мне было бы не очень комфортно с 20-часовым тестом разработчиков. Похоже, они используют интервью для выполнения рабочих заданий.
Я предполагаю, что вы не подписали никаких юридических документов, касающихся права собственности на код. Поэтому я бы подождал, пока они не пересмотрят код и не примут или не отклонят его. Тогда, если бы они приняли это, я попросил бы заплатить за полный рабочий день, 20 + часов. Я не уверен, что возьму оплату только за шесть часов, которые были первоначально предложены. Если это пойдет в производство, то им нужно будет уточнить владение кодом.
По крайней мере, обсуждение оплаты за код должно помочь вам решить, хотите ли вы принять предложение. Я не хотел бы принимать предложение, если бы они считали, что платить тебе за шесть часов - это справедливо.
источник
Когда я был в состоянии взять интервью у разработчиков, эти тесты были короткими и просто «прошли или не прошли», без исправления ошибок, даже если в коде было несколько незначительных ошибок. Это потому, что я хотел оценить навыки кандидата, а не получить готовый программный продукт.
Описанная в вопросе ситуация выглядит очень похоже на то, что кто-то пытается получить что-то полезное бесплатно (или дешево).
источник
Я никогда не проводил тест разработки более часа, и все это были «загадки», часть работы, чтобы посмотреть, смогу ли я решить проблемы и достичь поставленной цели в течение определенного периода времени.
50 долларов (или мне 25-30 фунтов) - это довольно плохая дневная ставка, это все равно что просить сантехника починить твой туалет в обмен на выпивку.
Мой недвусмысленный совет - вести блог о вашем опыте, ссылаясь на название компании в случае, если они пытаются создать целое приложение с помощью этой техники (люди часто посещают компании в Google, прежде чем отправиться на собеседование), и не позволяйте это случилось снова. В следующий раз, когда они попросят исправить ошибку, вы называете дневную ставку консультанта (как минимум в 5 раз больше, чем они предлагали) и сообщаете, что разработчики не будут работать бесплатно.
К сожалению, быть обманутым - это часть жизни, но вам не нужно сидеть сложа руки и принимать это.
источник
Просто для сравнения: собеседование на мою нынешнюю работу было около 1 часа, в котором говорилось о том, что я уже сделал, и о том, что компания собирается делать, и как я вписался. После этого мы работали вместе неделю над небольшим проектом, который они лгали Я думаю, просто чтобы посмотреть, как мы ладим друг с другом. Они заплатили мне за это как фрилансеру ту же сумму, которую я сейчас получаю, как и их сотруднику, поэтому не было полного дня неоплачиваемой работы, не говоря уже о 3 днях.
Если код действительно используется в производстве, я отправил бы им счет за 24 часа, которые вы потратили, а не по вашей вине, если их оценки неверны. Предполагая, что они не позволили вам оценить, сколько времени это займет.
источник
Хотя якобы вам платят (частично) за вашу работу, это не похоже на пробный проект , это звучит как афера, чтобы получить дешевую / бесплатную работу от вас. Может случиться так, что он был задуман как пробный проект, но не очень хорошо структурированный или управляемый.
Но управление, настолько плохое, что это звучит как мошенничество, - это определенно то, что вы должны принять во внимание при принятии решения, брать на работу или нет.
Надлежащий пробный проект должен прояснить, что
Условия должны быть приемлемы для вас независимо от того, наняты ли вы - если условия приемлемы только в том случае, если они идут с полной занятостью, они не являются действительно приемлемыми.
источник
Я не думаю, что они действительно использовали бы это, чтобы получить дешевую рабочую силу.
Причина проста. После того, как вы напишете эти тесты, им понадобятся люди, чтобы просмотреть то, что вы пишете, да, обзор кода гораздо проще, чем написание самого кода, но он все еще занимает много времени.
И затем после этого им, вероятно, понадобятся люди, чтобы поддержать эти тесты, объяснить их и т. Д.
И я просто не могу представить ни одну ИТ-компанию, которая бы заботилась о том, чтобы сэкономить менее 100 долларов, особенно компании в США. Это никогда не так, как бизнес работает.
источник
Я большой сторонник тестов кода для разработчиков, берущих интервью для работы. Тем не менее, это звучит как тест кода из ада ... Тесты кода никогда не должны включать производственный код. Они должны быть простыми и должны указывать, что ни одна из проделанных работ не будет использоваться компанией.
Очевидно, что вы работали над производственным кодом. Вам нужно платить за все ваше время - как минимум. Попробуйте поговорить с адвокатом и посмотрите, считает ли он, что стоит подать на них в суд. Многие адвокаты предлагают бесплатные первичные консультации. Если было совершено мошенничество, и в этом случае оно выглядит таким образом, вы имеете право на четырехкратный денежный ущерб, и вы также можете получить хорошие штрафные убытки в дополнение к этому.
Подавая в суд на них и выигрывая, вы будете делать некоторые заголовки и препятствовать этой практике в будущем, что будет полезно всем разработчикам программного обеспечения, ищущим новую должность.
источник
Тесты кодирования - это, к сожалению, факт жизни. Тем не менее, меня беспокоит то, что меня попросили пройти четыре часа на тесте на кодирование как условие получения моего первого показа на телефоне. Несправедливо просить кандидата инвестировать так много, когда компания так мало вкладывает в отношения.
Я старший разработчик, и я могу пройти тест на кодирование. Но я не буду тратить на это кучу времени, пока компания не проявит ко мне личный интерес. Как правило, я не заполняю заявку в какой-либо компании с большой, плохо написанной онлайн-формой заявки, которая просит меня повторно ввести свое резюме, чтобы их плохо написанный робот мог испортить поиск по ключевым словам. Я, как правило, не согласен проходить тест на кодирование, если он не будет кратким, или они смотрят его вживую и разговаривают со мной.
Даже если они не внедряют ваш код в производство, компания, которая хочет, чтобы вы потратили много времени на печатание, прежде чем узнаете, подходит ли вам она, - это компания, которой удобно воспользоваться вами. Они сигнализируют, что они хотят, чтобы их отношения были; Вы - обезьяна кода. Они называют выстрелы. И их процесс интервью предназначен для поиска людей, которые чувствуют себя комфортно в этих отношениях.
Не будь обезьяной кода. Уходи.
источник