Еще несколько лет назад разработчики мало интересовались тем, что не касалось кодирования, но современные программисты начали уделять больше внимания не только качеству кода, но и его связью с бизнес-задачами. Глава разработчика софта для ИТ-департаментов крупных организаций Compuware Кристофер О’Мэлли делится на портале InformationWeek несколькими советами, которые помогут понять, что же из себя представляет современная среда разработки и какие шаги предпринять для ее формирования.
В прошлом разработчики корпоративных приложений считались «чистыми» кодерами, от которых не требовалось выходить за рамки специализированного опыта. Они вносили изменения в программы, чтобы приспособить их для работы на изолированных платформах, и затем передавали в ИТ-подразделение. Разработчики в основном фокусировались на поддержке качества работы крупных корпоративных программ, обеспечивающих обработку данных и внутренних сервисов на стороне сервера (бэкэнд), тогда как клиентский опыт волновал их в гораздо меньшей степени. Опыт работы с клиентами сегодня — задача первостепенной важности, находящаяся в прямой зависимости от скорости, с которой бизнес может обеспечить обслуживание клиентов с помощью цифровых средств.
Во многом за фронтэнд отвечают те же разработчики, которые провели годы, работая в «карантине», поэтому они не всегда четко представляют, чего же от них хотят клиенты. Поскольку разработчики оказывают решающее влияние на успех бизнеса, нужно исходить не из того, насколько они являются технически подкованными, а из того, как они применяют свои знания для удовлетворения порой даже самых прихотливых требований клиентов. Для того, чтобы разработчики были готовы внедрять инновации на стороне клиента, им нужно овладеть новым опытом. Вот три совета, которые помогут добиться этого.
1. Поощряйте идеи, сотрудничество и инновации
Чтобы реагировать на требования клиентов, разработчикам нужно находиться на прямой связи с ними. Одновременно с этим нужно проявлять готовность достигать критически важные или даже амбициозные цели, которые перед ними ставятся. Работа над такими задачами вдохновит их на эксперименты, которые не всегда, но часто могут превратиться в ценные идеи и помочь клиентам улучшить бизнес-результаты. В этой связи решающее значение будут иметь инструменты для совместной работы и корпоративные чаты с поддержкой синхронизации. Они помогут наладить между разработчиками обмен информацией, идеями — это придаст большую прозрачность процессу разработки и будет способствовать лучшему реагированию на проблемы и пожелания клиентов.
Чтобы стимулировать свободное творчество, осуществлять обмен знаниями или плодотворно решать проблемы, компании должны проводить импровизированные сеансы мозгового штурма в физически открытых помещениях. Им нужно нацеливаться на то, чтобы их разработчики работали в режиме максимальной открытости, стимулируя сотрудничество, прозрачность вне зависимости от платформ.
2. Обеспечьте кросс-платформенную разработку
Жизнеспособные, интересные идеи, которые могут помочь клиентам решить сложные проблемы, могут быть придуманы кем и когда угодно, но для их воплощения в жизнь часто требуется одновременная разработка как фронтэнда, так и бэкэнда. Как показал недавний отчет BMC, в 2018 г. 59% респондентов столкнулись с резким увеличением количества бэкэнд-транзакций. Независимо от того, насколько сложной или передовой может быть система фронтэнда, некачественно работающий код на стороне сервера приводит к ухудшению пользовательского опыта. Транзакционный код должен развертываться с той же скоростью, качеством и эффективностью, что и веб- и мобильные платформы. Разработчики нуждаются в беспрепятственной работе в этих средах, поэтому платформы нужно выводить из изолированных сред и переходить на современную гибридную ИТ-архитектуру.
Преимущества такого подхода заключаются в интеграции нескольких разнородных систем, где бы они не находились — онпремис, в облаке, бэкэнде центра обработки данных, или применении комбинации этих компонентов в зависимости от того, какая платформа обеспечивает лучшее соотношение цены и производительности или бесшовную работу компонентов приложения. Применение гибридной архитектуры постепенно уводит от создания проектов, которые базируются на платформенных методах разработки в сторону максимально ориентированных на клиента продуктов, которые являются экономически обоснованными и эффективными.
3. Нацеливайтесь на автоматизацию, интеграцию и оценку производительности
Меняющийся подход к разработке, к примеру, внедрение непрерывной интеграции/развертывания (CI/CD), требует от предприятий предоставления современных инструментов, гарантирующих разработчикам интуитивно понятный опыт работы и автоматизацию повторяющихся, рутинных процессов. В итоге ценные знания программистов будут направлены на решение проблем клиентов и полезные эксперименты. Современный, коллаборативный, кросс-платформенный подход облегчит им выполнение работы за счет следующих средств:
- задействование специфичных для платформы и мультиплатформенных инструментов через единый интерфейс, который придает схожесть всем средам платформы;
- визуализация и анализ сложных, кросс-платформенных архитектур приложений, независимо от языка программирования или многолетнего опыта работы разработчика с платформой или программой;
- возможность оперативного внесения правок в код и данные параллельно с другими разработчиками; отслеживание изменений в зависимостях кода в затронутых средах до и после момента внесения изменений в код;
- модульное и функциональное тестирование с привлечением автоматизации для ускорения жизненного цикла и обеспечения высокого качества кода во всех системах;
- предоставление тестовых данных «на лету»; обнаружение, визуализация и работа с данными с любой платформы.
Эти средства следует интегрировать в кросс-платформенную цепочку инструментов DevOps, которая «выводит из уравнения» отдельные платформы и позволяет разработчикам использовать активы бизнеса на любых существующих платформах. Им также не помешает поработать над постоянным увеличением скорости, качества и эффективности доставки ПО. Также как спортсменам, которые постоянно следят за нагрузкой на организм и измеряют параметры жизнедеятельности, программистам нужно работать над улучшением кросс-платформенных KPI, проводя непрерывную оценку уровня своей производительности и продуктивности.
Поведенческий анализ проделанной разработчиками работы, а также корреляция отрицательных и положительных результатов на основе реальных данных, позволят надежно определить методы непрерывного улучшения качества разработки. Разработчики все чаще становятся ключевыми драйверами роста предприятия. Понимание их роли, желание обустроить для них комфортную рабочую среду, привлечение и удержание талантливых кадров — это то, что позволит бизнесу отвечать насущным потребностям клиентов быстрее, чем конкуренты.