Услуги
Что я делаю для клиентов.
Backend, интеграции с ИИ, RAG-системы и неблагодарная работа по приведению AI-сгенерированного кода в production-shape. Независимый контрактор, async-first, клиенты из US / AU / EU.
-
Сайты и лендинги
Быстрые, мультиязычные, SEO-ready — Lighthouse 100/100/100/100.
Маркетинговые сайты, продуктовые лендинги, мультиязычные портфолио. Astro / Next / Vue + Tailwind, деплой через Docker + Traefik, полная микроразметка, sitemaps, RSS, OG-картинки и i18n. Живые примеры — этот сайт (vbcherepanov.com) и totalmemory.dev.
Что получаете
- Astro / Next.js / Vue + Tailwind — выбор под форму контента, не под хайп.
- JSON-LD (WebSite / Person / Article / Service), sitemap per content type, hreflang, OG.
- Lighthouse 100 / Core Web Vitals в зелёной зоне / WCAG AA / cookie-баннер с уважением к выбору.
- Мультиязычность (en/ru/sr или любая пара) через content collections и корректные canonical URL.
- CI/CD: GitLab или GitHub Actions, Docker multi-stage, Traefik / nginx, zero-downtime деплой.
Стек
- Astro
- Next.js
- Vue / Nuxt
- Tailwind
- Docker
- Traefik
- GitLab CI
-
Backend-сервисы и API
Go- и PHP/Symfony-сервисы, которые выживают в продакшене.
REST + gRPC сервисы, OAuth2/OIDC identity, message-driven ядра, PostgreSQL/Redis/RabbitMQ. Clean architecture (handler ≤15 строк → service → repo), domain errors, структурные логи, метрики + трейсинг — встроены с первого коммита, а не после первого инцидента.
Что получаете
- Go 1.25+ или PHP 8.4 / Symfony 8.0 — под команду и нагрузку.
- PostgreSQL 18: схема, миграции, стратегия индексов, keyset-пагинация.
- Event-driven через RabbitMQ / NATS / Kafka, idempotency keys, outbox pattern.
- OpenAPI / gRPC контракты, code-gen, contract-тесты, никаких `any`/`mixed` в бизнес-данных.
- Observability: Prometheus + структурный slog/Monolog + OpenTelemetry traces.
Стек
- Go
- PHP / Symfony
- PostgreSQL
- RabbitMQ
- gRPC
- OpenAPI
- OAuth2/OIDC
-
Интеграция с ИИ
Встраиваю LLM в продукт — без demo-grade хрупкости.
OpenAI, Anthropic, DeepSeek и локальные модели (Ollama, llama.cpp, LM Studio), встроенные в backend через structured output, tool/function-calling, стриминг, ретраи, cost-aware routing и полную observability. Мульти-провайдер из коробки — без vendor lock-in.
Что получаете
- Провайдер-абстракция (Anthropic / OpenAI / DeepSeek / local) с детерминированными fallback.
- Tool calling, structured JSON output (zod / pydantic), streaming SSE / WebSocket.
- Бюджеты токенов и стоимости на запрос / пользователя / фичу — метрики в Prometheus.
- Версионирование промптов, eval-харнесс, golden-set regression-тесты на каждое изменение.
- Безопасность: PII redaction, prompt-injection hardening, content-фильтры, audit log на каждый вызов.
Стек
- Anthropic
- OpenAI
- Ollama
- MCP
- Function calling
- Structured output
-
RAG-системы
Retrieval, который реально находит — тот же рецепт что и в total-agent-memory (R@5 = 97 %).
Production RAG-пайплайны, которые обходят наивный cosine-similarity baseline: гибридный 6-tier retrieval (FTS5/BM25 + embeddings + fuzzy + graph + cross-encoder + MMR), chunking с уважением к семантике, evaluation против LongMemEval-style сетов. Та же архитектура, что в total-agent-memory с R@5 = 97 %.
Что получаете
- Векторные хранилища: pgvector (Postgres-native), Qdrant, FAISS — под масштаб и ops-модель.
- Гибридный retrieval: BM25 + dense + sparse + reranker (BGE-v2-m3 / Cohere / cross-encoder).
- Ingestion-пайплайн: парсеры по форматам, semantic chunking, переиспользование embeddings, dedup.
- Evaluation: LongMemEval / LoCoMo / ваш golden-set, R@K + nDCG отслеживаются во времени.
- Поверх — слой knowledge graph: сущности, связи, временные факты (Allen algebra).
Стек
- pgvector
- Qdrant
- BGE / Cohere
- Hybrid retrieval
- Eval harness
- MCP
-
Разгребём код после ИИ
Превращаю vibe-coded хаос в код, который можно поставить в прод и поддерживать.
Агент сгенерил пол-проекта и теперь оно «вроде работает», «вроде собирается», «вроде тесты есть». Прохожу форензикой: убиваю half-done заглушки, выношу хардкод в конфиг, отделяю domain от infra, пишу настоящие тесты вместо `// TODO: test`, возвращаю архитектуру в состояние, которое человек может развивать.
Что получаете
- Инвентаризация: TODO/FIXME/XXX/HACK/NotImplemented/stub/panic("todo") — добить или реализовать.
- Хардкод URL/IP/секретов/магических чисел → env, config, именованные константы.
- Demo / mock-данные вычищаются с prod-путей, переезжают в fixtures / seeds / factories.
- Архитектура выравнивается по слоям: handler ≤15 строк → service → repo, типизированные DTO.
- Настоящие тесты (unit + integration + golden + regression) — а не файлы из `assert true`.
- Security pass: SQL/SSRF/XSS, забытые admin-роуты, слабая auth, секреты в истории репозитория.
Стек
- Refactoring
- Tests
- Security audit
- Architecture review
- CI/CD
-
Настроим агентов чтобы качественно писали код
Claude Code / Cursor / Codex / Cline — с памятью, hooks, MCP и feedback loop, который ловит халтуру до того, как её увидите вы.
Большинство команд используют coding-агентов на 10 % их возможностей — без памяти, hooks, проектных правил и без проверочного цикла. Ставлю тот же стек, что у меня самого: total-agent-memory для кросс-сессионных знаний, a2abridge для multi-agent координации, CLAUDE.md / .cursorrules с реальными правилами архитектуры, hooks которые гейтят правки, и feedback loop (тесты/билд/линтер) после каждого изменения.
Что получаете
- MCP-серверы: total-agent-memory (постоянные знания), filesystem, A2A bridge.
- CLAUDE.md / .cursorrules / AGENTS.md с реальными правилами архитектуры, code quality и git.
- Hooks: pre-edit guards, post-edit lint/test, memory_save reminders, no-stub enforcement.
- Multi-agent setup: Claude + Codex / DeepSeek / local Llama в стиле AISWARM-оркестрации.
- Feedback loop: тесты + билд + линтер + grep на каждое изменение; агент никогда не пишет "DONE" пока красно.
- Hand-over: письменный плейбук для команды + 1-часовой созвон-разбор.
Стек
- Claude Code
- Cursor
- Codex
- MCP
- total-agent-memory
- a2abridge
- AISWARM
-
Консультации по архитектуре и стратегии
Второе мнение по стеку, архитектуре, AI-стратегии — по часам или за фикс.
Короткий, сфокусированный engagement, когда нужен взгляд senior-а извне: выбор стека, архитектурный ревью, performance-аудит, AI-стратегия, hiring signal. На выходе — письменный brief с конкретными рекомендациями, отранжированными по ROI, со ссылками на код там, где это уместно.
Что получаете
- Выбор стека: Go vs PHP vs Node, Postgres vs Mongo, выбор очереди — с trade-offs.
- Архитектурный ревью: layered vs hexagonal vs microservices, где на самом деле bottleneck.
- AI-стратегия: где LLM помогают, где стоят больше чем экономят, build-vs-buy.
- Performance-аудит: профайлинг, query plans, cache-стратегия, async vs sync.
- Hiring signal: читаю код кандидата, провожу live design review.
- Формат: 1ч созвон → письменный brief, либо 1-дневный on-site / paired session.
Стек
- Architecture review
- AI strategy
- Stack selection
- Performance audit
- Hiring