«Много задач на смекалку». Что делает системный интегратор в Solbeg? (+вакансии)
Максим Листухин окончил БГУИР по специальности телекоммуникации и телевидение. Работал руководителем группы интеграции и поддержки систем аналитики у крупного белорусского телеком-оператора. Теперь он системный интегратор в аутсорс-компании SolbegSoft. Максим рассказал dev.by про особенности профессии, будни интегратора и личный профессиональный опыт.
Какие основные обязанности системного интегратора в SolbegSoft?
Системный интегратор, или Integration Engineer — это профессия, в которую могут прийти тестировщик, системный и сетевой инженер со знаниями облачных сервисов, если им захочется чего-то нового.
В SolbegSoft системные интеграторы разворачивают OTT платформу для того, чтобы конечный юзер мог воспользоваться всеми функциями Cloud TV. Работаем с платформой израильской телекоммуникационной компании Kaltura. Например, нужно настроить 150 каналов. У каждого из них свой адрес, который поставщик нам передает. Я поднимаю документы и спецификацию, подготавливаю скрипты для массовой конфигурации и настраиваю систему на платформе Kaltura. Одним словом, устанавливаю нужные версии всех компонентов и адаптеров, чтобы передать полностью готовый к работе сервис.
Вот чем конкретно я занимаюсь:
Настраиваю системы условного доступа DRM, которые защищают контент от нелегального копирования. Для этого пользуюсь особым софтом, который создали разработчики Kaltura. Системы работают на стандартных компонентах и могут быть интегрированы в любую платформу.
Настраиваю системы для конкретного оператора. Например, телевизионные каналы и все их атрибуты. Здесь я объединяю все этапы: как юзеры регистрируются, как оплачивают подписку и т. д.
Интегрирую сервис с биллингом оператора или платежной системой, если такая есть.
Подключаю платформы к публичной или частной сети доставки контента (CDN), настройка ее авторизации и маршрутизации.
Бывает, что мы сталкиваемся с нетипичными задачами, которые еще ни разу не выполнялись, следовательно, у нас нет отработанных механизмов их решения. В этом случае изучаем техническую документацию от Solution Architect. Он ее создает по каждому адаптеру, микросервису и другому компоненту. Может помочь и Project Manager со спеками на Confluence. Если и это не помогает, то системный интегратор ищет ответы у команды разработчиков.
Чем еще занимается системный интегратор?
Круг обязанностей системного интегратора в SolbegSoft очень широкий. Вот что он еще делает:
Вычитывает архитектуру всего решения и дает фидбек. Ее пишет Solution Architect вместе с клиентом. А наша экспертиза помогает ее улучшить.
Работает с веб-интерфейсом и с гибкими продуктами внутри него. Располагает элементы, регулирует цвет, соединяет платформу с платежными шлюзами, системами условного доступа, провайдерами персональных рекомендаций.
Проводит интеграцию продукта с внутренними системами клиента. Например, с клиентским биллингом. Это помогает передавать Kaltura данные о финансовом поведении пользователя в системе: какие смотрел каналы, какие приобретал подписки и т. д.
Проводит интеграцию с сервисами других поставщиков.
Проверяет работоспособность сборки по запросу от QA Engineer. Иногда случается, что тестировщики обнаруживают неизвестный баг. В этом случае мы помогаем с ним разобраться, чтобы исключить вариант проблемы ПО.
Создает и заполняет документацию на Confluence: что было сделано, когда, на каком аккаунте и клиенте и т. д. Обычно это происходит после того, как мы деплоим новые версии адаптеров и микросервисов и устанавливаем на staging, pre-prod и prod.
Консультирует клиента и передает ему знания о созданной системе до релиза продукта. После запуска интегратор помогает по запросу техподдержки. Самый частый запрос, например, почему не сработал сервис. Я при необходимости воспроизвожу ситуацию, смотрю логи с помощью сервиса logz.io и анализирую, в чем была причина сбоя.
Настраивает frontend приложения. Решение имеет пользовательские приложения для всех популярных платформ — Web, mobile Android \ iOS, STB, Smart TV различных производителей. Их внешний вид, содержимое и пункты меню необходимо настроить согласно дизайну предоставленному клиентом
Я пользуюсь стандартными решениями для управления разработкой ПО:
Система отслеживания задач Jira.
Система совместной работы Confluence.
Инструменты для автоматизированного deployment новых версий программного обеспечения.
Сетевые анализаторы и софт для тестирования API например, Wireshark, Postman, Fiddler, DevTools браузера.
Сервисы для сбора и анализа log файлов.
Системы мониторинга и визуализации Grafana.
Системы управления облачной инфраструктурой и сервисами.
Системы управления различными базами данных и системы хранения документов: MS SQL, CouchBase, Elasticsearch.
Хороший текстовый редактор, чтобы проверять и редактировать большие XML или JSON файлы.
Что драйвит в профессии?
Специальность системного интегратора дала мне возможность получить hands on опыт работы с топовыми сервисами Amazon’а, Docker, Kubernetes и другим современным ПО. Мне знакома сфера облачного телевидения, поэтому интересно глубже в нее погрузиться.
Еще здорово то, что появляется много задач на смекалку. Для их решения нужно проявлять креативность. Одну неделю я бился над проблемой конфигурации, опытные коллеги даже советовали просто завести баг и забыть о проблеме. Но я не сдался, переосмыслил ее и нашел ее причину. Это подняло настроение на несколько дней вперед.
Бывают и сложности. Скажем, первичное знакомство с архитектурой решения. Порой оно может показаться запутанным, но просто нужно потратить немного больше времени на погружение.
Что нужно знать и уметь, чтобы стать системным интегратором?
К необходимым soft skills отнесу:
Умение планировать.
Внимательность.
Системное мышление. Специалист видеть решение в целом, уметь раскладывать его на составляющие, упорядочивать и находить взаимосвязи и зависимости.
Коммуникативные навыки. Нередко приходится общаться с клиентами напрямую, поэтому важно понимать их требования и пожелания.
Уверенное знание английского языка. Он необходим для общения с коллегами и клиентами по всему миру.
Что касается специализированных навыков, здесь важно:
знать принципы работы облачных сервисов (servers, web-servers, load-balancers),
уметь пользоваться и интегрироваться с различными типами баз данных,
пользоваться Windows и Linux на уровне администратора,
уметь писать, читать и редактировать скрипты на хотя бы одном из популярных языков: Python, Shell, Java.
знать основные сетевые протоколы HTTP, HTTPS, DNS, FTP, SSH и иметь понимание модели OSI, маршрутизации в сети Интернет
обладать пониманием микросервисной и облачной архитектуры построения приложений, контейнеризации.
На проекте Kaltura мне пригодились знания современных способов и технологий доставки видеоконтента до потребителя (ОТТ, CDN, DRM), принципы построения CloudTV решений.
Как показывает практика, требований к высшему образованию для вхождения в профессию нет. Гораздо важнее скиллы и опыт.
Сам я окончил Белорусский государственный университет информатики и радиоэлектроники по специальности «телекоммуникации и телевидение». Работал руководителем группы интеграции и поддержки систем аналитики у крупного белорусского телеком-оператора. Затем пришел в SolbegSoft.
Литература и курсы по специальности
Рекомендую почитать книгу «Компьютерные сети. Принципы, технологии, протоколы» Виктора Олифера. Пройдите курсы по Linux и Python. Ознакомьтесь с основными сервисами, предоставляемыми облачными провайдерами, основными принципами работы web серверов.
Для меня были полезны книги по тайм-менеджменту и знакомство с Agile-методологиями.
Релоцировались? Теперь вы можете комментировать без верификации аккаунта.