Я трачу на написание кода меньше времени, чем когда-либо

Я создаю больше программного обеспечения, чем когда-либо прежде.

ИИ не уменьшил мою инженерную нагрузку. Он изменил саму суть инженерного дела.

Пять лет назад я измерял продуктивность количеством строк кода или количеством принятых 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