Оптимизация производительности разработчика создает победный девекс

Ambassador Labs спонсировал этот пост. Insight Partners является инвестором в Ambassador Labs и TNS.

Разработчики часто сталкиваются с составным давлением для достижения бизнес -целей при сохранении оперативного превосходства. Но быть практическим, за которым некоторые выступают, не всегда переводится на лучший опыт разработчиков (devex).

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

Производительность разработчика (DevProd) не имеет в том, чтобы иметь 50 инструментов в вашем распоряжении. Речь идет об улучшении опыта, скорости и производительности с помощью правильных инструментов. С этим мышлением становится легче сосредоточиться на том, что действительно уполномочивает разработчиков — удаление препятствий и создание среды, в которой они могут сосредоточиться на создании исключительного программного обеспечения.

И, по моему опыту, сердце DevProd заключается в том, что мы в послах евангелизируются как «оптимизацию внутренней петли Dev для увеличения скорости разработчика». Скажем, основной цикл деятельности, работающих, работая над функцией или раздавливая ошибку. Это поток:

Написание кода Создание приложения Запуск и тестирование отладки кода

Этот цикл повторяется, иногда десятки раз в день — основная петля кодирования, строительства, тестирования и отладки. Чем более гладкий и быстрее эта «внутренняя петля Dev», тем более продуктивными разработчиками становятся. И они могут быстрее итерации, быстрее решать проблемы и разрабатывать функции более быстрыми темпами.

Много выбоинов, чтобы исправить

Но это не происходит из -за «внешней петли разработчика», которая, напротив, охватывает более широкий жизненный цикл развития, включая, помимо прочего, такие задачи, как планирование, сотрудничество, интеграция и развертывание. Это вспыхивает трение и увеличивает переключение контекста, часто фрагментируя рабочий процесс и нарушает фокус разработчика, что в конечном итоге увеличивает налог на простоя внутренней петли Dev.

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

Предполагалось, что контейнеризация повышает производительность разработчиков — и в некотором смысле это так — но вам действительно нужно консолидировать (и управлять) правильными видами инструментов, чтобы ваши разработчики во внутреннем цикле. Но даже тогда добавленные сложности системы увеличат технический долг.

Скажем, для разработчика, внося небольшое изменение на местном уровне, цикл обычно занимает от четырех до пяти минут. Если все пойдет хорошо, они переходят к следующей задаче. Если нет, они продолжают работать, пока проблема все еще свежа. И, предполагая, что разработчик работает шесть часов работы в день, разработчик может завершить около 70 итераций.

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

Итак, в то время, когда отвлекающие факторы и необходимость переключения между различными инструментами — вызывая умственную усталость и снижение эффективности — затрудняют инженерные лидеры упростить рабочие процессы и улучшить скорость развития с ограниченными ресурсами, склонение к DevProd — это обязательная потребность в решать проблемы, с которыми сталкиваются их организации.

Инвестируя в DevProd, инженерные лидеры не просто оптимизируют рабочие процессы, они инвестируют в самую основу своего программного обеспечения и восстанавливают потерянную скорость, которая заключается в оптимизации внутреннего потока петли Dev. Единое решение может значительно помочь оптимизировать это.

Масштабирование, замедляясь

Контейнеризация отлично подходит для современного облачного способа создания и архитекции приложений. Контейнеры позволяют компаниям масштабировать и обслуживать огромные популяции пользователей в различных средах, обеспечивая согласованность и мобильность, обеспечивая надежный приложения независимо от базовой инфраструктуры. Но этот благо для операционных команд стоит для разработчиков — страшный «налог на контейнер».

Стремление к бесшовной, облачной нативной разработке часто сталкивается с недифференцированным тяжелым подъемом управления сложными конфигурациями контейнеров, зависимостей и сети. Контейнеры, хотя и радикально меняющееся развертывание и производство, часто вносят значительные сложности в рабочий процесс разработки. Итак, разработка для контейнерных сред стала сложнее, не проще.

Вместо того, чтобы оптимизировать внутреннюю петлю DEV, контейнеры часто нарушают его. Разработчики оказываются борющимися с DockerFiles, Manifests Kubernetes и множеством других инструментов для контейнеров, отталкивая их от основной задачи написания кода и функций здания. Отладка становится более сложной, заставляя разработчиков ориентироваться в журналах контейнеров и понимать сложные сетевые взаимодействия. И раскрытие среды разработки сама по себе может превратиться в сложную оркестровку, замедляя итерационные циклы и препятствуя быстрым экспериментам.

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

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

Тем не менее, разработчики любят локальные установки, даже при работе с контейнерными приложениями, будь то местные среды локальными или удаленными, потому что знакомство и скорость локальной разработки позволяют быстро итерацию и более быстрые петли обратной связи. Но интеграция локальных изменений с удаленными контейнерными средами может быть очень сложной задачей и потенциально замедлить процесс разработки.

Разработчики не должны становиться экспертами в контейнерах, чтобы оставаться продуктивными. Blackbird, недавно интегрированный с Telepresence, предлагает новый подход к разработке контейнеров. Это позволяет разработчикам сосредоточиться на том, что они делают лучше всего — написание кода — при этом абстрагируя сложности управления контейнерами. Предоставляя выделенную, размещенную производственную среду разработки, Blackbird дает разработчикам восстановить свой внутренний цикл, позволяя им быстро итерации, тщательно тестировать и создавать исключительное программное обеспечение, даже в контейнерном мире. А с добавлением телеприезда разработчики все еще могут подключаться к живым удаленным кластерам, когда им это нужно, оставаясь в комфорте своей местной машины.

Удаление узких мест с правильным инструментом

Инженерные лидеры, стремящиеся улучшить DevProd, должны начать с прослушивания разработчиков. Поймите, где они борются, и инвестируйте в решения, которые касаются этих конкретных болевых точек. Если вы действительно хотите улучшить DevProd, постарайтесь понять, как оптимизация обратной связи вашей команды разработчика может оказать немедленное влияние. Разработчики ненавидят ждать, поэтому все, что вы можете сделать, чтобы ускорить процессы — будь то автоматизация задач или улучшение среды тестирования, — окупается в производительности и морали.

Пусть они останутся во внутренней петле Dev, где они выполняют свою лучшую работу (кодирование). И не упускайте из виду ИИ. Как я отметил в прогнозах Ambassador 2025, ИИ становится важным для автоматизации повторяющихся работ и предоставления разработчикам большей пропускной способности, чтобы сосредоточиться на высоких задачах.

ИИ изменил правила игры для борьбы с ручной работой. Решения, основанные на AI, могут автоматизировать мирские задачи, такие как управление конфигурацией, позволяя разработчикам сосредоточиться на творческих и сложных частях своей работы. Получение правильных инструментов создает бесшовные рабочие процессы для разработки API, что невероятно эффективно.

Вы хотите найти технологии, которая поможет вам ускорить циклы обратной связи и облегчить разработчикам оставаться в состоянии потока. Будь то эфемерные среды для тестирования или оптимизированных инструментов API с AI-двигателями, эти технологии устраняют трение и позволяют разработчикам делать то, что они делают лучше всего.

Разжигание инициативы DevProd Culture

Все начинается с эмпатии. Лидеры должны глубоко понять, что проходят их команды — что их расстраивает, что их замедляет — и работать, чтобы удалить эти препятствия. Создание культуры, в которой приветствуется обратная связь, и эксперименты поощряются. Когда вы расширяете возможности разработчиков с правильными инструментами и создаете совместную среду, естественным образом следует производительность разработчиков.

Ambassador Labs является лидером опыта нативного разработчика Cloud. Самолет управления разработчиком компании для Kubernetes объединяет инфраструктуру разработки, развертывания и производства для разработчиков и организаций по всему миру, чтобы они могли кодировать, отправлять и запускать приложения быстрее и проще, чем когда -либо. Insight Partners является инвестором в посол и TNS. Узнайте больше последних из Ambassador Labs Trending Stories YouTube.com/thenewstack Tech, быстро движется, не пропустите эпизод. Подпишитесь на наш канал YouTube, чтобы транслировать все наши подкасты, интервью, демонстрации и многое другое. Группа подпишитесь с эскизом. Мэтт Фогет — директор по технологиям в Ambassador. Он приносит более 10 -летний опыт работы в качестве междисциплинарного инженера в программных проектах, начиная от предприятий SaaS -веб -приложений до встраиваемого программного обеспечения на спутниковые полезные нагрузки. Он применяет свой опыт … Подробнее от Мэтта Фогета

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *