Разместить здесь вашу рекламу


Трудности роста. Почему вашей компании стоит задуматься о data-driven подходе и как мы применяем его в ЕРАМ

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Сегодня ЕРАМ — это сообщество из более 40 000 экспертов по всему миру. В таких масштабах для качественной работы с большими объемами данных и правильной оценки ресурсов нужны нетривиальные подходы. Некоторыми такими подходами делится Евгений Моспан, Senior Solution Architect и руководитель Центра компетенции Java.

Больше года назад Евгений с коллегами начали работать над технологическим радаром по своему стеку. Вскоре эксперты обнаружили, что стоит объединиться с коллегами из разных локаций и команд и вместе создавать более масштабный, глобальный продукт. Лучшими практиками и вынесенными уроками на пути внедрения data-driven подходов в управление Евгений делится в этом материале. Если ваша компания планирует активный рост — будет полезно.

Почему это важно 

Пока ваша команда относительно невелика вопрос систематизации данных стоит не так остро. Появляется проект и вы с ходу знаете, есть ли у вас необходимая экспертиза и люди или нет, будут ли с этим риски. В компании средних размеров избежать ненужных сложностей тоже можно: толковая иерархическая структура позволит эффективно решать вопрос с достаточно узким кругом людей. Но если вы переходите в лигу «1000+ людей в команде», то data-driven подход становится необходим. Он позволит опираться на конкретные данные, которые есть в компании, а не мнение людей.  

Чтобы имплементировать data-driven подход, потребуется определить master data  наиболее важные характеристики, вокруг которых будут строиться различные бизнес-сценарии. Причем они могут касаться не только стаффинга проектов, но, предположим, и обучения сотрудников (например, если анализ покажет, что за последний год вашим инженерам регулярно отказывали в позициях на проектах по причине слабого знания Spring, то вы сможете запланировать программу для прокачки этих навыков). Вариантов масса.  

У ЕРАМ, как у любой крупной компании, есть много данных о командах, запросах и людях на проектах. Это и описания потребностей клиентов, и перечень позиций, и список технологий, которые использовали, и комбинации навыков, которые требовались на разных ролях, и список кандидатов, и многое другое. В то же время отдельным потоком нам поступают данные с рынка: к команде присоединяются новые эксперты и приносят информацию о навыках, которыми обладают.  

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

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

Это далеко не все сценарии использования данных в нашей компании. И естественно, что в этом случае каждый смотрит на данные со своей стороны. Это приводит к тому, что одно и то же начинают называть разными словами. Или наоборот. Потому, имея в ЕРАМ много удобных и полезных внутренних платформ, которые поддерживают различные процессы, мы решили систематизировать информацию. Так сможем избежать путаницы и оптимально пользоваться ресурсами и возможностями, которые есть в компании и на рынке. Важно иметь возможность сравнивать навыки, объединять их в смысловые блоки-сабсеты и использовать в аналитике. Один из сценариев и самых очевидных плюсов такого подхода: проектный менеджер, которому на проекте требуется инженер с десятком навыков, сможет понять, есть ли специалисты с таким опытом в компании, сколько их, а если их нет, то существуют ли они в принципе. Исходя из этого, менеджер примет решение создавать одну или две позиции, искать кандидата внутри компании или выходить с вакансией на рынок.  

Как мы это делаем 

Чтобы применять математические модели в ежедневной работе и эффективно внедрять data-driven подход, нужно сформировать правильный набор как мастер, так и транзакционных данных. Задачей экспертов Центра компетенции Java стала актуализация мастер данных, описывающих скиллы (навыки в технологиях) в рамках Java-экосистемы, а также формирование экспертных оценок их актуальности, степени внедерения на реальных проектах, наличия открытой информации для обучения, степени поддержки этих технологий вендорами и сообществом. В последствии на базе этой информации будет легче отвечать на вопросы бизнеса, описанные выше. 

Мы использовали графовую модель для построения связей между навыками. Их надо было объединить по компетенциям, сгруппировать по подмножествам, чтобы сравнивать в дальнейшем сопоставимые технологии (ведь нельзя ставить в один ряд фреймворк для создания web-приложений с IoT-фреймворком). Для этого  использовали разработанный внутренний продукт EPAM на базе ArangoDB, позволяющий вести мастер-данные. Этот продукт был интегрирован в операционные системы, которые потребляют эту информацию, в качестве источника мастер-данных, чтобы пользователь мог правильно заполнить стаффинг-позицию или личные данные во внутренней системе.  

Упрощенно говоря, наша работа состоит из четырех этапов: 

  1. Формирование мастер-данных

  2. Использование этих данных 

  3. Аналитика 

  4. Построение математической модели для Machine Learning. 

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

Что еще делает Java Competency Center в компании: освежаем память 

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

 Presale support. Мы привлекаем экспертов в помощь presale-команде, когда необходимо разобраться в новой или редкой технологии, особенностях архитектуры или процессов. В год наши участники делают порядка 15 комплексных предварительных презентаций решений. 

 Development & Production. Когда проект уже стартовал или вот-вот начнется, его команде может понадобиться уверенность, что работа идет в правильном направлении. В таком случае эксперты Центра компетенции проводят независимый аудит, оказывают услуги консалтинга. Например, недавно на одном из проектов коллеги столкнулись с  необходимостью тонкой кастомизации Liquibase под конкретный кейс. Эксперты Java CC провели ревью сформулированного решения и поделились своими идеями по дальнейшему развитию с проектной командой. Это позволило ей уверенно продолжить работу.  

Также наши эксперты проводят Architecture and Code review. Делают это в том случае, если команда или менеджмент хочет понять, все ли в порядке на проекте. 

 Competency growth. Для Java Competency Center важно быть не закрытой группой экспертов, а сообществом специалистов, которые делятся знаниями и поддерживают коллег в профессиональном развитии. Потому мы регулярно проводим внутренние и внешние мероприятия, готовим коллег к переходу на следующую карьерную ступень, поддерживаем сертификации и компенсируем их стоимость, сотрудничаем с командами, которые занимаются обучением. 

Есть, например, в нашем багаже задач глобальная модульная менторинг-программа для Java-инженеров разных уровней. Она помогает их менеджерам определить, куда должны расти разработчики, чтобы выйти на новый профессиональный уровень. Как руководитель, так и сам инженер может зайти на программу, просмотреть модули и определить, какие пробелы в знаниях необходимо заполнить. Таким же образом можно в достаточно экстренном порядке подготовить людей к новому проекту, где требуется знание новых технологий. Каждый модуль – это учебные материалы, домашние задания, квизы для проверки знаний. Сейчас программа работает в Украине, Беларуси и Казахстане, скоро мы планируем ее запуск в Чехии, Польше, Венгрии и других странах присутствия ЕРАМ.  

В 2020 в рамках Java Competency Center мы стартовали несколько рабочих групп по разным направлениям. Так мы изучали применимость Kotlin как язык для back-end разработки в проектах компании и привлекательность его с точки зрения бизнеса. Также ЕРАМ заключила партнерство с Azul – компанией, которая делает поставку OpenJDK, предоставляет продукт Zulu Enterprise, который дешевле аналога от Oracle, и другие сервисы. Наши эксперты изучали возможности модернизации виртуальных машин потенциальных клиентов Azul и особенности их миграции на Java 8 и 11. Еще одно перспективное партнерство ЕРАМ – с Lightbend, компанией, которая развивает Scala-технологии на Java-стеке.  На сегодняшний день инженерам компании EPAM доступны обучающие материалы Lightbend, что позволяет им  получать новые, актуальные на рынке навыки, а также проходить сертификацию.

Онлайн кофе-поинт. Наши мероприятия по Java 

В ЕРАМ мы верим в силу сообществ, потому развиваем глобальную платформу Community-Z. На ней можно найти комьюнити по своей технологии. Конечно, есть и по направлению Java. Эксперты из Центра компетенции выстраивают горизонтальные связи между разными городами и странами и привлекают к работе не только коллег, но и широкое сообщество.  

Пандемия сделала такой формат общения своеобразной заменой беседам на кофе-поинтах. Конечно, выступления на наших вебинарах – это не только возможность обменяться опытом, но и прокачать навыки публичных выступлений. От внутренних ивентов до глобальных конференций типа Zed Conference. На последней, кстати, мы как раз рассказывали о работе нашего Центра. Ее запись можно найти здесь.  

Кстати, в скором времени мы собираемся провести Java Z-Day, на который приглашаем всех желающих. 

Источник: https://habr.com/ru/company/epam_systems/blog/548526/


Интересные статьи

Интересные статьи

Предположим, у вас имеется $1000 и вы собираетесь всё это спустить на игровой монитор. За эти деньги можно купить новейший 4K-дисплей с микроскопическими пикселями, обладающий широким дин...
В новостях, обзорах, рейтингах, примерах и сравнениях часто мелькают названия компаний с приставкой SaaS. Компании, предоставляющие программное обеспечение как сервис по подписке...
Много всякого сыпется в мой ящик, в том числе и от Битрикса (справедливости ради стоит отметить, что я когда-то регистрировался на их сайте). Но вот мне надоели эти письма и я решил отписатьс...
Я фриланс, и потому «и швец, и жнец, и на дуде игрец». И значительная часть рабочего времени уходит на переговоры с потенциальными заказчиками. Вот то базовое непонимание, которое я наблюдаю у лю...
Без преувеличения можно сказать, что SQL — один из самых распространенных в мире языков. Информационные системы могут быть написаны на Java, Python, JavaScript, C#, PHP и десятке других языко...