EN

Работы

Инженерные проекты и продуктовые платформы, которыми я горжусь. Формат каждого кейса: задача → решение → результат.

01

Платформа feature toggles

Управление фичами в масштабе банка: выкаты, A/B и мгновенный откат для десятков команд.

if ( flag )
Платформа · Unleash
Задача

Десятки продуктовых команд катали фичи «как есть»: релиз означал деплой, откат — ночной хотфикс и дежурства, а состояние фич было размазано по конфигам и головам. Единого способа безопасно выкатывать и выключать функциональность не было.

Решение

Централизованная платформа на базе Unleash: единое хранилище флагов, стратегии постепенного выката и таргетинга, sticky-сессии, аудит изменений и интеграция в CI/CD. Плюс админ-интерфейс с ролевым доступом и мониторингом — прозрачный и для инженеров, и для менеджеров.

Результат
−25% production-инцидентов: откат фичи тумблером, без повторного деплоя.
−30% среднего времени выката новой фичи.
Практику feature toggles приняли десятки команд банка.
TypeScriptNode.jsReactUnleashPostgreSQLCI/CD
02

A/B-платформа экспериментов

Инфраструктура продуктовых экспериментов поверх feature flags — решения на данных, а не на мнениях.

A / B
Эксперименты · метрики
Задача

Продуктовые гипотезы проверялись «на глаз»: не было единого способа делить трафик, надежно собирать метрики и честно интерпретировать результат — и все это без релиза под каждый эксперимент.

Решение

Детерминированное распределение пользователей (хеш идентификатора со «солью» по имени эксперимента, sticky-сессии), логирование экспозиции, связка «вариант ↔ метрика», guardrail-метрики и статистическая интерпретация вместо подглядывания за графиками.

Результат
Продуктовые решения принимаются на данных, а не на статусе спорящего.
+15% удовлетворенности пользователей (по внутренним метрикам).
Проверка гипотез без релизов — цикл экспериментов стал заметно быстрее.
TypeScriptNode.jsUnleashАналитикаСтатистика
03

Пакман

Играбельно

Классическая аркада, написанная с нуля на React и Canvas.

Код на GitHub
requestAnimationFrame · Canvas
Задача

Собрать полноценную аркаду без игровых движков: игровой цикл, ИИ противников, коллизии и плавное движение — только React, TypeScript и Canvas API.

Решение

Игровой цикл на requestAnimationFrame с фиксированным шагом симуляции; состояние хранится в ref, чтобы не ре-рендерить каждый кадр; четыре призрака с разными стратегиями преследования; управление клавиатурой, свайпами и экранными кнопками.

Результат
Играбельно прямо в браузере — без загрузки и внешних зависимостей.
Стабильные 60 FPS за счет разделения симуляции и рендера.
Рекорд сохраняется локально между сессиями.
ReactTypeScriptCanvasViteReduxrequestAnimationFrame

Готов к сотрудничеству

Открыт для интересных проектов и сложных инженерных задач. Если есть идея или предложение — напишите удобным способом.