Сегодня ЕРАМ это сообщество из более 40 000 экспертов по всему миру. В таких масштабах для качественной работы с большими объемами данных и правильной оценки ресурсов нужны нетривиальные подходы. Некоторыми такими подходами делится ЕвгенийМоспан, SeniorSolutionArchitectи руководитель Центра компетенцииJava.
Больше года назад Евгений с коллегами начали работать над технологическим радаром по своему стеку. Вскоре эксперты обнаружили, что стоит объединиться с коллегами из разных локаций и команд и вместе создавать более масштабный, глобальный продукт. Лучшими практиками и вынесенными уроками на пути внедрения data-driven подходов в управление Евгений делится в этом материале. Если ваша компания планирует активный рост будет полезно.
Почему это важно
Пока ваша команда относительно невелика вопрос систематизации данных стоит не так остро. Появляется проект и вы с ходу знаете, есть ли у вас необходимая экспертиза и люди или нет, будут ли с этим риски. В компании средних размеров избежать ненужных сложностей тоже можно: толковая иерархическаяструктура позволит эффективно решать вопрос с достаточно узким кругом людей. Но если вы переходите в лигу 1000+ людей в команде, тоdata-drivenподход становится необходим. Он позволит опираться на конкретные данные, которые есть в компании, а не мнение людей.
Чтобы имплементироватьdata-drivenподход, потребуется определитьmasterdata наиболее важные характеристики, вокруг которых будут строиться различные бизнес-сценарии. Причем они могут касаться не толькостаффингапроектов, но, предположим, и обучения сотрудников (например, если анализ покажет, что за последний год вашим инженерам регулярно отказывали в позициях на проектах по причине слабого знанияSpring, то вы сможете запланировать программу для прокачки этих навыков). Вариантов масса.
У ЕРАМ, как у любой крупной компании, есть много данных о командах, запросах и людях на проектах. Это и описания потребностей клиентов, и перечень позиций, и список технологий, которые использовали, и комбинации навыков, которые требовались на разных ролях, и список кандидатов, и многое другое. В то же время отдельным потоком нам поступают данные с рынка: к команде присоединяются новые эксперты и приносят информацию о навыках, которыми обладают.
Нашимpresale-специалистам и другим экспертам, которые работают с потенциальными клиентами, приходится лавировать среди этих массивовданных, чтобы понять, какие технологии востребованы, какие набирают популярность, какие представлены большой экспертизой в компании, а какие потребуют найма людей извне.Чаще всегоэтоогромные объемы разрозненных данных.
Идеально, когда речь идет о проекте, позицию на немсоздаватьне с помощью словесного описания, а собиратьиз условных блоков информации, перечня навыков. Да и человек, который приходит в компанию, тоже может создать свой профиль во внутренних системах, зафиксировав навыки в виде заготовленных блоков информации.
Это далеко не все сценарии использования данных в нашей компании. И естественно, что в этом случае каждый смотрит на данные со своей стороны. Это приводит к тому,чтоодно и то женачинают называтьразными словами. Или наоборот. Потому, имея в ЕРАМ много удобных и полезных внутренних платформ, которые поддерживают различные процессы, мы решили систематизировать информацию. Так сможем избежать путаницы и оптимально пользоваться ресурсами и возможностями, которые есть в компании и на рынке. Важно иметь возможность сравнивать навыки, объединять их в смысловые блоки-сабсетыи использовать в аналитике. Один из сценариев и самых очевидных плюсов такого подхода:проектный менеджер, которому на проекте требуется инженер с десятком навыков, сможет понять, есть ли специалисты с таким опытом в компании, сколько их, а если их нет, то существуют ли они в принципе. Исходя из этого, менеджер примет решение создавать одну или две позиции, искать кандидата внутри компании или выходить с вакансией на рынок.
Как мы это делаем
Чтобы применять математические модели в ежедневной работе и
эффективно внедрятьdata-drivenподход, нужно сформировать правильный
наборкак мастер, так и транзакционныхданных.Задачей экспертовЦентра
компетенцииJavaсталаактуализациямастер
данных,описывающихскиллы(навыкив технологиях) в
рамкахJava-экосистемы, а такжеформирование экспертных оценок их
актуальности,степенивнедеренияна реальных проектах, наличия
открытой информации для обучения, степени поддержкиэтих технологий
вендорами и сообществом. Впоследствиина базеэтой
информациибудетлегчеотвечать на вопросы бизнеса, описанныевыше.
Мы использовалиграфовуюмодель для построения связей между навыками. Их надо было объединить по компетенциям, сгруппировать поподмножествам, чтобы сравнивать в дальнейшем сопоставимые технологии (ведь нельзя ставить в один ряд фреймворк для созданияweb-приложений сIoT-фреймворком). Для этогоиспользовали разработанный внутренний продуктEPAMна базеArangoDB, позволяющийвести мастер-данные.Этот продукт был интегрирован воперационные системы, которые потребляют эту информацию,в качестве источника мастер-данных,чтобы пользователь мог правильно заполнитьстаффинг-позицию или личные данные во внутренней системе.
Упрощенно говоря, наша работа состоит из четырех этапов:
-
Формирование мастер-данных
-
Использование этих данных
-
Аналитика
-
Построение математической модели дляMachineLearning.
Сейчас мы на третьем этапе. Он самый важный. Делаем выборки, используя различные критерии, изучаем разные системы, которые используютнаши специалистыв ежедневной операционной работе. Особенность в том, что у каждой собственные мастер-данные, которые мы и хотим унифицировать, чтобы не было расхождений во время поиска. Нам нужно единое место, где навык Java определен в таксономии скиллов в дереве графа и все остальные системы на него ссылаются. По сути, мыс коллегами из разных стран и командсоздаем первоисточник всех данных.
Что еще делаетJavaCompetencyCenterв компании:освежаем память
О структуре, возможностях и основных задачах мырассказывали ранее. Сегодня у Центра компетенции есть несколько ключевых векторов работы:
-
##
Есть, например, в нашем багаже задач глобальная модульнаяменторинг-программа дляJava-инженеровразных уровней. Она помогает их менеджерам определить, куда должны расти разработчики, чтобы выйти на новый профессиональный уровень. Как руководитель, так и сам инженер может зайти на программу,просмотретьмодулииопределить, какие пробелы в знаниях необходимо заполнить. Таким же образом можно в достаточно экстренном порядке подготовить людей к новому проекту, где требуется знание новых технологий. Каждый модуль это учебные материалы, домашние задания,квизыдля проверки знаний. Сейчас программа работает в Украине, Беларусии Казахстане, скоро мы планируем ее запуск в Чехии,Польше, Венгриии других странах присутствия ЕРАМ.
В2020в рамкахJavaCompetencyCenterмы стартовалинесколькорабочих групп по разным направлениям. Так мы изучалиприменимостьKotlinкак язык дляback-endразработкив проектахкомпании и привлекательность его с точки зрениябизнеса. Также ЕРАМ заключила партнерство сAzul компанией, которая делает поставкуOpenJDK, предоставляет продуктZuluEnterprise, который дешевле аналога отOracle, и другие сервисы. Нашиэксперты изучали возможности модернизациивиртуальных машин потенциальных клиентовAzulи особенности их миграции наJava8 и 11. Еще одно перспективное партнерство ЕРАМ сLightbend, компанией, которая развиваетScala-технологии наJava-стеке.На сегодняшний деньинженерам компании EPAMдоступны обучающие материалыLightbend, что позволяетимполучатьновые, актуальные на рынке навыки, а также проходить сертификацию.
Онлайн кофе-поинт. Наши мероприятия поJava
В ЕРАМ мы верим в силу сообществ, потому развиваем глобальную платформуCommunity-Z. На ней можно найти комьюнити по своей технологии. Конечно, есть и по направлениюJava. Эксперты из Центра компетенции выстраивают горизонтальные связи между разными городами и странами и привлекают к работе не только коллег, но и широкое сообщество.
Пандемия сделала такой формат общения своеобразной заменой беседам на кофе-поинтах. Конечно, выступления на наших вебинарах это не только возможность обменяться опытом, но и прокачать навыки публичных выступлений. От внутренних ивентов до глобальных конференций типаZedConference. На последней, кстати, мы как раз рассказывали о работе нашего Центра.Ее запись можно найти здесь.
Кстати, в скором времени мы собираемся провестиJavaZ-Day,на который приглашаем всех желающих.