Инновационный центр

Руководитель отдела разработки цифровых сервисов рассказал о работе подразделения и тонкостях профессии

Николай Стружко: «В разработке все начинается гораздо раньше, чем код»…

Инновационный центр «Безопасный транспорт» продолжает рассказывать о том, чем занимаются сотрудники консалтинга, IT, Big Data и аналитического направлений в Транспортном комплексе Москвы. На этот раз, Руководитель отдела разработки цифровых сервисов ИЦ «Безопасный транспорт» Николай Стружко поделился, что python-разработчики делают для улучшения работы Московского транспорта, с чего начинается код в IT-продуктах для решений внутри госсектора, а еще рассказал о time-менеджменте в отделе python-разработчиков, hard и soft скиллах руководителя и рецепте идеального отдыха айтишника.
Приверженность любимому делу открывает возможности для роста и развития
Интерес к программированию у Николая сформировался еще в школьные годы. Увлеченность любимым занятием и усердный труд почти сразу принесли свои плоды. Участие в олимпиадах, конкурсах и турнирах по спортивному программированию позволили ему без экзаменов поступить на бюджет, вместе с этим пришел первый доход. Высшее образование Николай получал в МИФИ по направлению «Прикладная математика и информатика», кафедра «Системного анализа», параллельно учебе занимался фрилансом.
От начала карьеры до руководителя разработчиков в одном из подразделений Транспортного комплекса Москвы
Постепенно студенческий фриланс начал перерастать в коммерческий опыт.
В начале карьеры Николай работал помощником системного аналитика, младшим разработчиком-стажером и на других стартовых позициях.
«Потом решил, что хочу быть скорее системным аналитиком и устроился на эту позицию в компанию-интегратор. Постепенно, в разных проектах выступал в роли руководителя. Через 1,5 года перешел в банк и там возглавил направление разработки: курировал проекты и отвечал за группу разработчиков, ну, и конечно же, сам писал код. Три года назад попал в Инновационный центр, теперь с командой работаем над проектами в контуре Транспортного комплекса».
До прихода в ИЦ, на фрилансе и внутри коммерческих компаний, Николай занимался версткой отдельных компонентов по проектам, а также полным выстраиванием архитектуры.
«В банке, например, одним из направлений были кредиты, мы вели сбор данных о клиентах и скоринговыми процедурами клиентов».
Скоринг — это система оценки заемщика. С ее помощью банки и крупные микрофинансовые организации (МФО) могут оценить, насколько аккуратно человек будет выплачивать кредит. В основе прогноза лежат математические расчеты и статистика.
Тонкости менеджмента в отделе python-разработчиков
На выстраивание любых процессов организации влияет ее сфера и направление деятельности, от этого зависят особенности менеджмента, а также задачи команды и атмосфера. Например, процесс работы python-разработчиков в финтехе подразумевал планирование длительных спринтов. Команды там заточены на решение более узких задач внутри одного или нескольких продуктов\проектов, то есть там проще разбить все на конкретные спринты.
Спринт — это одна ограниченная по времени итерация непрерывного цикла разработки, позволяющая довольно быстро достичь лучших результатов.
Особенность госсектора, на примере Транспортного комплекса, заключается в разноплановой вовлеченности. Проектов много, постоянно появляются новые и пересматриваются приоритеты.
«Одна из наших сильных сторон — гибкость и умение подстраиваться под ситуацию.
Со стороны процессы могут казаться затянутыми, но на самом деле это совсем не так. Руководитель python-разработчиков в госсекторе постоянно держит руку на пульсе… Приходиться прокачивать тайм-менеджмент до самого высокого уровня и овладевать навыками управления человеческими ресурсами, в общем быть самураем. В нашем случае проектов много, и они разные, поэтому крайне важно выстраивать работу в балансе ресурсов, времени, качества и сроков. Проекты должны сдаваться так, чтобы в команде не было переработок или выгорания сотрудников».
Hard и Soft skills руководителя разработчиков
Hard skills (англ. «жесткие» навыки) — это профессиональные/технические навыки, которые можно измерить. Примеры таких навыков: программирование, вождение автомобиля, чтение, знание иностранного языка.

Soft skills (англ. «мягкие» навыки) — это универсальные социальные/волевые компетенции, которые достаточно сложно измерить. Примеры: коммуникабельность, умение работать в команде, креативность.
Быть самураем с максимально «прокаченным» уровнем навыков в области тайм-менеджмента — это не все обязательные качества, которыми необходимо обладать руководителю python — разработчиков.
«Нужно знать большинство технологий, с которыми работает твоя команда, и в целом обладать широким спектром hard скиллов: от архитектуры и выявления требований до тестирования. А далее это soft скиллы и те процессы, которые выстраиваются, опираясь на различные факторы и вводные».
Николай Стружко отмечает, что soft skills в IT — это в первую очередь умение выявлять потребность и запрос, с которым к тебе обратились. Важно уметь погружаться в предметную область, формулировать потребность и, конечно, адресовать ресурсы в правильном направлении. Особенно ценится этот навык в ситуации неопределенности, когда заказчик до конца не понимает, какой результат он получит. В такой ситуации важно нащупать эту отправную точку и затем, оттолкнувшись от нее, выстроить все процессы.
С чего начинается код?
В далекой-далекой галактике, где IT-специалисты живут отдельно от людей других профессий, существует миф о том, что разработчики просто пишут код. На самом деле все начинается гораздо раньше.
«Во главе создания любого решения, где применяется код, стоит заказчик и его потребности. На вектор развития проектов влияет то, насколько правильно выявлен запрос. Линейно этот процесс можно отразить так: потребность -> анализ требований и первичное проектирование -> согласование требований -> если необходимо, дизайн -> проектирование всей архитектуры с уточнением требований и уже после начинается реализация этого всего, тестирование, публикация. В процессе требования уточняются, меняются и так далее.

В целом, есть такое понятие, как жизненный цикл разработки: Анализ, составление требований к продукту. Планирование. Проектирование и дизайн. Разработка. Тестирование. Развертывание, эксплуатация. Вот так мы и работаем».
Какой он идеальный отдых «питониста»?
IT-специалисты много времени проводят за компьютером. Порой даже слишком много. Поэтому перезагружаются с помощью активного отдыха. В планах Николая — путешествия и спорт:
«Например, в ближайший отпуск, первую неделю проведу в Китае, а на второй буду на Урале на природе. В спорте отдаю предпочтение единоборствам, но в целом поддерживаю любую активность. В детстве занимался дзюдо и боксом, в универе Самбо и, кстати, участвовал в турнирах. А сейчас скорее некий микс: тренажёрный зал, баскетбол, сноуборд, вейкборд».
О планах по личностному росту
«Глуп тот человек, который никогда не меняет своего мнения». Как я уже говорил, для меня одно из важных качеств python-разработчиков — гибкость. Поэтому отношусь нормально к тому, чтобы в зависимости от внешних факторов, пересматривать планы и цели. Ближайшее карьерное будущее точно вижу в разработке, а что касается Транспортного комплекса: Москва развивается, и приятно осознавать, что являешься частью этого процесса и можешь, применяя и совершенствуя знания и навыки, сделать что-то полезное для ТК, города и его жителей».