Выходим за рамки привычных сценариев: как оптимизировать разработку с помощью 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, с помощью которой команды разработки могут строить сервисы, собирать и хранить данные, скриптовать процессы и решать другие возникающие задачи.

© Habrahabr.ru