Как стать автором
Обновить
110.68
X5 Tech
Всё о технологиях в ритейле

Tech Radar X5: какие инструменты и технологии мы используем при разработке

Время на прочтение4 мин
Количество просмотров7.7K

Всем привет! С вами команда X5 Tech. Сегодня мы решили показать наш Tech Radar — сборник инструментов, языков и сервисов, которые мы используем при разработке продуктов. Мы долго к этому шли и наконец-то готовы рассказать о своём опыте публично.

Что такое Tech Radar и зачем он нужен?

Tech Radar — инструмент, который помогает компании держать фокус в технологиях. С его помощью любой сотрудник компании может выбрать язык или решение, которое сможет использовать при разработке.

Когда компания большая и с множеством продуктов, начинается каша. Кто-то хочет писать код на Ruby, кто-то использовать сервисы MySQL, MSSQL или Oracle. В итоге может случиться так, что база используемых инструментов разрастётся до невообразимых размеров и все начнут в них путаться.

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

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

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

У нас самих была своего рода неразбериха в инструментарии. Возможно,
стоило пораньше заняться радаром. Тем не менее главное, что мы к нему пришли и
теперь наша работа станет структурированнее.

Откуда взялась концепция Tech Radar и как она выглядит

Один из родоначальников формата Tech Radar — агентство по технологическому консалтингу ThoughWorks

Внешне он выглядит как обычный радар, разделённый на четыре области: технологии, инструменты, платформы, языки&фреймворки.

От центра к периферии радара идут четыре круга:

  • Adopt — технологии и инструменты, которые внедрены и активно используются командах. Технологии, по которым в X5Tech есть экспертиза.

  • Trial — технологии и инструменты, которые уже прошли этап тестирования и готовятся к тому, чтобы работать в продакшн (или даже уже работают там).

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

  • Hold — в этой категории у нас есть экспертиза, но упомянутые инструменты используются только при поддержке существующих систем — новые проекты на них не запускаются.

Мы за основу взяли Tech Radar европейской компании Zalando. Он также есть у ThoughWorks. В России концепцию радара используют, к примеру, Avito и Lamoda.

Как мы делали Tech Radar?

Ранее у нас был технический стэк в виде файла Excel. Это была большая простыня-таблица без внятной структуры со списком используемых в компании языков, инструментов, платформ и фреймворков. Этот перечень стал отправной точкой.

Далее мы поговорили с командами разных направлений: разработка, поддержка, продукты, SAP и так далее. Всем мы показывали куски таблицы по их сфере и обсуждали, какие инструменты из списка они используют, как часто, чего не хватает. После этого мы синхронизировались с офисом CDO и департамента инфраструктуры по поводу баз данных, платформ и инфраструктурных компонентов. 

Самым сложным было то, что у каждой команды своё видение, каким должен быть Tech Radar. У всех разные инструменты, кто-то чаще использует Airflow, кто-то NiFi или даже Talend. Поэтому, главная задача при создании радара — всё усреднить, вывести общие закономерности.

Мы искали самые актуальные закономерности. Как пример, недавно стали активно использовать язык Go. Нагрузка на инфраструктуру и продукты растёт, мы начинаем обрабатывать данные в реальном времени, и Go позволяет с этим справляться. На нём можно быстро и компактно писать микросервисы, включая многозадачные. Из-за своей актуальности Go внесён в Trial.

Или ClickHouse — одно из лучших решений для поколоночных баз данных. Оно стабильное, быстрое и позволяет очень большие массивы данных хранить компактно. ClickHouse у нас тоже в Trial.

Второй трудностью стало то, что каждый хотел добавить, как можно больше инструментов. Но тогда радар ничем не отличался бы от таблицы в Excel — в нём были бы сотни инструментов, он был бы массивным и сложным для восприятия. Отсечь лишнее — отдельная работа. Так, к примеру, мы не добавили Selenium.

А ещё у нас не прижился Apigee. Хотя сам по себе инструмент крутой, нам он показался неповоротливым. Взамен мы используем Gravitee.

В итоге чтобы держать фокус, мы сделали радар чисто по разработке. В будущем, очевидно, нужны будут отдельные Tech Radar для крупных направлений. Например, свой радар может быть у направления Big Data, SRE команды, DevSec Ops и других более узких специализация.

В целом работа над Tech Radar заняла у нас около месяца.

Как только он был завершён, мы занесли радар в департамент разработки и продукты, а они поделились ими со своими командами.

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

Что дальше?

Раз в 4-6 месяцев Tech Radar будет пересматривать архитектурный комитет. Это нужно для того, чтобы его актуализировать.

Рядом с каждым инструментом, языком, платформой у нас на радаре может появиться стрелочка вниз или вверх. Она будет означать тренд. Так если фреймворк станет использоваться реже, то он перейдёт, как вариант, из Assets в Hold, и напротив него появится стрелка вниз.

Кроме того, периодическое обновление радара — показатель гибкости. Мы следим за тем, что происходит у наших коллег в других компаниях и корпорациях. Какие-то языки устаревают, какие-то наоборот становятся актуальнее. Tech Radar — карта рынка, по ней можно даже ориентироваться тем, кто думает, какие компетенции будут актуальны через год или два.

Конечно, у каждой компании Tech Radar свой. Он зависит не только от трендов, но и от того специфики бизнеса. В нашем 94 инструмента, и у каждого своё точное место.

Теги:
Хабы:
Всего голосов 8: ↑6 и ↓2+4
Комментарии8

Публикации

Информация

Сайт
www.x5.ru
Дата регистрации
Дата основания
2006
Численность
свыше 10 000 человек
Местоположение
Россия