Разместить

СПЕЦИАЛИЗАЦИИ В IT: КТО ЧЕМ ЗАНИМАЕТСЯ ПРИ РАЗРАБОТКЕ ПРОДУКТА. ПОЭТАПНЫЙ РАЗБОР

работа за компьютером офис работник профессия

Команда РаботавРоссии.РФ основательно взялась за задачу разобраться с направлениями в IT – с содержанием задач, статусом специалистов на рынке труда (их востребованностью, уровнем конкуренции и зарплат). Да, вся эта информация есть в интернете, если поискать. Мы решили собрать мнения, актуальные на сегодня, в одной серии статей, чтобы искать не было необходимости.

 

Среди экспертов, которые откликнулись на наш запрос – рассказать о профессиях в IT – Илья Габрусь, руководитель направления проектов развития бизнеса Центра разработки Ctrl2GO. Как истинный руководитель и аналитик, он разложил процесс разработки по полочкам и рассказал о специализациях в IT в контексте работы над созданием продукта. Эта информация будет полезна не только для людей, которые задумываются над получением профессии в IT, но и для руководителей проектов, а также для представителей компаний, которые планируют поиск команды для создания IT-продукта.

 

 

Вопросы, на которые отвечает статья:

  1. Из каких этапов состоит процесс разработки? Какие специалисты участвуют в каждом этапе, кто играет ключевую роль?
  2. Как формируется команда, которая будет работать над созданием продукта в IT? Как ее масштабировать, когда заказов становится больше?
  3. Какие IT-компании становятся лидерами на рынке труда?

 

 

Из каких этапов состоит процесс разработки, компетенции специалистов

20-30 лет назад распределения по направлениям не было. Думаю, тогда и был сформирован лозунг «все IT-шники – программисты», так как в трудовые книжки вписывали должность «программист-разработчик». Во многом это было связано с тем, что культура программирования только развивалась и формировался тренд отрасли.

Теперь давайте рассмотрим текущее распределение направлений с увязкой к этапам разработки:

Аналитик – занимается описанием и постановкой задач для разработчика, связующее звено между клиентом и разработчиком:

  • бизнес-аналитик – анализирует и глубоко понимает бизнес-процессы Заказчика;
  • системный аналитик – систематизирует данные и ТЗ для разработчика;
  • технические писатели – документируют в рамках процессов разработки, готовят руководства пользователя и администратора, чтобы донести механизм работы.

Data Scientist – исследует и структурирует большие массивы разрозненных данных:

  • инженер техподдержки – помогает клиенту решить проблемы в период передачи заказного решения;
  • математик – разрабатывает новые алгоритмы поведения системы с применением теории вероятности.

Архитектор – проектирует архитектурные решения:

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

Разработчик – пишет код:

  • backend-разработчик – реализует серверную часть кода разработки;
  • frontend-разработчик – разрабатывает веб-интерфейс серверной части;
  • mobile-разработчик – пишет код для операционных систем мобильных устройств;
  • графические программисты – создают сложные изображения в играх, фильмах и других медиа продуктах;
  • AR/VR-разработчик – реализует решения виртуальной и дополненной реальности, заранее смоделированные в объектных типах;
  • ML-разработчик – работает над машинным обучением с помощью специальных наборов данных и алгоритмов.

Дизайнер – отвечает за удобство продукта и его привлекательный внешний вид:

  • UX-дизайнер – разрабатывает пользовательский интерфейс решений;
  • UI-дизайнер – отрисовывает интерфейс на основе UX-данных и реализует физические характеристики продукта;
  • 3D-дизайнер – создает реалистичные объекты в виртуальном пространстве с максимальной достоверностью.

Тестировщик – отвечает за разработку тестовых ситуаций и проектирование тестовых сценариев:

  • автотестировщик – разрабатывает программы для автоматического тестирования основных блоков разработки;
  • ручной тестировщик – выполняет ручное прокликивание функций.

Инженеры по эксплуатации – 3-я линия поддержки разработанных заказных решений.

Системные администраторы – поддерживают работоспособность hard-части («железа»).

Специалист по информационной безопасности – отвечает за сохранность данных и устранением угроз или нападений.

Руководитель проекта – дирижирует командой для соблюдения срока, бюджета и качества заказной разработки.

Каждый специалист имеет свой грейд в соответствии с базовым распределением (практически все компании базово оперируют этой структурой):

  1. lead – опыт работы от 6 лет;
  2. senior – опыт работы от 4 лет;
  3. middle – опыт работы от 3 до 5 лет;
  4. junior – опыт работы от 1 до 2 лет;
  5. intern – без опыта работы.

 

 

Как формируется команда, как ее масштабировать

На первом этапе реализации проекта формируется команда, структура которой практически идентична от проекта к проекту. На всех этапах разработки работает группа сопровождения: HR, аккаунт и ресурсный менеджеры, которые обеспечивают процесс операционного функционирования с блоками компании.

При увеличении количества проектов у одного заказчика формируется отдельная матричная ветка в структуре Центра разработки . Она обеспечивает оптимальное распределение ресурсов ядра команды. Ядро – те специалисты, которые обладают экспертными данными в своем направлении.

 

Какие IT-компании становятся лидерами на рынке труда

Преимуществом обладают те компании, которым удалось реализовать на своей стороне систему с непрерывным процессом найма, подготовки, ротации и удержания junior-специалистов на всех этапов карьерного развития. Люди, которые прошли за 3-5 лет все этапы внутри компании, которые понимают, как работают процессы, поднимают компанию все выше по лестнице бизнес-успеха – именно они позволяют инвестировать деньги в развитие специалистов вместо того, чтобы тратить их на найм.

 

Советы руководителям IT-компаний и подразделений, которые занимаются разработкой

  1. Чётко описывайте структуру управления и группируйте вакансии. Это помогает вести базу кандидатов и получать быстрые результаты, когда нужно закрыть вакансии.
  2. Выстраивайте работу с кадровыми агрегаторами. Сборка команд ускорится.  Полезно также мониторить рынок зарплат, чтобы разработка не обходилась неоправданно дорого.
  3. Развивайте кадровый резерв. Это самый сложный и затратный формат, но он принесет в будущем наибольшие эффекты при масштабировании бизнеса.
  4. Формируйте HR-бренд. Это снизит затраты на прямой найм и повысит лояльность к компании.
  5. Группируйте и проводите ротацию сотрудников по принципу Парето (20% ядро и 80% сопутствующая группа). Это позволит сотрудникам всегда быть мотивированными и понимать цель работы.