Я сделал шинный калькулятор с ИИ. Код он написал, продукт — нет
Недавно захотелось "тряхнуть стариной" и что-то накодить, точнее на вайб-кодить. В тот момент я выбирал себе комплект зимних шин и подумал написать инструмент, которым сам часто пользуюсь - шинный калькулятор. Пользователь должен был указать два типоразмера шин, а сервис — рассчитать реальную разницу в размерах колёс.
В целом я разработчик по образованию, но уже очень давно не программировал, и сейчас занимаюсь управленческими задачами. Я понимаю, как устроена разработка, могу сформулировать задачу и оценить результат, однако самостоятельно писать весь код мне сейчас пришлось бы практически с возвращения в профессию. Поэтому техническую реализацию я решил поручить нейросети. В данном конкретном случае достаточно было Gemini.
За несколько часов и несколько итераций получилась работающая версия. Основную логику калькулятора нейросеть реализовала почти самостоятельно. Но это не была история в духе «написал один запрос и получил готовый продукт».
Первая версия требовала доработки. Самая заметная проблема обнаружилась на мобильных устройствах: калькулятор работал, но пользоваться им было неудобно, были типичные проблемы с мобильной версткой.
Дальше начался вполне обычный процесс разработки. Я описал, что нужно исправить, получил следующую версию, проверил её, отправил на тестирование и сформировал новый список замечаний. Затем прошла ещё одна итерация и так добрались до релиза :)
По ощущениям это почти не отличалось от работы с разработчиком-человеком. Сначала появляется версия №1, потом заказчик (тестировщик/руководитель) показывает ошибки и объясняет, что должно работать иначе. Исполнитель вносит изменения, результат снова проверяют — и постепенно продукт становится таким, каким его задумывали.
Только в этом случае отдельного разработчика-исполнителя в цепочке уже не было.
Нейросеть написала код, исправляла замечания и быстро собирала следующие версии. Но она не определила, насколько удобно пользоваться калькулятором с телефона, какие функции важнее и на что нужно потратить следующую итерацию. Эти решения оставались за мной.
Получается, что техническую реализацию ИИ почти полностью взял на себя, а постановка задачи, приоритизация, проверка результата и ответственность за продукт никуда не исчезли.
Мой прежний опыт разработки здесь, скорее всего, имел значение. Я давно не писал код, но могу увидеть корень проблем и достаточно точно сформулировать, что нужно изменить. Поэтому из этого случая не следует, что теперь любой человек без подготовки может создавать качественные IT-продукты обычным человеческим языком.
Но другой вывод сделать уже можно: в небольшом и чётко ограниченном проекте отдельный технический исполнитель, а может и целая цепочка исполнителей (часть тестирования, например, также была произведена ИИ) действительно может не понадобиться.
Это хорошо совпадает с тем, что разработчики говорят о нынешних AI-инструментах. В опросе Stack Overflow 66% респондентов назвали одной из основных проблем ответы, которые выглядят почти правильными, а 45% отметили, что исправление сгенерированного кода иногда занимает дополнительное время. То есть проблема всё чаще заключается не в получении первой версии, а в её проверке и доведении до нормального результата.
Для бизнеса это заметное изменение. Небольшую внутреннюю утилиту или прикладной сервис уже можно сделать за несколько часов, не выделяя отдельного разработчика и не ставя задачу в общий бэклог. Человек, который понимает предметную область и способен принять результат, получает гораздо больше самостоятельности.
Но здесь возникает и менее приятный вопрос.
Раньше подобный калькулятор вполне мог стать задачей для начинающего веб-разработчика. На таких проектах люди учились разбираться в требованиях, получать обратную связь, исправлять ошибки и доводить первую версию до состояния, которым действительно можно пользоваться. Теперь у заказчика появился альтернативный путь: передать техническую часть нейросети.
Исследование НИУ ВШЭ, основанное на анализе более 700 тысяч российских вакансий, пока не показывает массового вытеснения профессий. Но его авторы отдельно отмечают риск для молодых специалистов: именно простые операции, с которых обычно начинается профессиональный путь, легче всего передать ИИ. Исследование НИУ ВШЭ.
В этом и появляется противоречие. Отдельной компании выгодно быстрее и дешевле закрывать небольшие задачи. Но отрасли всё равно нужны люди, которые через несколько лет станут опытными разработчиками и архитекторами.
После этого эксперимента я бы не стал утверждать, что нейросети уничтожат профессию разработчика. Но в одном небольшом проекте ИИ уже заменил разработчика как отдельного исполнителя. При этом работа над самим продуктом никуда не исчезла — она просто осталась на стороне человека, который ставил задачу, проверял результат и решал, что делать дальше.
И если простые задачи постепенно перейдут к нейросетям, остаётся открытым вопрос: на каких задачах будут учиться будущие разработчики?