Как стать автором
Обновить

Тестовое с Chat GPT и собеседование с наушником: работают ли чит-коды при трудоустройстве в IT-компанию

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров12K
Всего голосов 13: ↑11 и ↓2+11
Комментарии31

Комментарии 31

Имхо, выглядит так, чтобы лишь бы избежать личной ответственности. Потому, что лично по моему опыту есть лишь два условия: 1-кандидат, работник, может пользоваться чем угодно, лишь бы в рамках УК РФ :) , а так хоть по телефону у мам, пап, дедушек, gpt,.. консультироваться, всё равно все младшие специальности лучше всего обучаются через накопленный опыт при выполнения задач, 2- тут кто-то возразит, -"но ведь в нужный момент он подведёт и не сможет решить какую-нить задачу!", на что я поправляю, подведёт он не кого-то, а своего начальника - меня, значит я за это и несу ответственность и поэтому именно я предусматриваю, составляю договор, графики работ, и т.п. достаточные для выполнения задачи в случае форс-мажора, а с некомпетентным работником можно и расстаться.

Нужно наоборот, требовать и проверять умение соискателя решать задачи с ИИ и прочими ChatGPT.

Вам нужен решатель задач или ходячий справочник? Зачем засорять голову тем, что можно уточнить с помощью пары кликов

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

Это отдельное умение, важная составляющая которого - суметь оценить правильность выданного ии решения.

Соответственно, понимание происходящего должно быть.

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

Один из самых важных навыков это правильно сформировать запрос в гугл.

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

А до этого: можно ли программисту приходить со справочником по языку? Вобщем, сколько профессия существует.

Уже давно с товарищем обсуждаем идею для собеседований. Товарищ теперь тимлид в Сбере, сказал попробует внедрить. Идея такая:
Вместо всех душных вопросов, вместо поворота деревьев и прочих алгоритмов, которые как заметил автор не придется использовать на работе в должности, достаточно провести короткую 40-6 минут лайвкодинг сессию на тестовом проекте
даете соискателю доступ в гит, пусть он при вас
клонирует проект, запускает его по подсказкам из ридми а дальше даете ему одну из типовых тасок придуманных на ходу. Проект может быть простой - пара контроллеров, пара ручек, банальнейшая бизнес логика, база, миграции ну и докер. Можно варьировать в рамках бизнес домена компании.
Например - приложение кошелек, которое имеет простые методы типа Withdraw, deposit, getBalanse итд. Дальше просто просишь сделать новую ручку, или переписать существующую, чтобы она делала что-то по другому.
Будет видно и умеет ли человек с гитом работать и понимает ли структуру приложения и умеет ли читать код и видит ли корнеркейсы и проблемы и глубину познания тоже. Джуну можно простить запись без транзакции, мидл должен знать про пропагации очевидно, можно дать ему задачу на вложенные транзакции.
При этом задачи должны быть элементарные так как проверить нужно в основном умеет ли человек работать, знает ли где кнопки в IDE понимает ли что с чем связывается и как. Не обзательно даже чтобы он задачу закончил при вас и она работала - и так будет ясно буквально всё. А самое главное - количество задач безгранично и никак подготовиться к этому нельзя, не литкод не поможет не слив типовых задач. Ну разе что наушник в ухе, от него не денешься никуда.

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

А зачем тогда существует онбординг по 2 недели (и более)? Ведь в этой сессии вы исходите из того, что собеседуемый уже разобрался в архитектуре проекта. И тогда можно проверить его на реальных задачах. Думаю, что это применимо только в очень небольших нишах - там, где проект небольшой - если у вас условный микросервис на 5 сущностей, его можно окинуть взглядом за 10 минут, то применимо.
В остальных же случаях это будет проваленное собеседование (причем независимо от знаний соискателя) и масса потраченного времени: как вашей фирмы, так и соискателей.

Кстати, комментирование кода это не только признак GPT. Я выработал эту привычку с опытом, поскольку даже тобой написанный код может выглядеть как шифровка через пару лет, если не снабдить его подсказками.

Но ещё лучше, если код понятен настолько, что комментарии и не нужны.

да это так

Это верно, но люди не рождаются с навыком идеального написания кода, а приобретают его постепенно(точнее, приближаются к нему), с опытом.

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

А один раз вообще был эпик фейл у кандидата - делали тестовое по SQL в гугл документе (там это удобно, так как в реально времени видно, что и как пишет человек). Так вот, я формулировку второго вопроса ещё не озвучил, а кандидат уже ответ на него вставил копипастом (видимо кто-то из более ранних кандидатов скинул ему все задания).
Ну, и ещё, если кандидат не "руками" пишет в документе, а где-то там копается-копается, а потом копипастит решение - явно он отправлял задание кому-то, кто ему решал.
После года проведённых собеседований такие вещи сразу уже бросаются в глаза.

Давно так стали делать? В бигтехе работаете?

Согласен со всем кроме первого. Да это сгенерировал ChatGPT. Чат как раз положительно отвечает почти всегда на любое высказывания по типу "это правда что?" По крайней мере так раньше было. Объясню, скиньте код синьора 5 летней давности и спросите - это сгенерировано СhatGPT? И он в 90% ответит что да.

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

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

Сразу встаёт вполне логичный вопрос. А зачем вообще кандидату нужно знать то, что является работой машины, компьютера, нейросети, ИИ — называйте, как хотите? Никто же не просит людей писать машинный код на собесе...

А я вот думаю: если ChatGPT лучше человека отвечает на вопросы, то может с вопросами что-то не то?

Считаю, что это прекрасно, надеюсь, что кто-нибудь выпустит хардварный вариант для прохождения интервью или что-то программное незаметное. Сам проводил лайвкодинги, вяло читая задачу за день до собеседования и, когда кандидат предлагал вариант, в котором я был не уверен, говорил “ну попробуй”. Имея под 500 задач на литкоде, вообще не понимаю, для чего это нужно. Сколько обсуждали, что спрашивают либо то, с чем недавно работали, либо с листочка. Современное интервью — это позор: лайвкодинг, системный дизайн, всякие STAR-системы для ответа на бытовые вопросы — это пиздец, и надеюсь, что языковые модели разъебут эту систему. Говорить, что “а вот наши лайвкодинги даже приятные для соискателя! Мы помогаем, включены, даём даже свою IDE!” Спрашивать C4 на системном дизайне, а потом увидеть, что в реальности даже документации нет. И сами же потом говорят, что пересечений крайне мало, даже давать реально встреченную задачу — сделка с совестью, не более.


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

Подбирать надо по культуре: отношению к технологиям, процессам, командам. Пытаться мягко определить мотивацию человека. Для этого достаточно простого словесного интервью. Найдите общее, прочитанную книгу, доклад, тему, обсудите вглубь. Вкладывайтесь в процессы, в которых распиздяй не выдержит — документация, формальности или наоборот. Ищите инженеров. Потом испытательный срок — насколько человек “тянет”, и даже тут: в одной команде может быть хорошо, в другой — плохо. Для работающих людей можно хоть на пару часов в неделю.

Какое-то не бизнесовое мышление:) предложенный Вами вариант идеалистичен, на такое мало кто согласится. Подбирать по культуре...хотелось бы, но кандидат может быть лапушкой, но настолько неспособным решать задачи и в принципе работать, что просто горько становится, но, увы, за "хорошего человека" не платят+ не забываем про ТК РФ и почему можно отказывать кандидату: культура не равно деловые и прочие качества.

Кажется, что в текущем положении страдает бизнес в равной степени. Лайфкодинг - рак не имеющий ничего общего с работой. Входные фильтры год\технология ещё хуже. Это заставляет читерить даже тогда, когда не хочется. И раз всё равно всё сводится к совокупности того, как человек вписывается в компанию и команду, можно сразу переходить к этому этапу. По поводу ТК, кажется, что он не работает. Кандидатов как-то же набирают в пул без реальных мест, маринуют по несколько недель между каждым этапом, спокойно пишут в офере не оговоренную вилку. Тоже самое касается и Европы.

Возможно:) а Вы пробовали такой вариант у себя в компании? Работает?

Только в стартапе на 7 человек. Работало отлично, потом проект вырос и у руля, к сожалению, встали люди с привычным видением процесса.

Очень странно это и по-детски. Все же мы помним, как детьми выдумывали странные условия достижения результата, вроде "допрыгай на одной ноге до соседней стены". Как будто реально цель — не работать и задачу выполнить. Кого-то там «палите» на использовании инструмента в опытных руках, увеличивающего эффективность. Примите уже, что мир изменился и будет продолжать меняться.

Программисты, использующие GPT, — это отличные сотрудники, которые хотят делать больше за меньшее время. То, что вы там что-то попробовали в работе и у вас не получилось, — это ваши проблемы, что так и не поняли, как пользоваться инструментом, и инструмент от этого плохим не стал.

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

Когда искал сотрудника, так и указал, что может пользоваться чем угодно, главное — выполнить задачу, и дал задание, которое простым копипастом в GPT не решается. А если человек GPT пользуется часто, то уже понимает и какой глубины промпт нужен, и где GPT лучше перепроверять, но это приходит с опытом. Так же, как с опытом вы с реальным сотрудником понимаете, какую задачу ему можно дать, и он её выполнит, а где будет слишком сложно, и он закопается и демотивируется.

Извиняюсь, что не по теме, но меня немного припекает от того, что алгоритмы красно-черного дерева не пригодятся, но спрашивают про них. Неужели нельзя сформировать список из 50-100 вопросов из технологий, с которым непосредственно будет работать специалист и задавать часть из них?

А калькуляторами можно пользоваться? Или только на бумажке в столбик, чтобы было ясно, что соискатель понимает основы арифметики? Мы у себя на работе пытались пользоваться калькулятором, но задачи настолько нетипичные, что все равно потом на бумажке в столбик пришлось  пересчитывать, так что выигрыш по времени никакой.

У меня большая часть информации, которую я выучила для собеседований, не пригодилась на работе. Представляете, вы приходите на проект, на котором нет код ревью, нет паттернов проектирования, никто не парится на счёт оптимизации, вам дают задачу что-то там переписать в криво-косо написанном коде и у бизнеса сроки горят, от скрама тоже ничего нет, дейлики каждый день по 1-1,5 часа, поэтому остаётся копаться в этом мусоре в полном одиночестве, т.к. на проекте нет лидов, которые взаимодействуют с кодом. И это банк. Не читерство на собеседованиях превратит ваше приложение в легаси, а такие вот процессы в первую очередь

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

Ну так мы их и не поймали — значит, они были умнее или повезло.

Так выстрел в колено или лайфхак?

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации