ChatGPT-4 прошёл собеседование в бэкенд ЮMoney лучше, чем программист с трёхлетним стажем

Но на работу мы его всё равно не взяли. 😉 Рассказываем, как собеседовали в ЮMoney робота-инженера и какое из заданий он сделал на уровне мидл-разработчика. При этом ИИ обошёл реального кандидата Юрия, который утверждал, что у него три года опыта, а на самом деле оказался джуном.

ChatGPT-4 прошёл собеседование в бэкенд ЮMoney лучше, чем программист с трёхлетним стажем

Типичное собеседование в отдел бэкенд-разработки ЮMoney выглядит так:

  • 5-10 минут мы общаемся с кандидатом на отвлечённые темы, обсуждаем опыт соискателя, разогреваем его.
  • 25 минут длится практическая секция I — кандидат шарит свой экран и пишет код в редакторе в режиме реального времени.
  • 35 минут занимает практическая секция II — даём кандидату задание посложнее.
  • 15 минут обсуждаем практическую секцию.
  • 30 минут длится теоретическая секция.

В итоге собеседование с одним кандидатом длится два часа без перерывов. Если он успешно справляется со всеми заданиями, мы решаем, нанимать его или нет.

Во время собеседования мы оцениваем:

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

Какой кандидат может пройти собеседование в ЮMoney

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

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

А теперь десерт: рассказываем, как справился с тестовым ChatGPT-4

Тестовых задания было три. В первом мы попросили ChatGPT рассчитать величину кэшбэка — фиксированный процент от суммы всей покупки.

Пример:

  • Общая сумма заказа — 100 рублей.
  • Процент кэшбэка — 2%.
  • Сумма кэшбэка составит 2 рубля (100*0,02).

Это было суперпростое задание, не боевое. Обычно мы не даём подобные тестовые реальным кандидатам.

Итог первого тестового: СhatGPT-4 справился хорошо

Мы не можем показать, как выглядел код, который сгенерировал искусственный интеллект, но вот какие выводы мы сделали, когда получили его тестовое:

ChatGPT-4 прошёл собеседование в бэкенд ЮMoney лучше, чем программист с трёхлетним стажем
  • Нейросеть выполнила тестовое корректно.
  • Использовала актуальные вызовы функций.
  • В целом результат работы нам понравился.

Второе задание для ChatGPT было посложнее

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

В результате нейросеть правильно сформировала входные данные, но результат расчёта кэшбэка на основе этих данных получился некорректным.

ChatGPT-4 прошёл собеседование в бэкенд ЮMoney лучше, чем программист с трёхлетним стажем

Зафиналить решили настоящим боевым заданием для кандидатов

Мы попросили ChatGPT рассчитать «прогрессивный» кэшбэк, который зависит от общей суммы заказа.

Хотелось бы отметить, что это же задание мы давали реальному кандидату — Java-программисту (назовём его Юрий). По словам Юрия, у него было три года опыта работы, два из которых он факультативно увлекался разработкой на Java. Так вот, нейросеть справилась с заданием лучше, чем Юрий, и быстрее на 25 минут. ChatGPT-4 выполнил задание на уровне мидла, а Юрий с трёхлетним опытом — на уровне стажёра.

ChatGPT-4 прошёл собеседование в бэкенд ЮMoney лучше, чем программист с трёхлетним стажем

Но и это ещё не всё: мы скормили ChatGPT задачу по цензурированию кода

Было интересно, предложит ли нейросеть переделать что-нибудь в эталонном решении задачи. И она предложила: заметила, что для хранения процентов кэшбэка можно использовать уже отсортированную структуру, то есть не делать сортировку во время расчёта кэшбэка.

Но на этом ChatGPT сдулся — ошибся с указанием API. Для хранения сумм использовался объектный класс, с которым нейросеть производила действия, как будто бы это примитивный тип. Естественно, код из-за этого не компилировался.

Вывод

  • ChatGPT-4 прошёл собеседование как минимум на джуна.
  • Иногда нейросеть ошибается, но в целом может быть неплохим помощником.
  • Мы не приняли ChatGPT-4 на работу, потому что не можем делиться с ним кусками боевого кода. ;)

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

Но бояться того, что ИИ заменит программистов, пока рано: до этого ещё далеко. Лучше быть умнее нейросети и учиться руководить процессами, которые она может делать вместо человека. Так что пока спим спокойно. ;)

Поделитесь, если тоже собеседовали ChatGPT — какие результаты получили? Взяли бы на работу такого сотрудника?

1818
13 комментариев

два из которых он факультативно увлекался разработкой на JavaЭто проблема hr чаще всего, ни к чему писать громкие заголовки про "стаж", 2 года этих не входят в стаж. Вполне возможно что и компания этого одного года стажа тоже липовая. Текущий рыночек, что поделаешь. Ну и понятно что вам сегодня сложно будет в офис затащить кого-то опытного.

рассчитать «прогрессивный» кэшбэкКакой уровень задачи - switch-case, стратегия или какой-нибудь decision table?

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

В реальности chatgpt:
1. не задается вопросом зачем оно вообще надо, в итоге аналитику тогда тоже быть часто "техническим человеком";
2. не может придумать архитектуру в каких-то рамках, тарифах и т.д. (только дать советы по ней);
3. иногда придумывает адскую дичь, которая запустится, но даст тебе плохой результат в полнолуние и надо очень хорошо просматривать тесты. Джуны обычно в этом проще, у них просто ничего не работает;
4. иногда приходится заставлять gpt-4, потому что оно начало экономить ресурсы https://www.aisnakeoil.com/p/is-gpt-4-getting-worse-over-time и пишет //create your code here

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

Мы не приняли ChatGPT-4 на работу, потому что не можем делиться с ним кусками боевого кода. ;)Можно уже llama 2 поднять свою, правда ресурсов дофига надо, думаю у вас не такая аудитория у сервиса, что она станет невозможной для использования в коммерции по лицензии. При этом llama 2 к сожалению, намного тупее gpt4 сейчас.

2
Ответить

статья настолько ни о чем, что на пол-экрана комментариев настрочил))

1
Ответить

Это проблема hr чаще всего, ни к чему писать громкие заголовки про "стаж", 2 года этих не входят в стаж.

Кандидат сам сказал, что имеет 3 года опыта на Java.

1
Ответить

Мне например еще сложно доверять нейросетям. Всё равно хочется перепроверить всё за ними. Даже вот когда транскрибируешь аудио в текст - идёшь и переслушиваешь.

1
Ответить

Согласен. «Помогал» сыну писать сочинение. Так гпт смешал биографии двух Левитанов: художника и диктора, редкая дичь получилась. Глаз да глаз за этим ИИ)

1
Ответить

Ничего себе, разница а скорости - 25 и 1 минута))

Ответить

Что ж так Юрий то... Стажёр, миддл..

Ответить