Выходим за рамки привычных сценариев: как оптимизировать разработку с помощью VK Data Symphony
Лишь 25% времени разработчика уходит на написание кода. Остальное тратится на ревью, созвоны и другие задачи. Поэтому справедливо, что большинство команд разработки использует различные методики и инструменты, которые позволяют оптимизировать и автоматизировать бизнес-процессы.
Разбираемся, что упростить в работе разработчика и как в этом может помочь платформа VK Data Symphony.
Процессы разработчика: польза или рутина
В идеальном мире разработчик занимается только кодом и пишет около 100 строчек кода в день или соответствующее количество тестов. Но в действительности это не так. Помимо программирования в пул задач разработчика входит:
анализ требований;
проектирование архитектуры продукта;
тестирование;
ревью кода;
поддержка и сопровождение существующего кода;
управление зависимостями и версиями кода;
подготовка документации проекта;
обучение и наставничество.
Могут возникать и смежные задачи, вызванные инцидентами в работе продукта или запросами со стороны команды. В таких условиях времени на основные процессы остается мало. Поэтому best practice для команд разработки — оптимизация и автоматизация «всего, до чего дотянутся руки». Для этого в ход идут разные методы.
Автоматизация через скрипты и библиотеки. Разработчики могут использовать скриптовые языки для подготовки окружений, сборки и тестирования кода, операций с данными и файлами.
Использование CI/CD-систем. С помощью них можно автоматизировать разработку, сборку и развертывание приложений в нужных средах.
Применение статических анализаторов кода. Подобные инструменты упрощают ревью кода и помогают найти ошибки и дубли еще до выкатки продукта в прод.
Работа с инструментами для рефакторинга кода. Эти решения помогают автоматизировать рефакторинг, то есть сокращают время на исправление ошибок или неоптимального синтаксиса в коде.
Применение систем управления конфигурацией. С их помощью разработчики могут централизованно управлять конфигурациями серверов, инфраструктурой и окружениями.
Выстраивание DevOps-подходов. Следование концепции DevOps позволяет быстрее выпускать обновления и решать возникающие проблемы, благодаря чему ускоряется цикл разработки и внедрения нового функционала.
Вместе с тем иногда даже эти меры не могут покрыть все сценарии и закрыть все потребности. Возникает запрос на дополнительные решения и инструменты. В таких ситуациях на помощь может прийти VK Data Symphony.
Немного о решении
VK Data Symphony — инструмент для цифровизации и автоматизации процессов, работы с данными, автоматизации расчета показателей и формирования отчетности. С помощью решения можно:
выстроить единую систему расчета и хранения данных;
автоматизировать подготовку отчетности любого типа;
объединять данные из разных систем.
«Под капотом» инструмент сочетает функции ETL и BPM, среди которых:
прием данных из внешних источников и ИС;
управление периодическими процессами расчета показателей;
передача данных в другие системы;
интеграция контрольных мероприятий в процессы расчета;
формирование и просмотр отчетных данных;
разграничение ролей и полномочий пользователей.
Инструмент может быть развернут как в облаке VK Cloud, так и на собственном железе компании.
Принцип работы VK Data Symphony
Основными сущностями, которыми манипулирует VK Data Symphony, являются шаблоны и сценарии.
Шаблон — структура процесса, в которой определены параметры и последовательность шагов, роли и ограничения. Шаблон может содержать множество шагов, каждый из которых определяет требования к входным данным, соответствующий ему алгоритм обработки данных и результат шага в виде таблицы с данными. Шаг считается выполненным, только если ответственные за него подтвердили корректность выполнения.
Каждый шаг шаблона может содержать алгоритм для автоматического расчета или вызова событий во внешних системах, а также действия исполнителя и контролера.
Сценарий — процесс, который воссоздается на основе шаблонов и определяет конкретные значения параметров, исполнителей и контролеров шагов сценария.
Управление сценарием интуитивно понятное, интерфейс не перегружен лишними элементами
Применение VK Data Symphony в рамках задач команд разработки (и не только) дает возможность шаблонизировать и упростить выполнение многих операций. Причем большинство из них можно перенести и выполнять в формате «единого окна», то есть через один инструмент.
Сценарии применения платформы VK Data Symphony для команд разработки
Создание пользовательских интерфейсов
В пул задач разработчиков среди прочего входит помощь смежным подразделениям и командам. Например, разработка решений для автоматизации обработки входящих писем о заказах для отдела продаж.
Нюанс в том, что для подготовки и реализации даже небольшой скриптовой фичи под эти запросы надо развернуть хоть и простой, но полноценный интерфейс для конечного пользователя — чтобы каждый сотрудник мог сам запустить алгоритм обработки данных. Соответственно, нужны ресурсы и время команды. Причем подобные затраты не всегда оправданны.
VK Data Symphony позволяет оптимизировать эти задачи. Инструмент предоставляет набор готовых интерфейсов, из которых можно собрать небольшой и удобный сервис под конкретные запросы и сценарии использования, — чтобы сделать это, достаточно применить нужный шаблон и прописать в нем соответствующие параметры.
Интерфейс сервиса аудита
В итоге VK Data Symphony помогает не только сократить Time-to-market подобных фич, но и удешевить их разработку.
Оптимизация управления доступом
В любых компаниях, независимо от их масштаба и профиля, есть задачи, в которых задействованы не только внутренние структуры, но и внешние. Пример — подготовка и подача налоговой отчетности, принятие которой часто невозможно без апрува со стороны представителей контролирующих органов. Одновременно с этим вполне логично, что не у каждого сотрудника будет доступ к системам с данными для отчета.
VK Data Symphony может полностью «завязать» на себе задачи управления правами доступа. Так, ведя разработку в среде платформы, можно гибко управлять доступом к к реализованным на платформе бизнес-приложениям и данным, а также назначать права доступа конкретным пользователям с учетом их зон ответственности. То есть с помощью VK Data Symphony можно построить корпоративный софт для большого количества пользователей, который будет полностью отвечать требованиям ИБ.
Разработка сервисного ПО
Алгоритмы работы с данными как в разрабатываемых сервисах, так и в работе самих разработчиков часто однотипные — например, надо собрать данные из систем-источников, предобработать и проанализировать их, передать в систему-потребитель. Нередко на выполнение всего цикла операций нужно немало времени и других ресурсов.
Вместе с тем такие шаблонные процессы также можно автоматизировать с помощью VK Data Symphony — переложить на инструмент задачи интеграции различных систем, бесшовной авторизации и автоматизации обмена данными. Так, с помощью сценариев VK Data Symphony можно автоматизировать:
сбор данных из разных систем (решение может интегрироваться с любыми источниками данных по API или через отдельный ETL-процесс);
настройку автоматического расчета;
передачу данных в витрины;
согласование с привлечением сотрудника-контролера.
Примечательно, что процесс достаточно настроить один раз, а количество его воспроизведений не ограничено.
Организация корпоративных стандартов работы
Разработка ПО и его эксплуатация — процесс, в котором обычно задействовано много команд: разработчики, тестировщики, DevOps, администраторы и не только. Чтобы синхронизировать их работу и унифицировать используемые практики, важно внедрить единую методику и иметь возможность гибко управлять ей в зависимости от изменения обстоятельств.
VK Data Symphony решает эту задачу. Платформа позволяет создать единые шаблоны операций и централизованно менять их при необходимости. Таким образом можно сформировать целую базу знаний об актуальных практиках, методах и общепринятых сценариях выполнения тех или иных процессов внутри компании.
Внедрение логирования
Поддержка ИТ-продукта (даже если речь о простом сервисе для одной команды) на всем жизненном цикле подразумевает оперативное реагирование на баги или ошибки, отлавливание и устранение их первопричин. Для этого нужен мониторинг.
С VK Data Symphony разработчики могут решить и эту задачу. Все действия в системе логируются, то есть разработчики получают возможность отслеживать историю изменений данных и действий пользователей. Это упрощает поиск источников ошибок и пользовательских сценариев, в которых они возникают.
Разработка корпоративных решений
Платформа Data Symphony предоставляет пользователям большой стек компонентов. Благодаря этому ее можно использовать даже в качестве основной среды разработки.
Здесь важно, что Data Symphony можно интегрировать с другими сервисами VK Tech. Это значительно снижает порог входа в разработку корпоративных экосистем для автоматизации бизнес-процессов, позволяет запускать их быстрее и с минимальными затратами.
Краткие выводы
Время ИТ-специалистов — ограниченный ресурс. Тратить его на задачи, которые не несут прямую бизнес-ценность, нерационально. Поэтому всё, что может помочь с автоматизацией и оптимизацией простых, повторяющихся или рутинных задач, полезно.
К числу эффективных решений можно отнести платформу VK Data Symphony, с помощью которой команды разработки могут строить сервисы, собирать и хранить данные, скриптовать процессы и решать другие возникающие задачи.