Відкритий до ролей Lead / Senior Fullstack
Владислав Пелих
Lead Fullstack Engineer · Зараз CTO в AdMatrix
Будую високонавантажені системи, від яких напряму залежить виручка, для AdTech, iGaming і фінтеху, і керую командами, що їх підтримують. Спеціалізуюся там, де помилка коштує грошей: платіжні та постбек-пайплайни, real-time аналітика на ClickHouse, конкурентність та ідемпотентність.
- <200ms
- постбеки виручки, було 1–6 с
- 20,000+
- одночасних WebSocket-користувачів на піку
- 270k
- рядків TypeScript-платформи, яку я спроєктував
- 270+
- сайтів розгортаються автоматично
- 7
- інженерів і дизайнерів найняв і очолив
- 0
- подвійно врахованих депозитів
Кейси
11Інциденти в продакшені та складні задачі, за які я відповідав: що зламалося, як знайшов причину, що в результаті пішло в прод.
- 1–6 s → <200 msPostback race on every depositAdMatrix · S2S revenue core
- 0 double-counted clicksDouble-counted clicks in ClickHouseAdMatrix · analytics
- OOM → graceful degradeOne pivot query took the whole cluster downAdMatrix · pivot engine
- 6 tabs · 0 false logoutsToken rotation that didn’t log out power usersAdMatrix · auth
- 2ⁿ bursts → serialFake 95% rate-limit and exponential burstsAdMatrix · Meta Marketing API
Реверс-інжиніринг
Коли API немає — я його будую. Перехоплення трафіку, деобфускація JS, бінарні протоколи та нативні хуки — у стабільні типізовані інтеграції.
01 Деобфускація підпису запитів
- 0. сирий бандл
- 1. інлайн масиву рядків
- 2. згортка констант
- 3. перейменування
- 4. чистий підпис
var _0x3f2a=['\x73\x69\x67\x6e','\x6a\x6f\x69\x6e','\x48\x6d\x61\x63'];
(function(_0x1,_0x2){while(--_0x2){_0x1.push(_0x1.shift())}})(_0x3f2a,0x1b3);
function _0x51(_0x9){return _0x3f2a[_0x9-0x0]}
function a(b,c,d){var e=[b[_0x51('0x1')]('&'),c,d][_0x51('0x1')]('|');
return window[_0x51('0x2')](0x2*0x8+0x10,e)[_0x51('0x0')](k)}02 Розбір protobuf без .proto
// розкодовано { "id": 150, "handle": "pelykh", "team": { "size": 7 }, "active": true, "role": "lead" }
- Chrome DevTools / CDP
- mitmproxy
- Burp Suite
- Charles
- Wireshark
- Frida
- JADX
- apktool
- Ghidra
- Babel AST
- source maps
- webpack chunk graphs
- Puppeteer
- Playwright
- Protobuf wire format
- MTProto
- WebSocket frames
- HMAC request signing
Навички
Бекенд
- TypeScript
- Node.js
- NestJS
- Fastify
- Nitro / h3
- Go
- BullMQ
- Socket.IO
- SSE
- REST
- OpenAPI
- gRPC
- Zod
- Pino
- Distributed locks
- Idempotency
- Event-driven design
Фронтенд
- Vue 3
- Nuxt 3/4
- Pinia
- VueUse
- Tailwind
- shadcn-vue
- TanStack Table
- TipTap
- Vue Flow
- Motion
- i18n
- React
- Next.js
- Canvas
- Web Workers
- PWA
- SSR / SSG
- Core Web Vitals
- Technical SEO
Дані
- PostgreSQL
- ClickHouse
- Redis
- BigQuery
- MongoDB
- SQLite
- Drizzle
- Prisma
- ETL pipelines
- Double-entry ledgers
Інфраструктура
- Docker
- Kubernetes
- AWS
- Cloudflare
- Nginx
- Caddy
- Linux
- GitHub Actions
- Turborepo
- Changesets
- Sentry
- Grafana
- Vitest
- Playwright
Інтеграції та AI
- Meta Marketing API
- Google APIs
- Telegram Bot API
- MTProto
- Telegram Mini Apps
- Namecheap / Dynadot
- Puppeteer
- ComfyUI
- Wan 2.2
- Qwen-Image
- GPU job orchestration
Безпека
- Token rotation
- OAuth 2.0
- RBAC
- Argon2
- AES-256-GCM
- CSP nonces
- CSRF
- Rate limiting
- TOTP 2FA
- HMAC signatures
- Audit logs
Мови
Англійська — робоча · Українська, російська — рідні
Досвід
- Інженерне лідерство. Зібрав інженерну команду з нуля до 7 розробників і дизайнерів; найм, онбординг, стандарти code review, CI quality gates і процес релізів; роадмап з пріоритетами за виручкою.
- Архітектура платформи. Спроєктував монорепозиторій на ~270k рядків (pnpm + Turborepo): NestJS (Fastify) API, Nuxt SPA, спільні Drizzle/Zod контракти, Telegram-боти та Mini App — єдиний наскрізний типізований контракт.
- Ядро виручки. Переписав легасі PHP-обробники постбеків на NestJS S2S-сервіс з 4 шлюзами; сувора ідемпотентність через розподілені блокування Redis для FTD, редепозитів і LTV. Затримка 1–6 с → <200 мс.
- ETL та аналітика. BullMQ-пайплайни потокового завантаження кліків у ClickHouse (ReplacingMergeTree, помісячні партиції); прибрав подвійний облік і OOM кластера; real-time ROI / ROAS / CPA / EPC на обмежених запитах.
- Автоматизація інфраструктури. Пайплайни розгортання через API Cloudflare, Namecheap і Dynadot з ретраями та відкатом для 270+ сайтів і 470+ доменів; переніс 219 живих зон без простою; підняв сервер на 250 сайтів після аварії — навантаження 125 → 7.
- Безпека. Ротація refresh-токенів з виявленням повторного використання, RBAC на 60 прав з аудитом, шифрування полів AES-256-GCM.
- NestJSFastifyNuxtPostgreSQLDrizzleClickHouseRedisBullMQDocker
- Real-time. Масштабував відмовостійкі WebSocket-кластери на 20 000+ одночасних гравців під час пікових спортивних подій.
- Продуктивність. Скоротив час відповіді сервера на 40% завдяки кешуванню в Redis, оптимізації планів запитів і партиціюванню PostgreSQL.
- Фронтенд. Очолив міграцію на Nuxt 3 (Nitro), First Contentful Paint −35%.
- Node.jsRedisPostgreSQLWebSocketsNuxt 3
- Платежі. Розробив високонавантажений платіжний шлюз USDC/BTC на суворо ідемпотентних API — жодних фінансових розбіжностей чи подвійних виплат при повторах і часткових збоях.
- Дані. Оптимізував схеми та плани виконання — BI-звітність по транзакціях на 60% швидша.
- Node.jsPostgreSQLIdempotencyCrypto
- MVP. Запустив 4 production-ready fullstack MVP з нуля у стислі терміни для перевірки гіпотез зростання на seed-стадії.
- Real-time. Спроєктував інфраструктуру сповіщень на Socket.IO для 5 000+ одночасних користувачів.
- VueNode.jsMongoDBSocket.IO
Вибрані проєкти
AffSource— AI-креативи (відео й фото) для арбітражниківЗасновник · у розробці
Промпт → готовий рекламний креатив → відеоредактор у браузері → експорт. Працює на власних open-weight моделях (Wan 2.2, Qwen-Image) на орендованих GPU замість платних API, тож креатив коштує в рази дешевше. Пакетна генерація хуки × GEO × формати, живий прогрес через SSE, експорт у Web Worker.
Nuxt 4 · Go · ComfyUI · Canvas · Web Workers · R2 + CDN
ORYX— USDT-леджер, який контролює сама база
Append-only double-entry журнал під захистом constraint-тригерів Postgres: баланс сходиться при коміті, UPDATE / DELETE / TRUNCATE заборонені, ідемпотентність за ключем, точність 18 знаків.
NestJS · PostgreSQL · Drizzle
Ares-Nexus— Рушій зведення ордерів
Матчинг на Redis Sorted Sets з леджером у PostgreSQL. <50 мс від ордера до UI і стакан на PixiJS у 60 FPS через WebSockets з тротлінгом.
NestJS · Redis · PostgreSQL · PixiJS
Ares-X & Fundory— Provably fair рушій і Mini App
Provably fair ігровий рушій на HMAC-SHA512, 60 FPS на мобільних; Telegram Mini App з дедуплікованими нагородами в BullMQ, перевіркою initData та автоматичними виплатами в TRON.
Node.js · BullMQ · TronWeb · Telegram
Pulsarr— Трекер — альтернатива Keitaro / Binom
Click-сервер на Go, NestJS API та звіти на ClickHouse: роутинг кампаній, постбеки й статистика в реальному часі.
Go · NestJS · ClickHouse · Redis
Контакти
Шукаєте lead або senior fullstack-інженера, або маєте складну задачу в платежах, трекінгу чи real-time даних? Пишіть — зазвичай відповідаю протягом дня.