Dmitrii Cherviakov

К списку статей

Опубликовано 4 мин чтения

Насколько AI реально ускоряет разработку? Я измерил

Меня постоянно спрашивают, насколько быстрее я стал с AI. Вместо мнения — цифры за 15 месяцев одного iOS-проекта: +81% code output, +48% delivery cadence, +38% feature throughput.

Автор · Senior iOS Developer

Разработчики, менеджеры из других компаний, просто коллеги — самый частый вопрос ко мне в этом году один и тот же: насколько на самом деле AI тебя ускоряет? Ответ у меня всегда был, но это было ощущение. Как разработчик я явно стал быстрее. Мне захотелось проверить это ощущение цифрами.

Для этого у меня оказались удобные условия. Последний год я единственный iOS-разработчик GrowDiaries — социальной сети для гроверов на pure SwiftUI и The Composable Architecture. Проект хорошо делится на две половины: в первой я работал так, как работал всегда, а во второй постепенно строил AI-workflow вокруг своей разработки. Вся история лежит в одном git-репозитории, а каждый коммит в main — shippable build, поэтому две половины можно сравнить напрямую.

Результат

Два одинаковых шестимесячных окна: июнь–ноябрь 2025 до workflow и февраль–июль 2026 с ним. Тот же продукт, та же архитектура, тот же уровень код-ревью.

Code output
+81%
11 006 строк / месяц · было 6 066
Delivery cadence
+48%
25.3 shippable builds / месяц · было 17.2
Feature throughput
+38%
6.7 фич / месяц · было 4.8

По ощущениям я предполагал «примерно в полтора раза». Цифры оказались даже выше: delivery cadence выросла на 48%, feature throughput — на 38%, а сырой code output — на 81%. Честно, такого масштаба я не ожидал.

Одна оговорка перед деталями. Эти цифры измеряют ту часть работы, которая относится непосредственно к написанию кода. Разработчики ещё много времени тратят на обсуждение фич, планирование и координацию, и доля этого в неделе целиком зависит от компании. На этом проекте я мог почти полностью посвятить себя разработке, поэтому здесь по большей части замер ускорения именно создания фич, а не всего, что делает разработчик.

Как устроен workflow

Как большинство разработчиков, я начинал с простого общения с ChatGPT, а по мере появления агентской разработки шаг за шагом внедрял её в работу. Со временем я понял, в чём мой харнес силён и где он ошибается, и больше всего усилий вложил в одно: замкнуть feedback loop. Не в промпт и не в генерацию, а в последнюю часть — тестирование кода, который производит агент.

Feedback loop

Лучшее раннее решение — выбор TCA в качестве архитектуры. Она построена вокруг тестируемости, и с агентом это оказалось важнее, чем с человеком за клавиатурой.

Начал я с самого дешёвого — генерации unit-тестов. Это покрывает бизнес-логику, но только её. Поэтому я пошёл дальше и научил агента гонять полноценные автотесты: закончив фичу, он сам её проверяет. Я написал гайдлайны по разбору тест-кейсов из моей изначальной спецификации, так что у каждого тикета появляется собственный чек-лист. А последний этап каждого тикета — прогон фичи в симуляторе по этим кейсам.

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

Сбор данных

Входная сторона настроилась на удивление просто с помощью MCP. Документация подтягивается оттуда, где она живёт, а Figma MCP отдаёт агенту полную спецификацию экрана по дизайну — вплоть до отступов и цветов.

Один совет здесь: раскладывайте дизайн на дизайн-систему и поддерживайте её с самого начала. Это окупается дважды. Агент не пересоздаёт одни и те же UI-компоненты с небольшими отличиями, и растёт качество, потому что именно в этих небольших отличиях и жили бы баги.

Цифры и как они измерены

  • Code output — строк Swift, добавленных за месяц, только *.swift, без сгенерированных локализаций и ассетов. Выросло примерно с 6 000 до 11 000 строк в месяц.
  • Delivery cadence — shippable builds в месяц. Проект ведётся по trunk-based development: каждый non-merge коммит в main — рабочая сборка с фичей или фиксом, так что число коммитов и есть число поставок. Выросло примерно с 17 до 25 сборок в месяц.
  • Feature throughput — фич в месяц, извлечённых из названий тикетов в истории коммитов. Тикеты, состоящие только из багфиксов, исключены. Выросло с менее чем 5 почти до 7 фич в месяц.

Июль 2026 стал рекордным месяцем: 29 125 добавленных строк — страницы брендов, реклама и тёмная тема вышли в одном месяце. Полная помесячная картина, включая разбивку по фичам, — на странице статистики.

Что не изменилось

  • Качество ревью. Я читаю каждый диф. Агент пишет больше первого черновика; решение по-прежнему за мной.
  • Архитектура. Pure SwiftUI и TCA до, pure SwiftUI и TCA после. Агенты лучше всего работают в кодовой базе с сильными явными конвенциями, и TCA оказалась для этого очень удачной.
  • Стабильность. Приложение в App Store, и крэшей на данный момент просто нет.

Оговорка о метрике

Я понимаю, что строки кода — прокси-метрика, и она не показывает рост производительности полностью. Поэтому рядом с ними показаны сборки и фичи, а сравнение сделано на одинаковых окнах одного и того же проекта. Но это те цифры, которые действительно можно измерить, и все они указывают в одну сторону: с выстроенным workflow скорость разработки и скорость поставки выросли — сильнее, чем я ожидал.

#ai#workflow#swift#productivity