За время новогодних праздников у меня состоялись блиц созвоны с двумя уважаемыми людьми, которые владеют успешными it бизнесами. Как не сложно догадаться, их интересовал вопрос «как уже автоматизировать разработку, ведь ты про это пишешь, во всех СМИ про это рассказывают, а у нас штат от программистов только пухнет».
С обоими господами договорились созвониться «по-серьезному» в первые рабочие дни в этом году. Cегодня решил подготовиться, нельзя же идти на подобные встречи «пустым».
В процессе понял, что из этого получится прекрасный лонгрид, а потом и видео-туториал записать можно (кстати, я обещал на праздниках записать видео на ютуб, но так и не осилил, праздники затянули, прАстите).
Повествование будет разделено на 3 части: инструментарий, текущий уровень автоматизации и что нас ждет к концу 25-ого года. Последний раздел прошу считать «городскими легендами» или полетом моей фантазии, так будет проще, потому что публичных источников нет, а на конкретных людей ссылаться не могу. Если про что-то супер важное и полезное не напишу, значит просто этого не касался своими руками или прошло мимо меня, так бывает, это нормально, буду дико рад и благодарен, если расскажете в комментах или личке что-то новое для меня.
А еще в этот раз текст раздуло больше 16к символов, а это 5 постоы в TG, явный перебор, читать сложно будет. Для удобства выложил на Дзене (у меня там бан висит, комментарии закрыты, органика отключена, но публикации доступны по прямой ссылке). Если захотите оставить комментарии или лайки, то делайте это на 5-ой (последней) части текста в TG https://t.me/andvink/104. Буду рад советам, где публиковать лонгриды (вк статьи, хабр, vc, телеграм статьи, пикабу прости господи, линкедин меня полностью заблочил, т-журнал может, дзен тот же самый или еще чего-то). Хочется найти органические охваты для текстов, но никак не получается. А теперь предлагаю заварить себе кофе/чай и устроиться поудобнее, сегодня будет «сплошное мясо» без философии.
Прелюдия пройдена, давайте к делу.
Раздел Ноль: Инструментарий для генерации кода
0.1. Ассистенты написания кода.
Тут можно выделить абсолютного лидера с максимальным потенциалом, второй дивизион и «третий сорт - не брак».
TOP1 - опенсорсный плагин Cline. Все самое новое и вкусное сначала появляется в нем, а потом второй дивизион растаскивает эти фичи себе. Там и грамотный учет контекста репозитория, и режим полного автопилота написания кода, и самопроверка себя, и автоматические запуски кода для тестирования, и загрузка картинки для генерации верстки. Еще есть много частных форков этого плагина, где можно увидеть узкоспециализированные адаптации, от которых иногда волосы шевелиться начинают. А еще работает с любой LLM, которую в него передашь (это ключевое преимущество, все остальные конкуренты работают только с конкретными коммерческими моделями), даже локальные нейронки в закрытом контуре поддерживаются, что снимает стоп-фактор для многих компаний. В общем must have, выше на голову всего общедоступного инструментария.
Второй дивизион: Copilot (хорошо, но не Кляйн, совсем не Кляйн, еще и впн нужен) и CursorAI (великолепный маркетинг, минимальный порог входа, в какой-то момент был топом рынка, сейчас на уровне Копайлота и тоже нужен впн).
«Третий сорт - не брак»: CodeGeex (китайский аналог, просто работает, не требует впн, бесплатен, отстал по функционалу от Кляйна примерно на 9 месяцев), GigaCode (это сберовский гигачат, находится на уровне КодГикса, ключевая особенность - научен писать на 1С, сам оценить качество не могу, но знакомые одинесники уже пользуются и довольны), Codeium (ничего особенного, просто работает).
0.2. SaaS сервисы и «моды» к инфраструктурам.
В первую очередь надо выделить Supabase. Он сам по себе очень хорош, позволяет на мало и средне нагруженных проектах очень сильно срезать траты на БД разработчиков и девупсов, даже геораспределение на нем можно запустить. Но в этой подборке Супабейз нам интересен своим ИИ плагином, который по текстовому запросу пишет SQL команды, при этом опирается на всю вашу БД и не страдает галлюцинациями. Полностью заменяет БД разраба, делает сложные функции, создает сложные таблицы со связями, проходит по всей БД с нужной задачей, оптимизирует запросы. Если не устраивает пользоваться SaaS сервисом, то их код открыто лежит на github, AI модуль вынесен в отдельный репозиторий, его можно форкнуть и подключить к своей локальной PostgreSQL. Танцы с бубном при локальном запуске гарантирую, но результат того стоит.
Далее сервисы V0 и BoltNew (а так же их многочисленные конкуренты и опенсорс аналоги на github). Фактически полная автоматическая генерация репозитория по текстовому запросу. Знаю менеджеров, которые промтами уже создают и допиливают небольшие рабочие продукты. Фактически можно дать запрос «напиши приложение, которое будет вот с этого api доставать данные, делать с ними это, выводить в интерфейс как на вот этой картинке и еще отправлять результаты на это апи», а потом такими же промтами добавлять функционал, исправлять баги и менять интерфейс. Из слабостей, это «не умение» делать сложную верстку (интерфейс придется заранее упрощать), код пишет хорошо только на Next (React+TS+SSR), либо на питоне, еще постоянные проблемы с пробросом внешних ассетов (картинки для лендингов, как яркий пример). Деплоить на прод умеют.
Третьим пунктом надо упомянуть сами LLMки, которые спокойно могут сверстать интерфейс по загруженной картинке (и вносить изменения в режиме канваса), создавать sql запросы любой сложности, писать однофайловый код (например, тг бот или несложный парсер). Одно время топовой нейронкой для этих целей казалась https://huggingface.co/Qwen/QwQ-32B-Preview, сейчас математические наработки из нее воплотились в deepseek v3, плагин Cline (и только он) уже поддерживает это api (сегодня вышел апдейт). С версткой неплохо справляется мистраль (но код в ней генерить не рекомендую). Еще не могу не рассказать про Sonnet, именно эта нейронка первой совершила в 24-ом году качественный скачек и дала дорогу реальной автоматизации кодинга, но, на мой вкус, сейчас она не интересна, лидерство не удержала, отстала.
Раздел Первый. Текущие уровни автоматизации ниш it разработки.
Тут все субъективные оценки и моя личная вкусовщина.
1.0. Любые SQL запросы и работа БД разрабов реляционных баз выглядят автоматизированными на 95% (оставшиеся 5% - это супер высоконагруженные системы, где требуются уникальные и нестандартные решения). Выше я уже описал как это достигается (ai плагины к бд и одиночная генерация в LLM). Насколько мне известно, горе-аналитики (которые не умеют писать sql) все свои запросы к базам по-тихому успешно генерят, на этом уровне навык стал вообще не актуальным. Давным-давно sql позиционировался, как инструмент, которым сможет пользоваться каждый человек без спец подготовки. Не вижу смысла дальше продолжать, пусть БД разрабы в комментах укажут мне узкие места или куда мне пойти со своим мнением, с удовольствием изучу и вникну.
1.1. Автотесты… Unit, Integration, Acceptance, Functional, UI и API вроде бы уже все и везде генерят через код ассистентов. Performance и Security тестирование по своей природе находится вне кода, поэтому требуют разработки. В общем-то тоже можно смело ставить уровень автоматизации 95%.
1.2. Однофайловые скрипты в пределах 100 строк кода. Не важно, бот, докер конфиг или апи метод внутри продукта. Код ассистенты и LLM «промтом в лоб» генерят практически все, кроме экзотических языков. Тоже можно поставить 95%. Даже байтить на комментарии тут не хочу.
1.3. Документация кода и публичное описание апи методов. Вообще не знаю, кто это пишет руками (да и в принципе тех, кто этим занимается, единицы, просто святые люди). Наверное, уже полтора года как код ассистенты это делают лучше программистов. Хотя бы потому что делают и в добавок не пропускают ничего. Ставлю 99%, потому что все равно надо читать и проверять публичную доку, мало ли что там просочится.
1.4. Html Верстка. Вот тут уже интереснее, ибо несколько лет грозятся ее автоматизировать, но все никак не получается, а сейчас появились рабочие схемы. Простые методы уже упоминал выше по тексту, тут хочу показать вот такие наработки https://github.com/abi/screenshot-to-code , подобного уже много, и еще больше в закрытых разработках западных бигтехов (скорее всего от них это и просочилось на гитхаб). Справляются с адаптивом, хорошо работают с картинками, вносят правки промтами, интегрируют результаты в контекст. Но есть важная оговорка, весь подобный инструментарий умеет выдавать либо «голую» верстку без фреймворков, либо jsx + tailwind. Скорее всего этот стек станет стандартом индустрии, теилвинд оказался супер гибким и идеально подходящим для генерации верстки. Так же надо упомянуть Figma, эти ребята на конференциях уже несколько лет транслируют, что копают в сторону автоматизации верстки, у меня конечно нет хрустального шара с предсказаниями, но уверен, что у них сейчас есть что-то очень интересное в стадии разработки, ниже по тексту еще вернусь к ним. Пока что верстке можно поставить 30% автоматизации, но успешная методология уже есть, тенденция уверенная и положительная, чистым верстальщикам не долго осталось.
1.5. Дизайнеры. Вот тут неожиданно. 2 года назад все были уверенны, что веб и граф дизайн может вообще перестать быть массовой специализацией и 90% спецов уйдут на биржу труда. Но этого не произошло. Генерация смогла поджать под себя разработку логотипов, создание графики по паттернам, основы для интерфейсов и, как бы, все. По ощущениям уровень автоматизации не больше 30% и положительного тренда нет, методологий генерации креативов не наблюдается. Все созданные автоматизации стали просто инструментарием. Рутина ускорилась, творчество двигается с той же скоростью как и раньше, люди сохранили работу (ну кроме стажеров и джунов, у них все плохо).
1.6. Менеджмент (ПМ-ы и Продакты).
Очень скользкая тема. По моему субъективному, но гордому, мнению тут есть огромное пространство для автоматизации, но оно просто саботируется представителями этого направления, просто потому, что они могут. Зато идет неоправданный прессинг отдела разработки (да, я представляю разработку, нечего удивляться моей предвзятости) на тему внедрения ИИ «здесь и сейчас», повышения производительности в 3-5 раз «к концу квартала» и желанию уменьшить штат разрабов, что вызывает огромное количество проблем при планировании и постановке задач. А ведь ИИ может анализировать исторические показатели и прогнозировать сроки исполнения (намноооого точнее людей), адекватно распределять нагрузку и типы работ между разработчиками (та самая методика работы с компетенциями, а не людьми), выявлять риски срыва сроков, банально закрывать белые пятна в знаниях прОдукта, а сколько всего можно автоматически делать в гугл таблицах. Не буду тут давать оценку. И так лишнего наговорил.
1.7. HR.
Долго думал писАть или не писАть про этих ребят. Тут происходит полный хаос и вакханалия. Автоматизируется вообще все, что можно и нельзя. Резюме сначала проходят скоринг через ИИ и без метча вообще не попадает на рассмотрение «кожаным мешкам», идеально подходящие кандидаты в большинстве своем пролетают мимо. Тестовые вопросы генерят llm и эйчары задают их без малейшего понимания предметной области. Происходит автоматическая оценка производительности людей и составление списков на увольнение, куда почему-то постоянно попадают ключевые сотрудники. Соискатели в ответ генерят свои резюме с несуществующими навыками и компаниями, но получают высокий скоринг балл и проходят дальше. Появились ии помощники на собесах, с ними можно отвечать на любые вопросы (даже в узких контекстах) и никто не поймет обмана. Лайфкодинг сначала решался через тупое копирование задачи в ChatGPT, а как это стали контролировать, появились системы скриншот-распознание-ответ, которые вообще не палятся. Больше года боты подгоняют резюме под вакансии, генерят сопроводительные письма и рассылают по всем открытым вакансиям на всех площадках, создавая у hr ощущения дикой очереди. Просто ИИшный АД. Никаких оценок, это все может привести к очным собеседованиям с глушилками радиосигналов, а агрегаторы вакансий закроются.
1.8. Кодинг.
ИИ ассистенты прекрасно генерят файлики до 100 строк. Понимают контекст. Разбивают большие задачи на маленькие и генерят много файликов по 100 строк. Находят ошибки в существующем коде и вносят правки. Удаляют лишний код. Но это все требует правильного изначального запроса с полным пониманием того, что должно получиться и дальнейшей валидации результата. А значит эффективно этим могут пользоваться сеньоры и (иногда-иногда) мидлы. Стажерам и джунам не могу сказать ничего хорошего, они фактически больше не нужны, всю возможную пользу от них съел Cline. 30% автоматизации.
Раздел Два. «Городские легенды» и чего ждать в 25-ом.
Фронтенд.
В западных бигтехах идет супер активная разработка автоматизации этого направления.
Почему? Комбинация факторов. Есть визуальная составляющая, есть устаканившийся подход с дизайн системами, появились методологии генерации верстки.
Какую схему пытаются реализовать «большие ребята»?
Сейчас будет сумбурно, но надеюсь смысл донесу. Для начала принимается принципиальное решение максимально переносить логику на бекенд, это базовое действие. Далее за основу берется подход «разработка через тестирование», это когда по ТЗ сначала создается множество разных видов тестов (все же помнят, что во фронте кроме юнитов мы можем тестировать визуал и функционал) и код пишется до тех пор, пока тест пайплайн не станет зеленым. Автотесты генерятся великолепно. ИИ ассистенты умеют запускать код, прогонять тесты, сверяться с картинками и вносить правки до бесконечности, пока требования к генерации не будут достигнуты. А еще у нас есть дизайн система, которая позволяет собирать интерфейс в режиме конструктора, что сильно облегчает задачу нейросеткам. А саму дизайн систему тоже генерят (вынимают JSON файлы из фигмы с импортом макетов, создают сторибуки с тестами, генерят однофайловые компоненты конвеером, при внесении правок в дизайн автоматически генерятся изменения в файлах и разлетаются по всему интерфейсу). Как уже упоминалось выше, это хорошо работает с jsx+tailwind, сейчас еще добавлю слово react, ибо остальные фреймворки генерятся на порядок хуже. Учитывая дикое рвенение менеджмента «оптимизировать программистов», ресурсы и время на реализацию этой схемы наверняка выделят. И я не единственный, кто к этому пришел, и даже не в числе первых.
Девупс.
Да как вообще можно писать про этих пацанов в посте про автоматизацию??? Их работа напрямую и моментально влияет на качество продукта, дефицит кадров признают даже hr-ы, джуны и стажёры бесполезны и не могут вообще ничего. И тут вдруг автоматизация. С ума сошел что ль?
Да, сошел, и «голоса из космоса» говорят мне, что уровень боли от проблем с devops перешли все разумные пределы. В этом направлении программного кода требуется реально мало и его сложность низкая (можно смело генерить). Остальная работа строится на понимании что куда и как надо воткнуть, чтобы стало хорошо (да простят меня мои друзья-девупсы). Фактически 80% этих работ можно автоматизировать без ИИ в виде блочных конструкторов, но раньше на это не было «воли и желания менеджмента», ибо задача весьма дорогая. В этом году мы увидим от ведущих облачных операторов поэтапное упрощение настройки инфраструктуры через введение абстракций, которые в итоге должны будут превратиться в кубики для девупс-конструктора.
Откуда я это знаю? А я не знаю, читайте прелюдию к этому тексту.
Бекенд.
Будут активно развиваться ИИ ассистенты, полностью убивая рутинно-джуновские задачи. В AI-агентов не верю, нет методологической базы для их создания и внедрения, только маркетинг и хотелки. Во фронтенде есть возможность протестировать результат генерации со всех возможных сторон, девупсы работают на уровне облачных инфраструктур, а в бекенде нет ни того, ни другого, плюс огромная вариативность не только итогового результата, но и его формы.
Эпилог.
Этот абзац самый важный во всем тексте.
Интеграция ИИ делает не 100%-ую автоматизацию, а новый инструментарий.
Теперь еще раз медленно и вдумчиво. Интеграция ИИ в it разработку повышает эффективность программистов уровня сеньор (мидлы 50/50) и полностью обесценивает стажеров с джунами. Сильно автоматизированные направления (sql, автотесты, документация) превращаются в общеобязательные работы, которыми занимаются не выделенные люди, а вообще все разработчики. Автоматизации фронтенда и девупса будут порождать из себя внутренние продукты-конвееры производящие код, которые тоже будут требовать поддержку и в то же время хорошо масштабироваться без раздувания штата.
На сегодня все.