Я трачу на написание кода меньше времени, чем когда-либо
Я создаю больше программного обеспечения, чем когда-либо прежде.
ИИ не уменьшил мою инженерную нагрузку. Он изменил саму суть инженерного дела.
Пять лет назад я измерял продуктивность количеством строк кода или количеством принятых pull requests. Я думал, что написание большего объема кода означает создание большей ценности. Я ошибался. Это было просто самым простым способом измерения.
Сегодня мой рабочий день выглядит иначе. Я трачу меньше времени на набор кода. Я трачу больше времени на:
• Ревью кода, созданного ИИ • Проектирование системной архитектуры • Определение бизнес-правил • Моделирование данных • Проверка предположений • Создание пайплайнов оценки
Узким местом в разработке ПО никогда не была скорость печати. Узкое место — это понимание.
Вы должны понимать пользователей, бизнес, системы и компромиссы. Именно эти решения определяют, выживет ли программное обеспечение.
Код — это результат. Инженерия — это процесс принятия решений.
ИИ отлично справляется с реализацией. Но он не может ответить на следующие вопросы:
• Должен ли этот сервис владеть этими данными? • Где должна происходить валидация? • Как нам восстанавливаться после сбоев? • Как нам проводить аудит автоматизированных решений?
ИИ устраняет трение, а не инженеров. Он убирает рутинную работу, такую как написание сериализаторов или миграций. Это позволяет вам решать задачи, а не переводить решения на синтаксис языка.
Недавно я создал Transaction Intelligence System. Я думал, что самой сложной частью будет модель ИИ. Я ошибался.
Самая сложная работа заключалась в:
• Проектировании структур данных • Создании синтетических наборов данных • Определении бизнес-таксономий • Построении пайплайнов разрешения сущностей (entity resolution)
ИИ ускорил написание кода, но он не избавил от необходимости понимать бизнес.
Генерация ПО теперь стоит дешево. Понимание сложности по-прежнему обходится дорого.
Сложность заключается в интерпретации того, что не записано. Вы должны находить скрытые бизнес-правила, регуляторные ограничения и требования безопасности. Они существуют в разговорах и опыте, а не в документации. Ни одна модель не может извлечь знания, которые не представлены.
ИИ вознаграждает хорошую архитектуру. Он не заменяет её.
Если ваша система имеет четкое распределение ответственности и модульные сервисы, ИИ становится продуктивным. Если ваш фундамент слаб, ИИ просто быстрее генерирует сложность.
Я не перестал заниматься инженерией. Я начал заниматься инженерией на более высоком уровне.
Меньше времени на набор текста. Больше времени на проектирование. Меньше времени на отладку синтаксиса. Больше времени на проверку предположений.
Именно в этом направлении движется профессия.
Источник: https://dev.to/uigerhana/i-spend-less-time-writing-code-than-ever-before-395b
Дополнительное обучающее сообщество: https://t.me/GyaanSetuAi
