Практикой Digital Engagement называют создание умных решений, которые привлекают пользователей и помогают компаниям эффективно с ними взаимодействовать. Именно с их помощью можно купить автомобиль в два клика, оплатить товар кредиткой с мобильного или быстро найти ресторан по вкусу. О том, как вызов цифрового времени меняет Frontend-команды в Украине, борьбе с ленью и важности саморазвития рассказывает Дмитрий Зиновьев, Software ENGINEering Manager, глава Frontend-разработки в харьковском офисе EPAM.
Дмитрий Зиновьев более 10 лет в IT индустрии, 5 из которых на руководящих должностях.
С середины 2014 года возглавляет направление Front-End в харьковском EPAM.
Свой профессиональный путь начинал с разработки web-сервисов, дошел до позиции руководителя по социальным сервисам украинского портала <META>.
Долгое время работал в качестве R&D Development Manager в компании TOA Technologies, где в совершенстве освоил Delivery Management.
Одна из четырех видов практик, которыми занимается EPAM, носит название Digital Engagement. Как бы вы определили, что это за решения?
Digital Engagement буквально переводится как “цифровое вовлечение [аудитории]” или “цифровое взаимодействие”. Это название объединяет IT-решения, которые помогают нашим заказчикам завоевывать симпатии клиентов, вовлекая их в работу с компанией и ее сервисами. Сегодня большую часть составляют web-решения. Это может быть мобильное приложение для “примерки” одежды online, полноценный online-магазин или цифровая рекламная кампания.
Frontend-разработка является неотъемлемой частью создания всех этих решений, в том числе под мобильные устройства. Одностраничные приложения (single-page applications) конкурируют с “родными” за счет расширенных возможностей JavaScript, таких, как хранилище данных, работа с камерой и видеопотоками, доступ к GPS и многое другое.
В рамках практики Digital Engagement EPAM создает продукты для достижения бизнес-целей наших клиентов, независимо от наличия у последних собственной IT-инфраструктуры.
В 2015 году JavaScript занял первое место по популярности на GitHub и Stack Overflow. Это результат спроса на подобные решения? И какова ситуация в Украине?
Верно: за последние несколько лет спрос на грамотных Frontend-специалистов по всему миру вырос в разы . Мы иногда даже не успеваем “подхватить” все приходящие к нам запросы. Изменилась сама структура спроса. Это можно легко увидеть на примере нашей харьковской Frontend-команды. За год она выросла вдвое, и сейчас из 100 специалистов большинство составляют JavaScript-разработчики, тогда как года 3 назад превалировали web-разработчики, использующие .NET, PHP, Python, Perl в связке с HTML, CSS и JavaScript.
Выходит, часть из них потратили свое время, чтобы переучиться?
Да, но постоянно учиться, инвестировать свое время в учебу необходимо всем. Я считаю, что специалисту непосредственная работа над проектом в самом лучшем случае дает треть нужных навыков для профессионального развития. Если заниматься исключительно проектной работой, начинаешь теряться в новых технологиях, вязнуть в одном домене. Состояние стагнации наступает незаметно. Потом лишь оглядываешься по сторонам и осознаешь, что тенденции “убежали” на несколько лет вперед. Начинаешь жалеть себя, а в худшем случае – винить всех вокруг.
В больших компаниях в чем-то, конечно, легче держать руку на пульсе. У нас в Харькове одновременно в работе около двадцати пяти проектов разного калибра и направления, ребята набираются опыта на каждом из них, обмениваются опытом и впечатлениями, но и этого недостаточно.
Что же нужно делать, какие умения развивать? Существует ли, на ваш взгляд, идеальный сценарий?
Одного идеального сценария, который работал бы для всех, безусловно, нет. Я пришел к выводу, что вплоть до позиции старшего разработчика для абсолютного большинства ключевыми являются технические навыки. А вот дальше ФОКУС надо сместить на развитие soft skills. На этом уровне специалисты открыты к новому, каждый день что-то читают, разбираются в новом языке программирования. А вот нехватка soft skills становятся камнем преткновения, который мешает развиваться, идти в лидеры, выстраивать долгосрочные отношения с клиентами, менеджерами, со своими коллегами.
Это приводит к тому, что люди не могут обучать других, управлять процессами и т. д. Все это банальные вещи, но я сталкиваюсь с этим регулярно. Работать над soft skills крайне сложно, оттого мы и ленимся. Одно дело – технические навыки: разобрался и выучил. Другое дело – когда тебе, фактически, говорят: “А теперь не будь таким, каким ты был последние 30 лет”.
Тем не менее, у нас есть люди, которые прошли по этому пути и достигли больших высот.
Но на это нужно время… Как же быть с проектной загрузкой?
Время на развитие навыков есть практически всегда. Будем объективными: человек ведь не работает 8 часов без остановки, разве что на старте, когда нужно наладить процесс разработки или решить кризисную ситуацию.
Комфортно сосредоточиться только на одной задаче? Когда мы выходим на кухню, то моментально можем переключиться на какой-то разговор, полностью выйти из рабочего контекста, а затем вернуться на рабочее место и продолжить работать. Инвестиция в размере всего одного часа в день дает полтора дополнительных месяца в году для обучения себя и команды.
Компания-работодатель как-то помогает развиваться?
Да, но компании это делают на разном уровне и, к сожалению, не все. На собеседованиях я часто слышу, что рост ограничивается отсутствием профильного сообщества или тем, что нет свободных позиций на уровень выше.
Многие из тех, кто готовы работать над собой, ищут возможности и приходят в EPAM. Мы очень серьезно подходим к развитию команды, сообщества, добавляем новые инструменты, постоянно что-то обновляем. Центр компетенций по нашему направлению насчитывает уже более 900 специалистов в СНГ и Европе, что, безусловно, способствует общему росту экспертизы.
Допустим, я Frontend-специалист в вашем отделе, пришла к вам, и говорю: хочу расти. Что дальше?
Для начала мы спросим вас, в каком направлении вы хотите двигаться, поможем обозначить долгосрочные перспективы. Бывает, отвечают: “Я хочу быть экспертом в такой-то технологии”. И что дальше? “Ну, может стать lead-разработчиком”. Так вот, это не цель. Это промежуточный шаг, с ним все просто: подключаешься к существующему проекту или стартуешь внутренний, проходишь тренинги, становишься ментором, и через год ты владеешь необходимыми практическими и академическими навыками. Опять же, что дальше? Кто-то говорит: “Дальше, наверное, нужно идти в менеджмент, а мне не очень хочется”.
На самом деле, есть варианты на любой вкус. Вот поэтому мы заранее раскроем вам все карты, продемонстрируем прозрачность возможных путей роста в EPAM: Chief Software Engineer, Solution Architect, Delivery Manager и так далее.
То есть пути достижения этих целей могут быть совершенно разные?
На определенных этапах – да, разветвляются. Надо рассматривать конкретный случай. А набор инструментов очень схож и всем доступен: тренинги для различных уровней специалистов, менторские программы, внутренние проекты, Research & Development, различные события от TechTalk до Hackathon и многое другое. Все это уже процессы и сервисы на регулярной основе, которые дают большие возможности профессионального роста. А существуют они благодаря сильному и активному сообществу.
Взять хотя бы Рre-production, то есть подготовку молодых специалистов. В ней участвуют больше половины нашей команды. EPAM много инвестирует в сотрудничество с высшими учебными заведениями и студентами, и это дает колоссальный результат для всех участников.
Когда есть свободные руки, мы помогаем с внутренними проектами, по точно такой же схеме, как клиентам. Собеседуем команду, назначаем сроки и идем по правильным процессам. Используем технологию, которая нам сейчас интересна, разбираемся, и на выходе получаем полноценный продукт.
Если так, то и проблемы на таких “тренировочных” проектах бывают не совсем игрушечные?
Конечно, на любых проектах далеко не всегда работа идет гладко, в соответствии с теорией. Главное ‒ уметь извлечь правильный опыт из проблемной ситуации, вырасти и научиться предотвращать возникновение подобных ситуаций в будущем. Этот навык самоанализа и саморазвития является ключевым отличием между Software Coder и Software Engineer. Мы инвестируем именно в Software Engineering.
С этой темой связан часто задаваемый вопрос на собеседованиях: “У вас есть интересный проект?”. Отвечаю: конечно есть, и не один, только они не всегда гарантируют вам профессиональный рост”. Нужно искать сложный проект, где можно продемонстрировать свои навыки и построить рабочее решение, процесс или команду. Не место красит человека, а человек место.
Какие планы вашей команды в обозримой перспективе?
Работать вместе, учиться и развивать сообщество, культуру обмена знаниями. Вырасти командой Front-End еще вдвое, расширить экспертизу по всем техническим стекам, практикам и фреймворкам, которые востребованы на рынке. Сформировать экспертные группы, которые будут двигать это направление, назначить ответственных за все эти инициативы, описать процессы.
У нас отличные профессионалы, и самое интересное происходит, когда эти умы собираются вместе. Cообщество развивается, профессионализм растет, ну, и работа приносит все больше удовольствия. Вот этого-то мы и добиваемся.