Я люблю свою профессию и интересуюсь всеми её аспектами. От построения диаграмм, до описания работы брокеров сообщений. Абсолютно всё!
Я практик. Если составить спецификацию, то сначала изучу детально где и как лежат данные, а только потом опишу всё в подробностях.
Профиль системного аналитика размыт в наше время, поэтому в своей работе я выполняю функции как бизнес, так и системного аналитика и как не странно тестировщика :). От сбора требований у закзачика и составления ФТ\НФТ - до тестирования и вывода в прод. На протежении всего жизненного цикла ПО я сопровождаю каждую из своих задач.
Ниже я описал некоторые из задач, которые выполнял в разных компаниях. Дабы не утомлять большими списками, а задач было конечно же больше, приведу 5 примеров по каждой компании.
Задача: Предоставление возможности клиентам отображать QR код вместо печати бумажного чека. Генерация электронного чека в виде QR кода
СТ. Описано:
Из чего формируется QR код, правила формирования по законодательству.
Какие теги из ФН необходимо использовать для получения необходимой информации.
Правила отображения QR кода, длительность.
На каких устройствах должен отображаться QR код.
Задача: Описать взаимодействие с модулями Управления задач и Управления настроек со стороны AtolCloud к основному ПО Frontol Удалённое управления настройками основного ПО Frontol со стороны AtolCloud
СТ. В рамках составления спецификации было сделано:
Описал архитектуру схематично (UML диаграмма прохождения всего процесса для каждого из микросервисов).
Для описания шагов прохождения запросов/ответов составил блок схемы, подготовил подробное описание для них.
Составил таблицу с описание запросов, эндпоинтов, возможными вариантов ответов (все запросы описаны в json формате).
Описал тайминги реагирования на сообщения, уровни логирования в основном ПО Frontol и AtolCloud, форматы авторизации через токены и их обновление, таблицы в БД для хранения промежуточных данных настроек/задач/статусов по ним.
Для сотрудников тестирования сделал коллекцию в программе Postman для общего понимания запросов.
Задача: Ограничение функционала По Frontol на основании наличия/отсутствия подписки Release Pack Ограничение функционала на основе подписки
СТ. Описал параметры запуска админской части из основного приложения кассира, шифрование данных параметров - чтобы пользователи не могли трейсить данные.
В админской части визуальным макетом указал что и где из настроек должно скрываться, какие информационные сообщения должны выводиться.
Составил блок-схему бизнес процесса, сделал описание схемы с дополнительной информацией.
Собрал все элементы для админской части ПО (картинки, иконки).
Задача: Интеграция с системой лояльности SWiP Интеграция с системой лояльности SWiP
СТ. Проведение совещаний для обсуждения архитектуры интеграции.
Проведение совещаний с представителем компании SWiP для более полного разбора режимов авторизации касс, продажи и возврата товаров.
Тезисная фиксация результатов проведения совещаний, публикация тезисов в MOM страничке на Confluence.
Составление блок-схем для описания режимов регистрации товаров (продаж/возврат), составление описания блок-схем с дополнительной информацией.
Изучение предоставленного API (json), запросов и ответов на них, обязательных параметров на заполнение.
Ведение переписки с представителями разработки компании.
Предоставление данных для доработок на стороне SWiP для обработки обязательных параметров со стороны Frontol.
Описание json запросов для создания интеграционной библиотеки для работы с системой лояльности SWiP.
Задача: Поддержать реализацию маркированной обуви в Казахстане средствами Frontol Поддержка реализации маркированной обуви в Казахстане
СТ. Разобрал из каких идентификаторов применения составляется GTIN в РФ.
Изучил какие данные GTIN должны передаваться в ОФД Казахстана, в каком формате передаются данные, какие ККМ используются для передачи данных.
Запросил информацию у ""ГосЗнак"" и ""Честный знак"" о вероятных дополнительных идентификаторах применения в составе GTIN, ведения переписки с представителями государственных учреждений.
Исходя из уже существующей номенклатуры обуви в РФ составил правила и описал логику передачи данных в ОФД Казахстана (описание в формате json, указал регулярку по которым определяются символы идентификаторов применения, разделители GS1).
В ходе разбора задачи декомпозировал QR маркированной обуви РФ посимвольно что и к каким идентификатора применения относится.
Задача: собрать разрозненные данные из Microsoft Dynamics Axapta 2012 в смежную систему для формирования данных по процессу ЭТрН. Импорт графиков поставок
Создан ряд спецификаций на:
1. Архитектурное описание процесса в целом и таблиц в обоих системах.
2. Создание новых таблиц в Microsoft Dynamics Axapta 2012.
3. Создание job'ов для наполнения таблиц Axapta, заполнение данных с использованием ChangeTracking.
4. Создание воркеров для систематической передачи данных из Axapta в смежную систему.
5. Формирование данных XML/Json для систем Минтранса.
Задача: Необходимо получать данные по поставщикам и контрагентам из Microsoft Dynamics Axapta 2012 в смежную систему. Выгрузка данных по контрагентам из Axapta
1. Подготовил SQL выборку для получения данных по поставщикам и контрагентам.
2. Описал воркер, который будет использоваться для первичной/экстренной загрузки данных с использованием выборки выше.
3. Подготовил описание для Kafka - в какой топик, в каком виде должно формироваться сообщение с данными о контрагентах и поставщиках для дальнейшего получения смежной системой (на Postgre как consumer Kafka).
Описывал различные воркеры (джобы) для: Создание воркеров
1. Межсистемной передачи данных используя Rest методы.
2. Формирования данных для записи в таблицы.
3. Очистки таблиц по предусловиям.
4. Мониторинга и логирования действия системы.
В рамках архитектурного описания что сделал ранее описал: Создание REST методов
1. Различные rest методы (эндпоинты).
2. Описание полей, массивов данных что будут использоваться внутри методов.
3. Необходимое логирование и алерты в случае получения статусов отличных от 200.
4. Описал методы авторизации для метовдов только для внутреннего использования и для внешних методов, что обращаются во вне контура компании.
Задача: создать описание микросервисной архитектуры по проекту ЭТрН (Электронная транспортная накладная). Создание и описание микросервисной архитектуры для проекта ЭТрН
1. В Archimate Создан ряд схем межпроцессного взаимодействия воркеров (job'ов) для получения/обработки/отправки данных в смежные системы/системы Контур.Логистика/Минтранса.
2. На Confluence подготовлены страницы с проектной документацией:
2.1 Описаны идея и инициатива.
2.2 Описано Бизнес-предложение.
2.3 Созданы страницы ФТ и НФТ.
2.4 Оформлены первичные протоколы встреч по проекту.
Задача: Создать систему для проведения А/B тестирования Создание системы А/B тестирования
Создан ряд спецификаций и встреч на:
1. Обучение сотрудников маркетинга "Grow Hacking" на то как должны тестироваться гипотезы.
2. Обучение сотрудников "сырых данных" какие метрики должны собираться по событиям аналитики при проведении экспериментов.
3. Создание системы дистанционных конфигураций - для получения Front'ом списка экспериментов.
4. Создание сквозного идентификатора пользователя для отслеживания в аналитических метриках.
5. Описаны доработки ERP части, Front и Back для возможности создания и проведения А/B тестирования.
6. Описаны доработки Front и Back для удаления данных по пройденным экспериментам.
Задача: Формирование флоу работы аналитиков. Управление командой системных аналитиков
Создан ряд встреч и описаны документы на:
1. Собеседование и онбординг новых аналитиков.
2. Подготовлена внутренняя система тестирования на основе данных онбординга на базе Confluence.
3. Доработан флоу Jira на основе "текущей боли" разработки и бизнеса.
4. Составление шаблонов спецификаций требований.
5. Составление шаблонов для описания элементов внутри самой спецификации требований.
6. Ежемесячное проведение обучение команды новым фичам - синк с командой.
7. После самостоятельного прохождения дополнительных курсов - обучения команды по ним.
8. В рамках работы отладил процесс Грумминга задач и Архитектурных комитетов.
Задача: С нуля создать процесс работы DE с заказчиком и аналитиками. Сопровождение команды Инженеров данных (DE)
Создан ряд встреч и описаны документы на:
1. Создал и настроил отдельные доски Jira для DE (Scrum) и DE + Заказчик (Kanban).
2. Подготовлен шаблон для заказчика по созданию бизнес-постановок.
3. Описаны все слои данных с которыми работают DE + Core витрины.
4. Описаны пайплайны airflow.
5. Составлен ряд спецификации на создание как промежуточных таблиц (ODS, BDS слои), так и готовых витрин (DM слой Greenplum).
6. В рамках работы отладил процесс Грумминга задач.