Проєкт · Бекенд-розробник

Бек-офіс крипто-брокера

Платформа бек-офісного API для брокера, що торгує криптовалютою. Керує виконанням угод, портфелями рахунків, оновленнями позицій у реальному часі через Kafka, структурами комісій та фінансовою звітністю в кількох форматах.

🔒 Приватна / клієнтська робота — робочий сайт і код під NDA. Радо розповім про архітектуру та свою роль під час дзвінка.

Бек-офіс крипто-брокера
Технологічний стек
PythonDjangoDjango REST FrameworkCeleryApache KafkaPostgreSQLRedisDockerMinIO/S3PrometheusJaegerSwagger/OpenAPI

Огляд проєкту

Промислова бек-офісна система, що живить платформу криптовалютного брокериджу. Вона обробляє провізіювання рахунків, відстеження балансів і позицій, розрахунки по угодах, управління комісіями та ведення журналу аудиту для комплаєнсу. Сервіс обробляє ринкові події в реальному часі через Apache Kafka та надає повністю задокументоване REST API, яке споживає торговий фронтенд.

Ключові можливості

  • Управління рахунками з відстеженням портфеля, розрахунками P&L та історією позицій
  • Обробка угод і ордерів у реальному часі через консюмери Kafka
  • Дизайнер комісій — налаштовувані структури комісій із динамічними розрахунками
  • Асинхронна генерація звітів (CSV, Excel, PDF) із вивантаженням до MinIO/S3
  • Воркери Celery із планувальником beat для фонових завдань та періодичних задач
  • Журнал аудиту та комплаєнс-логування для всіх операцій із рахунками
  • Автоматично згенерована документація Swagger/OpenAPI
  • Ендпоінт метрик Prometheus та розподілене трасування Jaeger
  • Моніторинг health check по всіх залежностях сервісу
  • Робочі процеси внутрішніх переказів та затверджень між рахунками

Архітектура

Багатосервісна архітектура, оркестрована за допомогою Docker Compose: Django API (Gunicorn), окремий сервіс-консюмер Kafka, воркери Celery, PostgreSQL, Redis для кешування та брокерингу завдань, а також MinIO для зберігання файлів. Інтегрується із зовнішнім сервісом постачальника ліквідності для отримання ринкових даних. Розгорнуто в середовищах dev, QA та production з окремою конфігурацією для кожного етапу.

Зв'язатися →