Владислав Хорунжий

Backend-разработчик, создающий production-системы для финансовых продуктов, автомобильной телеметрии и Bitcoin-майнинга.

Клиенты пула~20K

Клиенты Bitcoin-майнинг-пула

Пропускная способность500

RPS на relay-поде и 2 CPU

Пиковые подключения40K

ASIC-подключений одновременно

Записи в Redis25K/с

Операций записи в секунду

Production-системы

01

2025 — сейчас

HeadFrame

Go-разработчик · Bitcoin mining pool

Go-бэкенд для Bitcoin-майнинг-пула примерно на 20 000 клиентов: Stratum relay, маршрутизация хэшрейта и обработка share.

  • Переписал runtime Stratum proxy и разделил обработку соединений и share; relay-под выдерживает до 500 RPS на 2 CPU-ядрах.
  • Реализовал бесшовное переключение хэшрейта между пулами без разрыва miner TCP-сессий — до 40 000 ASIC-подключений в пике.
  • Добавил JobID-aware upstream handoff: новое соединение с пулом устанавливается до закрытия старого; во время перехода передаются только submit-сообщения для jobs предыдущего пула.
  • Обрабатывал до 25 000 операций записи Redis в секунду.
  • Заменил блокирующий prefetch на PeekWithTimeout, чтобы mining.subscribe отвечал сразу.
  • Собрал распределение хэшрейта по upstream-пулам на EWMA, чтобы сглаживать короткие пики и удерживать целевую долю share.
  • Нашёл ложное падение хэшрейта в цепочке Redis → collector → Grafana: часовой простой Redis collector приводил к пропущенному учёту share, принятых upstream.
  • Исправил две ошибки в эталонной реализации Stratum V2 из stratum-mining/stratum: panic на некорректных BIP141 coinbase data и устаревший channel ID после неудачного добавления group; один патч вошёл в major-релиз crate.
  • Объединил rate feeds пяти внешних пулов за единым интерфейсом для сравнения доходности.

Go · PostgreSQL · Redis · Kafka · ClickHouse · Prometheus · Grafana · Loki · Mimir · Tempo · Docker · Kubernetes · Linux · Git · REST API

02

авг 2022 — авг 2024

Делимобиль

Go-разработчик · телеметрия каршеринга

Go-сервисы телеметрии для парка более 30 000 автомобилей: приём пакетов, состояния и статусы машин, алерты и продуктовые функции.

  • Перенёс обработку телеметрии на gRPC и Kafka по мере роста объёма данных.
  • Создал эмулятор автомобиля на Go, отправляющий тестовые пакеты через production-контур телеметрии; подготовка сценария сократилась примерно с 30 минут до нескольких секунд.
  • Подключил эмулятор к автоматическим pre-release проверкам телеметрии для валидации новых полей вместе с существующими правилами.
  • Добавил пять failure-сценариев: некорректные координаты, скачки значений, конфликт показаний датчиков, потеря соединения и дублирующие отправки.
  • Настроил конкурентность Kafka consumers для приёма телеметрии и снизил p95 задержки обработки с 1,8 секунды до 420 мс.
  • Добавил проверки совместимости схемы в GitLab CI, чтобы ловить несовместимые CAN-поля до релиза.
  • Автоматизировал проверки пакетов CAN-провайдеров и сократил число некорректных пакетов в production на 70%.
  • Добавил детерминированное воспроизведение записанных пакетов автомобиля, чтобы повторять ошибки полей менее чем за две минуты.
  • Собрал дашборды задержек пакетов и аномалий датчиков, сократив медианное время разбора с 45 до 12 минут.

Go · gRPC · Kafka · PostgreSQL · Redis · ClickHouse · Docker · Kubernetes · GitLab CI · REST API

03

2020 — 2022

Halyk Bank

Go-разработчик · интернет-банкинг и платежи

Go-сервисы для B2C интернет-банкинга и интеграций с платёжными системами.

  • Разработал сервис входящих платежей с идемпотентной обработкой операций.
  • Снизил нагрузку на PostgreSQL на 30% с помощью Redis и асинхронной обработки через Kafka.
  • Оптимизировал мобильный GraphQL-шлюз с помощью batching и снизил p95 времени ответа с 310 до 120 мс.
  • Разделил Kafka-консьюмеры платежей по ключу счёта: пропускная способность выросла с 800 до 2 400 сообщений в секунду без потери порядка.
  • Добавил ключи идемпотентности в callback-партнёров и сократил дублирующие платёжные проводки на 99,9%.
  • Собрал state machine сверки платежей, сократив ручную обработку исключений на 65%.
  • Перевёл адаптеры партнёров на общий gRPC-контракт и сократил срок подключения интеграции с двух недель до пяти дней.
  • Добавил дашборды задержек и ошибок платежей, сократив диагностику инцидента с 40 до 15 минут.
  • Добавил regression-тесты платёжных сценариев в GitLab CI и сократил проверку релиза на 50%.

Go · TypeScript · REST · gRPC · GraphQL · WebSocket · PostgreSQL · Redis · Kafka · GitLab CI

От runtime до пользовательского сценария

Языки и API

Go, TypeScript · REST, gRPC, GraphQL, WebSocket

Данные и сообщения

PostgreSQL, Redis, Kafka, ClickHouse, MySQL, Elasticsearch

Наблюдаемость

Prometheus, Grafana, Loki, ELK, distributed tracing, incident analysis

Платформа

Linux, Docker, Kubernetes, Helm, Nginx, Git, GitLab CI/CD

Frontend

TypeScript, React, Next.js, WebGL, accessibility, browser QA

Системы

Concurrency, CQRS, data-intensive services, protocol handling

Языки

Русский — родной · Английский — B2

МТУСИ · Технический университет связи и информатики

Фундаментальная информатика и информационные технологии · инженерия разработки программного обеспечения.

Готов обсудить сложную инженерную задачу.

@VladislavSpasennikov ↗