Технологии и продукты
Собственные программные продукты it Devision и стек технологий, на котором они построены.
XK Portal — корпоративный веб-портал
Веб-платформа для управления бизнес-процессами, работы с документами и интеграции с внешними сервисами. Обеспечивает единую точку входа для сотрудников и партнёров, поддерживает многопользовательский режим, ролевую модель доступа и двустороннюю интеграцию с почтовыми системами.
Языки программирования
- JavaScript (Node.js 20) — серверная и клиентская логика.
- SQL — работа с реляционной базой данных.
- HTML / CSS — разметка и стилизация интерфейсов.
Фреймворки и библиотеки
Бэкенд
- Express 5 — веб-фреймворк для построения REST API.
- pg — драйвер для работы с PostgreSQL.
- jsonwebtoken и bcryptjs — аутентификация и хеширование паролей.
- otplib — генерация и проверка одноразовых кодов (2FA).
- helmet — защита HTTP-заголовков.
- multer — загрузка файлов.
- nodemailer / imapflow — отправка и приём почты.
- exceljs и pdfkit — формирование отчётов и документов.
- axios — интеграция с внешними API.
Фронтенд
- React 19 — построение пользовательского интерфейса.
- Vite 7 — сборка и горячая перезагрузка.
- Tailwind 4 — утилитарная стилизация.
- React Router 7 — маршрутизация.
- i18next — мультиязычность.
- Recharts — визуализация данных и графики.
- dnd-kit — drag-and-drop интерфейсы.
СУБД
- PostgreSQL 16 — основная база данных. Используется без ORM: SQL-запросы пишутся вручную, миграции выполняются идемпотентным SQL при старте приложения.
Инструменты
- Jest + Supertest — тестирование бэкенда.
- Vitest + Testing Library — тестирование фронтенда.
- ESLint 9 — статический анализ кода.
- GitLab CI — непрерывная интеграция и доставка.
- pm2 — управление процессами Node.js.
- nginx — веб-сервер и reverse proxy.
- Ubuntu 24.04 — серверная операционная система.
Среды разработки
Конфигурации IDE в репозитории отсутствуют, редактор не навязан. Для локального запуска требуются Node.js 20 и PostgreSQL 16.
XKSM — платформа управления ИТ-инфраструктурой
Веб-платформа для мониторинга, управления и автоматизации ИТ-инфраструктуры. Работает с серверным оборудованием, сетевыми устройствами и системами хранения, поддерживает протоколы удалённого управления и обеспечивает сбор телеметрии в реальном времени.
Языки программирования
- Python 3.12 — серверная логика и автоматизация.
- TypeScript 5.7 — типизированная клиентская разработка.
- SQL — работа с базами данных.
- HTML / CSS — разметка и стилизация.
Фреймворки и библиотеки
Бэкенд
- FastAPI — высокопроизводительный веб-фреймворк.
- Uvicorn / Gunicorn — ASGI- и WSGI-серверы.
- SQLAlchemy 2.0 (async) + Alembic — работа с БД и миграции.
- Pydantic 2 — валидация данных и настройки.
- Celery — очередь задач и фоновая обработка.
- paramiko — SSH-подключения к оборудованию.
- pysnmp и napalm — работа с сетевыми устройствами.
- ГОСТ-криптография (gostcrypto, КриптоПро) — соответствие требованиям информационной безопасности.
Фронтенд
- React 18 — пользовательский интерфейс.
- Vite 6 — сборка.
- MUI 9 — компонентная библиотека.
- TanStack Query — управление серверным состоянием.
- Zustand — глобальное состояние.
- Three.js — 3D-визуализация.
- ReactFlow — построение схем и топологий.
- Tailwind 4 — стилизация.
- i18next — мультиязычность.
СУБД и хранилища
- PostgreSQL — основная база данных.
- Redis — кеширование и брокер задач Celery.
- ClickHouse — хранение и анализ телеметрии.
- Qdrant и LangChain — объявлены в зависимостях, в коде не используются.
Инструменты
- pytest + testcontainers — тестирование бэкенда.
- Playwright — end-to-end тестирование.
- Vitest — тестирование фронтенда.
- ruff / black / mypy — линтинг, форматирование и типизация.
- bandit / pip-audit — анализ безопасности.
- Docker + compose — контейнеризация.
- Prometheus + Grafana — мониторинг и визуализация метрик.
- GitLab CI — непрерывная интеграция и доставка.
Поддерживаемые протоколы
- Redfish, IPMI — управление серверным оборудованием.
- SNMP, NETCONF — управление сетевыми устройствами.
Среды разработки
Для команды зафиксированы .editorconfig и pre-commit, конфигурации IDE отсутствуют. Для локального запуска требуются Python 3.12, Node.js и Docker.
Для чего всё это используется
- разработка и сопровождение собственных программных продуктов — XK Portal и XKSM;
- создание цифровых платформ для управления бизнес-процессами и ИТ-инфраструктурой;
- интеграция информационных систем заказчиков;
- автоматизация бизнес-процессов и мониторинг оборудования;
- обеспечение информационной безопасности, в том числе с использованием ГОСТ-криптографии;
- построение отказоустойчивых и масштабируемых решений.