Data Engineering · Full-stack

Enterprise system

Corporate Reporting

Защищённое веб-приложение, которое автоматизировало доставку ежедневной отчётности между PetroKazakhstan и KazMunayGas.

01

API

Source

02

08:00

Airflow

03

MySQL

Storage

04

REST

Node.js

05

WEB

React

06

XLSX

Export

VPN + AD Daily history Excel export

Конфиденциальный проект.Названия компаний раскрыты с разрешения. Логотипы, исходный код, реальные данные и интерфейсы не публикуются.

Обзор

Я спроектировал и разработал всю систему: от ежедневной загрузки данных из API и хранения в MySQL до защищённого интерфейса, где сотрудники получают нужную информацию и выгружают её в Excel.

Задача

Сотрудникам KazMunayGas приходилось тратить время на коммуникацию с PetroKazakhstan ради регулярных отчётов. Данные требовались каждое утро, но их получение зависело от ручного взаимодействия между командами.

Решение

Airflow ежедневно в 08:00 получает данные из API PetroKazakhstan и сохраняет их в MySQL. Node.js REST API отдаёт подготовленные данные React-приложению. Сотрудники подключаются через корпоративный VPN, проходят AD-авторизацию, просматривают отчёты и скачивают Excel.

Как устроена система

  1. 01API PetroKazakhstan
  2. 02Airflow · ежедневный запуск в 08:00
  3. 03Хранение и история в MySQL
  4. 04Node.js / Express REST API
  5. 05React web application
  6. 06VPN + Active Directory + Excel export

Моя роль

  • Архитектура всей системы
  • ETL-процесс и оркестрация Airflow
  • Схема MySQL и миграции Sequelize
  • Backend API и React-интерфейс
  • AD-авторизация и выгрузка Excel

Технологии

ReactNode.jsExpressMySQLSequelizeAirflowADExcel

Результат

08:00

автоматическая загрузка ежедневно

1

единая точка доступа к отчётам

End-to-end

разработка всей системы

Что я вынес

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