Открыт для сотрудничества

CTO & Tech Lead Юрий Морозов

25+ лет в IT. Закрываю задачи команды в одиночку или управляю коллективами 200+ человек. От enterprise-систем до агентных AI-продуктов — строю, запускаю, сопровождаю, тушу пожары.

Посмотреть проекты
25+
Лет опыта
5
Крупных компаний
×1
Вместо команды на старте
200+
Опыт управления людьми
Чем могу помочь
  • Владельцу / CEO 9 ситуаций
  • Фаундеру 4 ситуации
  • CTO / IT-директору 3 ситуации
  • Инвестору / Борду 2 ситуации
Опыт в компаниях
СОГАЗ
МегаФон
Спортмастер
АльфаСтрахование
CUSTIS
// 01 — Проекты

Примеры и код

PROJECT_001
API Gateway

API Gateway

Self-service платформа без лицензионных затрат. Управление маршрутами, клиентами, аутентификация, rate limiting. Трудоёмкость 3 недели part-time.

Kotlin, Spring Boot 3.4, React, PostgreSQL, Redis, Docker

PROJECT_002
Claude Bot

Claude Bot

Удаленное управление работой агентов Claude через бота в Telegram.

n8n, Claude AI, Telegram API, FastAPI, Docker

PROJECT_003
WatchOfWatch

Интерактивный виджет

350 часов в матрице 50×7. Визуализация времени как живого паттерна.

TypeScript, React, Canvas API, Astro Islands, Tailwind CSS


// 02 — О себе

Опыт и подход

За 25 лет прошёл путь от разработчика до CTO в компаниях масштаба АльфаСтрахование и МегаФон. Сегодня работаю как технический эксперт.

Специализируюсь на агентных AI-системах, архитектуре высоконагруженных сервисов и быстром запуске продуктов с нуля. Могу в одиночку закрывать задачи, которые обычно требуют целой команды. Имею опыт управления коллективами 200+ сотрудников.

Строю без лишних инструментов и лицензий — только то, что реально работает и приносит результат.

Стек и компетенции
AI / Agents
Claude AI, n8n, LLM
Backend
Java, Kotlin, Spring, REST, Python
Frontend
React, TypeScript, Canvas
Data
PostgreSQL, Oracle, MS SQL, MinIO
DevOps
Docker, Traefik, Vault, Grafana
Leadership
CTO, Tech/Team Lead
// 03 — Контакт

Обсудим
вашу задачу?

Напишите в Telegram — договоримся о звонке на 20–30 минут

Load Test — API Gateway
Load Test Results
API Gateway — Architecture
System Context Level 1
HTTPS + Bearer JWT HTTPS (OIDC) JWT validation / OIDC Proxy requests Prometheus scrape + OTLP push CI/CD deploy (secrets from Vault) API Consumer Внешний клиент, вызывающий API Admin User Developer / Security / Admin API Gateway [System] Spring Cloud Gateway Reactive Stack Keycloak [External] IAM / SSO OIDC + JWT Upstream Services [External] Backend API сервисы Monitoring [External] Prometheus + Grafana + Jaeger CI/CD & Secrets [External] GitLab CI + Vault + Nexus ЛЕГЕНДА Person Internal System External System
Container Diagram Level 2
HTTPS + Bearer HTTPS (OIDC) HTTP Static files API calls HTTP /api/v1 Rate limit (Lua) JWKS validation Proxy request R2DBC CRUD PUBLISH event SUBSCRIBE API Consumer OAuth2 client Admin User Dev / Security / Admin Traefik 3 [External] Reverse proxy · TLS termination Admin UI [Container] React 18 + Ant Design SPA Gateway Core [Container] Spring Cloud Gateway WebFlux · Netty · Port 8080 Admin Service [Container] Spring WebFlux R2DBC · Port 8081 PostgreSQL 16 [Database] Routes · Audit logs 14 Flyway migrations Redis 7 [Database] Rate limiting · Pub/Sub cache invalidation Keycloak 24 [External] OIDC + JWKS JWT validation Upstream Services [External] Proxied backends ЛЕГЕНДА Person Container External Data Store Async (Pub/Sub)

Rate Limiting: Token Bucket + Per-Consumer

Двухуровневая система: глобальный per-route лимит через Redis Lua EVALSHA (атомарный Token Bucket) и per-consumer лимиты с отдельным ConsumerRateLimitCacheManager. При недоступности Redis — автоматический fallback на Caffeine in-memory с 50% от лимита.

Lua скрипт обеспечивает атомарность без distributed locks. Per-consumer лимиты позволяют давать Premium-клиентам больше capacity. Caffeine fallback гарантирует работу gateway даже при сбое Redis — degraded mode лучше чем полный отказ.

Полностью Reactive стек

Spring Cloud Gateway + WebFlux + Netty + R2DBC. Все I/O неблокирующее: HTTP, PostgreSQL, Redis. Нет ThreadLocal — используем Reactor Context + MDC bridging для correlation ID propagation через всю цепочку.

Reactive стек даёт максимальный throughput при минимальном числе потоков. Для API Gateway это критично — один инстанс обрабатывает тысячи concurrent соединений. Event loop модель Netty эффективнее thread-per-request.

Hot Reload конфигурации

Admin Service публикует события в Redis Pub/Sub при изменении маршрутов, rate limits и consumer limits (3 отдельных канала). Gateway Core подписан на все три — RouteCacheManager обновляет AtomicRef<routes> за < 100ms без перезапуска.

AtomicRef.set() — lock-free обновление, совместимое с reactive стеком (нет synchronized). Redis Pub/Sub — минимальная латентность по сравнению с polling. Три отдельных канала — targeted invalidation вместо flush всего кеша.

Security: Keycloak + RBAC

API consumers используют client_credentials grant → JWT Bearer. Admin UI — OIDC PKCE flow через Keycloak. Gateway Core валидирует JWT через JWKS endpoint. Admin Service использует @RequireRole аннотацию с AOP аспектом и иерархией ролей: ADMIN > SECURITY > DEVELOPER.

Keycloak — централизованный IAM для всех сервисов инфраструктуры. JWKS validation не требует обращения к Keycloak при каждом запросе (кеш публичных ключей). RBAC через AOP — декларативно и не загромождает бизнес-логику.

Distributed Tracing: OpenTelemetry + Jaeger

TracingAttributesFilter добавляет span attributes (route, consumer, correlation ID) в каждый запрос. Трейсы отправляются через OTLP в Jaeger. W3C Trace Context propagation в upstream вызовы. Grafana показывает trace links рядом с метриками.

OpenTelemetry — vendor-neutral стандарт, позволяет сменить backend без изменения кода. Jaeger даёт визуализацию latency по span'ам. Correlation ID + trace ID вместе — можно найти запрос и по бизнес-логу и по трейсу.

Observability: Prometheus + Grafana

Оба сервиса экспортируют метрики через /actuator/prometheus. Prometheus scrapes каждые 15s. 5 alert rules: high error rate, P95 latency, gateway down, high consumer cardinality, high metrics cardinality. Grafana dashboard: RPS, P50/P95/P99, errors, per-consumer breakdown.

Pull-модель Prometheus не создаёт backpressure на сервисы. Per-consumer метрики позволяют видеть кто генерирует нагрузку. Alert на cardinality защищает от cardinality explosion при DDoS с random consumer ID.

Инфраструктура и CI/CD

GitLab CI: build → test → SAST (Semgrep) → Docker → deploy. 4 runners с Docker executor. Secrets из HashiCorp Vault (AppRole). Docker образы в Nexus Registry. PostgreSQL: 14 Flyway миграций (V1–V13, строгий порядок). Traefik 3 как reverse proxy с автоматическим TLS.

Vault вместо GitLab CI variables — секреты ротируются централизованно для всех сервисов. SAST блокирует pipeline при Critical/High findings. Flyway с out-of-order: false — предсказуемая схема БД. Centralized infra (Traefik, Postgres, Redis) — shared между проектами.

Component — Gateway Core Level 3a
incoming proxy JWKS check limit EVALSHA SUBSCRIBE Redis down? per-consumer lookup routes data GET routes HTTP Request [External] от Traefik CorrelationIdFilter [Component] Генерация / проброс X-Correlation-ID JwtAuthFilter [Component] Валидация JWT подписи через Keycloak JWKS ConsumerIdentityFilter [Component] Извлечение azp claim → consumer identity MetricsFilter [Component] Запись HTTP метрик По consumer / route RateLimitFilter [Component] Token Bucket (Lua) Per-route + Per-consumer TracingAttributesFilter [Component] OpenTelemetry span attributes LoggingFilter [Component] Structured logging + Correlation ID RouteCacheManager [Service] AtomicRef hot reload < 100ms RateLimitService [Service] Redis EVALSHA TokenBucketScript (Lua) LocalRateLimiter [Service] Caffeine in-memory fallback (50% limit) DynamicRouteLocator [Service] RouteDefinition из Redis → Spring routes ConsumerRateLimitCache [Service] Per-consumer limits Redis + TTL Keycloak JWKS [External] JWT validation Redis [Database] Rate limits + Pub/Sub + Routes Upstream Service [External] Backend API ЛЕГЕНДА Filter Service External Data Store Async (Pub/Sub)
Component — Admin Service Level 3b
JWT / OIDC /routes /rate-limits /approve /consumers /metrics log action log action log action on PUBLISH on change on change R2DBC INSERT R2DBC PUBLISH ×3 JWKS PromQL HTTP Request [External] от Traefik /api/v1 Security Layer [Component] JwtService + @RequireRole Keycloak roles → RBAC RouteController [Component] CRUD маршрутов фильтрация / пагинация RateLimitController [Component] CRUD rate limit политик ApprovalController [Component] Approve / Reject workflow ConsumerController [Component] API consumers keys / secrets MetricsController [Component] Gateway метрики топ маршрутов RouteService [Service] Бизнес-логика маршрутов ApprovalService [Service] DRAFT → PENDING → PUBLISHED ConsumerService [Service] Consumer CRUD + rate limit привязка AuditService [Service] Audit log всех действий MetricsService [Service] PromQL запросы к Prometheus EventPublishers [Service] Route + RateLimit + ConsumerRateLimit events PostgreSQL [Database] routes · audit_logs rate_limits · consumers Redis Pub/Sub [Database] 3 invalidation channels Keycloak [External] OIDC + JWKS roles Prometheus [External] PromQL API метрики gateway ЛЕГЕНДА Component Service External Data Store Async (Event)
Claude Bot — Architecture
Real-time управление AI-агентами через Telegram с двусторонней коммуникацией — streaming вывод Claude прямо в чат, управление сессиями и файлами через бота
Event-Driven Async-First Claude SDK State Machine
DATA FLOW
message webhook POST + secret query(prompt) streaming chunks webhook event edit message live update session CRUD manage state cwd: project dir secrets webhook secret Telegram User sends message Telegram Bot API webhook events n8n Workflow Event routing Inline keyboards FastAPI Session Router Pydantic v2 · Async State Machine IDLE → RUNNING → DONE max 5 concurrent Claude Code SDK async generator yield chunks · asyncio.Queue Redis Session state TTL 24h auto-cleanup HashiCorp Vault Webhook secret · Bot token Chat ID Project Files G:/projects/* path traversal protection

Streaming через async generator

Claude Code SDK отдаёт ответ по частям. Вместо ожидания полного ответа — async generator с yield на каждый chunk. FastAPI собирает chunks в буфер и через asyncio.Queue отправляет обратно в n8n → Telegram, который обновляет сообщение через edit. Пользователь видит, как Claude «печатает» в реальном времени.

Простой await на полный ответ = UX-катастрофа. Claude может думать минуту. Streaming + edit message создаёт ощущение live-общения и позволяет прервать генерацию, если ответ пошёл не туда.

Session State Machine в Redis

Каждая сессия — конечный автомат: IDLE → RUNNING → DONE. Состояние хранится в Redis с TTL 24h. Запрос в RUNNING-сессию ставится в очередь. Session ID — 16-char hex (64-bit entropy). Лимит: max 5 concurrent сессий.

В памяти процесса — потеря состояния при рестарте. Redis переживает деплой, а TTL автоматически чистит зависшие сессии без cron-задач.

Security: defence in depth

Webhook secret в X-Webhook-Secret header — n8n подписывает каждый запрос. Path traversal protection — многоуровневая валидация путей (normalization, whitelist, chroot check). Все входные данные через Pydantic v2 strict-модели. CORS ограничен только n8n origin.

Бот может выполнять команды на сервере через Claude. Один обход path validation = чтение /etc/passwd. Три слоя защиты: нормализация пути, whitelist директорий, финальный chroot check.

Тестирование: 35+ тестов

pytest-asyncio для async-кода. Redis заменён на fakeredis — полная имитация Redis API без реального сервера. Каждый тест изолирован: свой экземпляр fakeredis, нет shared state. Покрыто: API endpoints, session CRUD, webhook retry logic, Telegram message chunking.

Async-код тестировать сложно: event loop, timing, race conditions. pytest-asyncio + fakeredis дают детерминированные тесты без реальных зависимостей. 35 тестов проходят за 2 секунды.
WatchOfWatch — Architecture
350 независимых циферблатов на Canvas API, 6 фаз анимации при 60 FPS — каждый объект интерполирует углы стрелок по собственной траектории
Canvas API Astro Islands TypeScript Kinetic Typography
Animation Engine
ANIMATION PHASE CYCLE (loops forever) PHASE 1 Chaos random angles PHASE 2 Text Pattern interpolate to target PHASE 3 Wave dual sinusoid PHASE 4 Chaos Fisher-Yates reshuffle PHASE 5 Real Time sync Date.now() PHASE 6 Wave dual sinusoid loop Clock Matrix: 50 × 7 = 350 dials Single <canvas> · requestAnimationFrame · 60 FPS × 50 columns × 7 rows = 350 objects · · · · · · · EACH DIAL OBJECT hourAngle · minuteAngle targetH · targetM · phase · t Key Techniques Clockwise-only interpolation Dual sinusoid wind effect Fisher-Yates shuffle O(n) DPR-aware Retina rendering Rendering Pipeline requestAnimationFrame update 1022 angles batch draw 350 dials composite frame 60 FPS

Однонаправленная интерполяция углов

Стрелки всегда вращаются по часовой. Наивный lerp(from, to) выбирает кратчайший путь — стрелка может дёрнуться назад на 350°, что выглядит как баг. Вместо этого: если target < current, интерполяция идёт через target + 2π — стрелка делает полный оборот вперёд.

350 объектов × 2 стрелки = 700 параллельных интерполяции каждый кадр. Все вычисления — чистая математика без DOM, единственный рендеринг — batch draw на Canvas.

Двунаправленная интерполяция визуально хаотична — стрелки мечутся влево-вправо. Однонаправленная создаёт эффект «механизма» — все стрелки крутятся согласованно, как шестерёнки в часах.

Wind Effect: двойная синусоида

«Волна» бежит по матрице как ветер по полю. Два слоя синусоид с разными частотами: крупная волна (длина = ширина матрицы) задаёт общее движение, мелкая рябь (×3 частота, ×0.3 амплитуда) добавляет органичность.

Одна синусоида выглядит механически. Суперпозиция двух — паттерн, который мозг воспринимает как «природное» движение, но не может разложить на составляющие.

Fisher-Yates shuffle

Между фазами порядок обновления циферблатов перемешивается. Fisher-Yates даёт идеально равномерное распределение за O(n) — каждая перестановка равновероятна.

Math.random().sort() имеет bias и O(n log n). При 350 элементах bias заметен визуально — некоторые области «обновляются» раньше. Fisher-Yates это устраняет.

Accessibility и производительность

prefers-reduced-motion: при включённой настройке анимации выключаются, стрелки показывают статичное время. aria-labels на canvas с текстовым описанием. noscript fallback со статичным изображением.

DPR-aware рендеринг: canvas физически в 2-3× больше CSS-размера на Retina. Без этого стрелки размытые.

Pattern Editor (бонус)

909 строк, отдельный WYSIWYG-инструмент. Клик по ячейке → выбор угла для часовой и минутной стрелки. Паттерн экспортируется как JSON-массив и подключается к основному движку.

Позволяет визуально создавать надписи и фигуры, которые движок потом анимирует в фазе «text pattern».

Карьера в цифрах
Страхование Телеком Ритейл Финсектор IT-консалтинг

Масштаб управления

200+ человек в зоне ответственности, производство полного цикла (CUSTIS)

150+ человек — разработка и сопровождение полного цикла (АльфаСтрахование, 18 лет)

35 человек — 3 команды с нуля за 3 месяца (СОГАЗ)

10+ кросс-функциональных Agile-команд (АльфаСтрахование)

~40 корпоративных систем (SAP FSCM, Oracle E-Business Suite, Infor SalesLogix, QlikView, OpenText и др.)

до 5 000 пользователей внутренних систем, 25+ млн клиентов на сайте (2019 ↗)

Результаты

Time-to-market: 6 мес → 2 недели (Agile-трансформация)

Доступность: 94% → 99.9% — SRE-группа с нуля

25+ млн клиентов на alfastrah.ru — #1 по посещаемости среди страховых (Яндекс.Радар, 2018 ↗)

Приложение — победитель «Рейтинг Рунета» 2019 ↗ в категории «Финансы»

MVP B2B-портала ↗ за 4 недели → 4 команды (28 чел) через год. В 2018 — лидер продаж ОСАГО через агентский канал. Работает до сих пор: 860K+ визитов/мес

ISO/IEC 20000-1:2011 — сертификация разработки

Продукты-лидеры

alfastrah.ru — #1 по посещаемости среди страховых (2018 ↗), 25+ млн клиентов (2019 ↗), работает до сих пор

Приложение АльфаСтрахование — победитель «Рейтинг Рунета» 2019 ↗, работает до сих пор

B2B-портал «АльфаПолис» ↗ — 860K+ визитов/мес (SimilarWeb ↗), вырос в экосистему из двух платформ, работает до сих пор

Команды — 10+ лет вместе, многие работают до сих пор


Кейс: СОГАЗ Антикризисный CTO

Принял хаос от 10 подрядчиков (legacy, проблемы с безопасностью). Построил 3 команды с нуля, вывел на релизы за 3 месяца. Выявил и закрыл критическую утечку персданных за месяц.

Кейс: МегаФон Разработка

Перевёл кредитный брокер от подрядчика внутрь — тысячи кредитов, десятки тысяч расчётов в сутки. 60 модулей, 17 микросервисов, интеграции с 5 банками — за 2 месяца. Оптимизация загрузки данных: десятки минут → секунды.

Кейс: CUSTIS Аудит + Стратегия

Аудит (200+ человек, несовместимые стеки, текучка 70%, 3 мес на вхождение). Стратегия масштабирования, Productivity Team.

Кейс: АльфаСтрахование IT бизнес-партнёр

Масштабная Agile-трансформация традиционной компании. BigData/AI команда с нуля (Hadoop, антифрод). Продукты-лидеры рынка в B2B и B2C.

🏢 Владельцу / CEO

IT — функция, которая должна работать на бизнес. Когда не работает — это ваша проблема.

IT тормозит бизнес

Фичи месяцами, конкуренты обгоняют

Не понимаю, что происходит

CTO говорит «сложно», бюджет растёт

Команда не работает как команда

Люди есть, результата нет, текучка

Всё на одном человеке

Вася уйдёт — бизнес встанет

Подрядчик держит

Код у них, цены растут, деться некуда

Растём — IT не готово

Бизнес ×2, а система ляжет

Нужен новый продукт

MVP, инструмент, новые технологии

Хотим внедрить AI — не знаем как

Все говорят про AI, хотим тоже, но с чего начать

Vibe-coding зашёл в тупик

Собрали на AI, всё ломается, никто не понимает

Частые вопросы
«Вы технарь — будете говорить умными словами?»
Терпеть не могу, когда прячутся за терминами. 18 лет работал с бизнес-заказчиками — от продавцов до зам. генерального. Умею объяснять так, чтобы было понятно. Если непонятно — это моя проблема, не ваша.
«Мой CTO / команда обидится, что позвали кого-то со стороны?»
Зависит от подачи. Я прихожу не проверять и не заменять — а помочь. Большинство нормальных IT-руководителей рады, когда кто-то берёт часть нагрузки. А если обижаются на помощь — это сигнал.
«Сколько это стоит?»
Консалтинг / аудит — от 300K за проект. Антикризисный CTO — от 500K/мес. Можем привязать часть к результату — я уверен в том, что делаю. Первый разговор — бесплатно, 30 минут.
«А вы сами используете AI?»
Да, активно. Три проекта на GitHub сделаны с Claude. Но не «vibe-coding», а управляемое создание: я понимаю каждую строку, пишу тесты, документирую. AI — инструмент, не замена архитектора.

IT тормозит бизнес

Каждая новая фича — месяцы согласований и разработки. Конкуренты запускают быстрее. Вы слышите «это сложно», «нужен рефакторинг», «техдолг» — но не понимаете, правда это или отговорки. Деньги в IT уходят, скорость падает. Product Owner жалуется, что не может получить фичи — разработка ссылается на техдолг.
«Почему всё так медленно? Раньше запускали за неделю, теперь за квартал. IT-отдел растёт, а результата меньше. Может, люди не те? Или я чего-то не понимаю? Конкуренты обгоняют, а мы обсуждаем "архитектуру"...»
  • Разберусь, где реальный блок — люди, процессы или технологии
  • Дам честную оценку: что отговорки, что правда
  • Составлю план ускорения с конкретными сроками
  • Time-to-market ×12 — делал в АльфаСтраховании, знаю как
Формат:Full-time Part-time Консалтинг

Не понимаю, что происходит в IT

IT стало чёрным ящиком. CTO говорит умные слова, вы киваете. Бюджет согласовываете, но не понимаете — это много или мало, правильно тратим или нет. Когда что-то ломается — не знаете, кто виноват и как предотвратить.
«Я плачу за то, чего не понимаю. Это неприятно. CTO уволится — и я останусь вообще без понимания. Подрядчики говорят одно, команда другое. Кому верить? Хочу разобраться, но некогда и не знаю как...»
  • Переведу с «айтишного» на человеческий — будете понимать, что происходит
  • Независимый аудит за 1–2 недели — честная картина без политики
  • Настрою прозрачность: дашборды, метрики, понятные отчёты
  • Научу задавать правильные вопросы команде
Формат:Консалтинг Проект

Команда не работает как команда

Люди есть, а результата нет. Раньше запускали за неделю — теперь за месяцы. Текучка растёт, на exit-интервью говорят «культура», «нет роста». Или команды конфликтуют между собой. Что-то сломалось, но непонятно что.
«Раньше знал всех по имени. Теперь — слои менеджеров и бесконечные согласования. IT стало медленным. HR говорит "проблема в культуре", CTO говорит "всё нормально". Кто-то врёт. Или оба не понимают...»
  • Разберусь, где ломается — процессы, люди или коммуникации
  • Поговорю с каждой стороной — пойму реальную картину без политики
  • Верну скорость без потери качества — time-to-market ×12 в моём опыте
  • Выстрою культуру, где людям не всё равно — это главный двигатель
Формат:Full-time Part-time Консалтинг

Всё держится на одном человеке

Есть «Вася», который знает всё. Если Вася заболеет, уйдёт в отпуск или уволится — бизнес встанет. Вася это понимает и пользуется. Вы платите выше рынка, терпите характер, боитесь потерять. Или ещё хуже — Вася уже подал заявление, и у вас месяц чтобы вытащить знания.
«Я в заложниках у собственного сотрудника. Это унизительно. Хочу избавиться от зависимости, но не знаю как — Вася не передаёт знания, документации нет, команда без него не справится...»
  • Аккуратно вытащу знания из головы «Васи» — без конфликта
  • Задокументирую критичное — архитектура, процессы, «где что лежит»
  • Выстрою команду, которая справится без одного человека
  • Создам структуру, где уход любого — не катастрофа
Формат:Проект Part-time

Подрядчик держит в заложниках

Подрядчик разработал систему — и теперь вы зависите от него. Код формально ваш, но реально у них. Каждое изменение — по их ценам, в их сроки. Хотите забрать внутрь, но там «всё сложно».
«Они подняли цены в третий раз. Я не могу отказаться — у них код, знания, доступы. Найти другого подрядчика? Он скажет то же самое. Забрать внутрь? Не знаю как, там legacy, документации нет...»
  • Проведу аудит — пойму, что реально есть и в каком состоянии
  • Составлю план перехода — поэтапно, без остановки бизнеса
  • Сам переведу код внутрь — делал в МегаФоне за 2 месяца (60 модулей, 17 микросервисов)
  • Выстрою внутреннюю команду поддержки
Формат:Проект Антикризисный CTO

Растём — IT не готово

Бизнес готов к росту в 2–3 раза. Но вы не уверены, что IT выдержит. Уже были падения под нагрузкой. CTO говорит «выдержит» — но вы ему не до конца верите.
«Мы вложились в маркетинг, ждём рост. А если сайт ляжет в Чёрную пятницу? CTO уверяет, что всё ок. Но он так говорил и в прошлый раз — когда всё упало. Хочу независимую оценку...»
  • Аудит за 1–2 недели — где упадёт, при какой нагрузке
  • Приоритизированный план: что чинить первым, что подождёт
  • Оценка в деньгах и времени — сколько стоит подготовиться
  • Если нужно — сам напишу критичные куски
Формат:Консалтинг Проект

Нужен новый продукт

Бизнес работает, IT справляется с текущими задачами. Но появилась новая идея — нужен MVP для проверки гипотезы, внутренний инструмент или продукт на новых технологиях. Не хотите отвлекать команду от основных задач — ищете кого-то под ключ.
«Есть идея, хочу проверить быстро. Команда занята, да и стек другой нужен. Не хочу нанимать людей под эксперимент. Нужен один человек, который возьмёт и сделает — от начала до конца...»
  • От задачи до продакшена — сам, весь цикл
  • Backend + frontend + инфраструктура — не нужно искать троих
  • AI ускоряет ×3, но под контролем — без «магии» и непонятного кода
  • С тестами и документацией — передадите команде когда нужно
Формат:Проект Почасовая

Хотим внедрить AI — не знаем как

Все говорят про AI — конкуренты, пресса, сотрудники. Вы понимаете, что надо что-то делать, но не понимаете что. Где реальная польза, а где хайп? Сколько это стоит? С чего начать? Кому доверять?
«Конкуренты уже что-то внедряют. Мы отстаём? Или они просто хайпуют? CTO предлагает "поэкспериментировать" — боюсь, что сольём бюджет на игрушки. Хочу понять, где реальная польза для нашего бизнеса...»
  • Разберусь в вашем бизнесе — где AI даст реальную пользу, а где профанация
  • Честно скажу, если AI вам не нужен — не буду продавать хайп
  • Сделаю пилот за 2–4 недели — увидите результат, прежде чем вкладываться
  • Научу команду работать с AI осмысленно — не vibe-coding, а управляемый процесс
Формат:Консалтинг Проект

Vibe-coding зашёл в тупик

Кто-то (вы, команда, фрилансер) быстро собрал продукт с помощью AI — ChatGPT, Cursor, Copilot. Работало. Потом перестало. Или работает, но добавить фичу невозможно — всё ломается. Код есть, но никто не понимает, как он устроен. «Vibe-code» превратился в проблему.
«Казалось, что AI всё решит. Собрали MVP за неделю — круто! А теперь каждое изменение — лотерея. Фрилансер говорит "тут всё переписывать". Другой говорит "нормально". Я не понимаю, кому верить. И сколько это будет стоить...»
  • Разберусь, что там реально — может, не так страшно
  • Отделю рабочее от мусора — не всё надо переписывать
  • Задокументирую логику — чтобы следующий понимал
  • Если нужно переписать — сделаю поэтапно, без остановки
  • Научу, как использовать AI правильно — чтобы не повторилось
Формат:Проект Консалтинг
🚀 Фаундеру

Строите продукт с нуля. Ресурсы ограничены, времени мало, нужен надёжный партнёр.

Нужен технический партнёр

Идея есть, рук нет, фрилансеры пропадают

Подняли раунд — нужна скорость

Инвесторы давят, команда медленная

Архитектура «на коленке»

Боюсь, через год переписывать

Нужен ×1 вместо команды

Денег на команду нет, нужен один человек

Частые вопросы
«Справитесь один? Не станете бутылочным горлышком?»
С первого дня строю так, чтобы код был задокументирован, покрыт тестами и готов к передаче. AI позволяет одному работать в темпе небольшой команды — не «вайб-кодинг», а управляемое создание по шагам. А когда придёт время — соберу команду.
«25 лет опыта — не будет ли медленно для стартапа?»
Скорость — не про возраст, а про мотивацию. Ушёл из enterprise не потому что не справлялся — устал от политики и хочу снова создавать. MVP за 4 недели — нормальный темп, когда любишь то, что делаешь.
«А если продукт взлетит — не уйдёте?»
«Взлетел» — самое интересное. Масштабировать, набирать команду, выстраивать культуру. 18 лет в одной компании — не потому что некуда было идти. Потому что там был смысл. Я не ухожу оттуда, где так.

Нужен технический партнёр

У вас есть идея и первые деньги — свои или ангельские. Нет технического ко-фаундера, которому можно доверять. Фрилансеры пропадают, агентства дорого и непрозрачно. Вы не понимаете, правильно ли всё делается — и это пугает.
«Боюсь, что меня обманут. Не понимаю, сколько должен стоить MVP. Слышал про "технический долг" — звучит страшно. Как понять, хороший ли код пишут? Уже обжёгся на фрилансерах, не хочу повторять...»
  • Объясню каждое решение человеческим языком — без «это вам не нужно понимать»
  • MVP за недели, не месяцы — увидите результат быстро, сможете показать инвесторам
  • Код с первого дня готов к передаче — вы не привязаны ко мне
  • Когда взлетит — помогу нанять команду и не дам вас обмануть
  • Готов на equity — если верю в проект
Формат:Ко-фаундерство Проект

Подняли раунд — нужна скорость

Вы подняли раунд и теперь отвечаете за результат. Команда есть, но скорость не та. Инвесторы спрашивают про roadmap — вы не уверены, что он реалистичен. Нужен человек, который наведёт порядок и ускорит delivery.
«Инвесторы давят на метрики. Текущая команда медленная. Не понимаю — люди плохие или процессы. Боюсь, что сожжём runway и ничего не выпустим. Нужен кто-то взрослый, кто уже это проходил...»
  • Разберусь, где узкое место — люди, процессы или архитектура
  • Выстрою delivery так, чтобы вы могли обещать инвесторам реальные сроки
  • Если нужно — пересоберу команду. Нанимал 200+ человек, знаю как
  • Сам напишу критичные куски, если команда не успевает
Формат:Full-time Part-time Проект

Архитектура «на коленке»

Вы умеете кодить и уже что-то написали. Но чувствуете, что архитектура «на коленке» — и это может аукнуться при росте. Нужен опытный партнёр, который поможет принять правильные решения сейчас.
«Я хороший разработчик, но не уверен в архитектурных решениях. Боюсь, что через год придётся переписывать. Ищу ментора, который не будет отжимать контроль, а поможет вырасти...»
  • Посмотрю на архитектуру свежим взглядом — подскажу, где мины
  • Не буду переписывать всё «по-своему» — работаю с тем, что есть
  • Научу принимать архитектурные решения самостоятельно
  • Партнёр, не начальник — мне нравится растить людей
Формат:Ко-фаундерство Консалтинг Part-time

Нужен ×1 вместо команды

Денег на команду нет. Нужен один человек — backend, frontend, деплой. Который не пропадёт через месяц. Которому можно доверять. «Технический ко-фаундер на минималках».
«Денег на команду нет. Фрилансеры пропадают. Агентства дорого. Нужен один человек, который сделает всё — и которому не всё равно на результат...»
  • Backend + frontend + DevOps — один вместо трёх
  • MVP быстро — результат, не отчёты о прогрессе
  • Мне не всё равно — люблю строить, не отсиживать
  • Готов на equity — если верю в проект
Формат:Ко-фаундерство Проект
💻 CTO / IT-директору

Отвечаете за техническую часть. Иногда нужны руки, иногда — второй взгляд, иногда — помощь разгрести.

Нужны руки

Задача есть, делать некому, все заняты

Нужен второй взгляд

Не уверен в решении, хочу экспертизу

Унаследовал хаос

Legacy, техдолг, команда выгорела

Частые вопросы
«CTO, который пишет код — не переплата?»
Мне скучно на совещаниях, где 20 человек согласовывают цвет кнопки. Не скучно строить продукт. 28 лет что-то создаю — и до сих пор люблю. Вы платите за скорость и качество, не за должность.
«Архитектор, который рисует квадратики и уходит?»
Не мой стиль. Три проекта на GitHub — полная реализация от первого коммита до продакшена. Если рекомендую Token Bucket — значит, я уже написал Lua-скрипт для Redis и знаю, где он упадёт.
«У нас legacy — не скажете "сносить и писать с нуля"?»
Работал с ~40 enterprise-системами — SAP, Oracle, QlikView. «Переписать» звучит красиво, но обычно невозможно. Начинаю с того, что болит, ищу решения рядом с существующим.

Нужны руки

У вас есть задача senior-уровня, а все заняты. Или нужен человек на сложный кусок, где важен опыт. Хотите делегировать и не думать — получить готовый результат.
«У меня есть задача, которую я бы сделал сам — но нет времени. Нужен человек, которому можно объяснить один раз и он сделает. Без микроменеджмента. И чтобы код был хороший...»
  • Объясните один раз — дальше сам, без вопросов каждый час
  • Код как для себя — с тестами, документацией, без «потом поправлю»
  • Если увижу проблему в задаче — скажу сразу, не после дедлайна
  • 25 лет опыта — видел большинство граблей, не наступлю
Формат:Part-time Проект Почасовая

Нужен второй взгляд

Нужно принять архитектурное решение, от которого многое зависит. Или понять, почему текущая система тормозит. Нужен второй взгляд от человека, который сам строил подобное.
«Я понимаю задачу, но не уверен в решении. Нужен кто-то с опытом, кто посмотрит свежим взглядом. Не теоретик, а тот, кто сам это строил. И честно скажет, где я ошибаюсь...»
  • Посмотрю свежим взглядом — без «у нас так принято»
  • Не просто «это плохо» — а конкретно: что, почему, как исправить
  • Три проекта на GitHub — я не теоретик, сам пишу код
  • Расскажу про грабли, на которые наступал — сэкономлю время
Формат:Консалтинг Part-time

Унаследовал хаос

Вы пришли в компанию — а там legacy, техдолг, документации нет. Предыдущий автор ушёл. Команда выгорела. Бизнес давит. Вы понимаете проблемы, но не хватает рук разгрести.
«Боюсь трогать — сломаю. Тестов нет, документации нет, один человек понимал как это работает — и он уволился. Бизнес требует фичи, а я не понимаю, как эта штука вообще держится...»
  • Проведу археологию — пойму, как это реально работает, задокументирую
  • Найду критичные точки — что сломается первым, что можно не трогать
  • Составлю план: не «переписать всё», а «снизить риски поэтапно»
  • Возьму на себя самое горящее, пока вы занимаетесь стратегией
Формат:Проект Part-time Консалтинг
📊 Инвестору / Борду

Нужна независимая оценка технологий. Без приукрашивания, на понятном языке.

Due diligence

Что под капотом, какие риски, стоит ли вкладывать

IT вышло из-под контроля

Менеджмент говорит «всё ок», но это не так

Частые вопросы
«Как быстро можете провести оценку?»
Базовый tech due diligence — 1–2 недели. Глубокий аудит с оценкой команды — 3–4 недели. Если горит — могу дать первичную оценку за 2–3 дня, но с оговорками.
«Отчёт будет понятен не-технарям?»
Да. 18 лет работал с бизнес-заказчиками и топ-менеджментом. Умею переводить с технического на человеческий. Риски, деньги, сроки — без «это сложно объяснить».
«Можете не только оценить, но и исправить?»
Да. Терпеть не могу рекомендации без ответственности. Если после аудита нужно взять execution — готов. Антикризисный CTO, временное усиление команды, разовый проект — обсудим формат.

Due diligence

Вы рассматриваете инвестицию или покупку. Нужно понять реальное состояние технологий — без приукрашивания. Риски, техдолг, масштабируемость, качество команды.
«Мне нужно понять, что там под капотом. CTO компании рассказывает красиво, но я хочу независимую оценку. Есть ли техдолг? Выдержит ли масштабирование? Какие риски?»
  • Tech due diligence за 1–2 недели — независимо и честно
  • Оценка техдолга в деньгах и времени — что нужно для починки
  • Оценка команды — кто ключевой, где риски ухода
  • Понятный отчёт для не-технических партнёров
Формат:Консалтинг Проект

IT вышло из-под контроля

Вы видите, что IT — узкое место, но не можете понять масштаб проблемы. Менеджмент говорит «всё под контролем», но релизы срываются, клиенты жалуются. Нужен независимый взгляд и быстрые действия.
«Мы вложили деньги, а IT тормозит весь бизнес. CEO говорит "разберёмся", но ничего не меняется. Нужен кто-то независимый, кто скажет правду. И быстро исправит. Время — деньги.»
  • Независимый аудит за 1–2 недели — честная картина без политики
  • План с конкретными сроками и стоимостью — не «когда-нибудь»
  • Сам возьму execution, если нужно — не только рекомендации
  • Отчитываюсь напрямую — без фильтрации через менеджмент
Формат:Консалтинг Антикризисный CTO