Николай Янковский

Николай Янковский

Внутренние продукты, AI-автоматизация и операционный опыт.
12 лет выстраивал продажи и операционку: собирал команды, запускал филиалы за рубежом, увеличивал выручку. Теперь ещё и сам собираю инструменты для бизнеса — через AI и код.

Харьков · живу в Софии · 1994 г.р. · женат
WhatsApp / Viber +380 93 976 03 63 · Mobile +359 87 7612126

Беру сложную или запущенную задачу, навожу в ней порядок и довожу до работающей системы. Раньше делал это в основном через людей: нанимал, обучал, ставил задачи, отвечал за результат. Сейчас добавился второй слой — внутренние продукты. Я разбираю процесс, описываю требования и собираю инструмент, которым потом можно пользоваться каждый день.

Начинал в найме: прямые продажи, кризисные ситуации, обучение людей, запуск и организация команд. Потом перешёл в другую компанию на управленческую роль рядом с собственником: зона ответственности стала шире одного участка, с фокусом на общий результат.

После этого я запустил собственный онлайн-бизнес: два бренда, продажи, реклама, логистика, поддержка, аналитика и операционные процессы. Следующим этапом стала разработка сложного продукта на свои деньги — торгового движка. На этом проекте я на практике увидел, как дорого обходятся слабая архитектура, размытые границы проекта и зависимость от внешнего разработчика.

За последние ~5 месяцев я довёл до рабочего состояния несколько систем: учёт для своего бизнеса, конвейер контента для клиента, объяснимую оценку кандидатов, внутренние инструменты и несколько R&D-проектов. В каждом таком проекте отвечаю и за операционную часть, и за продуктовую: что именно болит, кому это нужно, какой MVP собрать первым и как не потерять качество при быстрой сборке.

4 страны продажи, организация команд и операционка Харьков · Москва · Стамбул · Мадрид
17× рост выручки директор по продажам · производство и продажа EVA-материалов · 60 человек в команде
6 лет свой онлайн-бизнес 2 бренда · Aroma Car Lux / Addictive Perfumes · 82k заказов
12 лет B2C / B2B прямые и интернет-продажи · средний чек до $3 000
8 систем + 2 R&D AI-проекты за 5 месяцев собственный бизнес · клиентский проект · пайплайны и аналитика
1 CRM операционка моего бизнеса 36 таблиц · 186 API-эндпоинтов · 8 интеграций · 33 миграции
Python FastAPI Postgres RAG · Qdrant Claude Code · Codex MCP N8N Fal.ai Notion Miro React · Vanilla JS
Формат сотрудничества

Мой опыт — на стыке операционки, работы с людьми, продукта и технической реализации. Могу вести задачу от идеи до работающего инструмента: понять, что нужно, описать требования, собрать первую версию, скоординировать людей и довести до результата. Где быстрее сделать самому — собираю MVP сам; где нужно — работаю в команде и через людей.

Что для меня важно в первую очередь — сильная команда и амбициозный проект в долгую. Мне интереснее работать там, где можно влиять на общий результат и строить что-то стоящее, а не закрывать одну узкую функцию. Готов глубоко погружаться в задачу и расти вместе с командой и продуктом.

По формату мне ближе удалённая работа. Загрузка может быть разной: полный день, частичная занятость или проектный формат. Готов начать с тестового задания, чтобы показать подход на реальном примере.

Как я работаю

Разобрать → измерить → автоматизировать

Сначала раскладываю задачу на шаги, ищу повторяющиеся элементы и перевожу важные части в данные. Автоматизация появляется после понимания процесса, а не вместо него.

Код там, где нужна стабильность

Расчёты, агрегации, проверки, контракты и повторяемые операции лучше держать в коде. AI использую там, где он лучше справляется с вариативностью, текстом, поиском или черновой сборкой.

Архитектура остаётся на мне

AI может помогать писать код, собирать варианты и закрывать отдельные участки. Но общую картину, логику продукта и границы задачи держу сам.

AI-агента нужно обучить

Хороший агент появляется не из одного промпта. Ему нужны знания, инструкции, инструменты, память и понятная зона ответственности.

Сначала постановка, потом результат

Если я не разбираюсь в теме, сначала собираю контекст и настраиваю агента под эту область. AI усиливает ясное мышление, но плохо заменяет понимание.

Креатив тоже можно разложить

В маркетинге и контенте много повторяемых структур: матрицы вариантов, сценарии, критерии отбора, правила качества. Так проще получать много вариантов и выбирать их по понятным критериям.

Проекты

Рабочие продукты

доведены до рабочего состояния, дают результат

Aroma Dashboard

Aroma Dashboard — внутренняя CRM и операционная система моего онлайн-бизнеса. В ней собрана операционная статистика, заказы, реклама, финансы, логистика, плановые проверки качества данных и AI-аналитика на базе SQL-представлений. Оформление новых заказов пока осталось в старой CRM, а управленческая и аналитическая часть уже перенесена в Aroma Dashboard.

Стек: Python 3.11, FastAPI, SQLAlchemy async, PostgreSQL, Alembic, APScheduler, Jinja2, Metabase, OpenAI, Docker, Railway, GitHub Actions.

готовый MVP solo + AI-агенты свой бизнес
82kзаказов
36таблиц
186API-точек
8интеграций
Подробнее

Я собирал её сам с помощью AI-агентов: схема БД, миграции, API, серверный интерфейс, интеграции, плановые задачи, Docker, автодеплой и правила для AI-агентов. Это основной рабочий проект последних месяцев. Я использую его в операционной работе своего бизнеса.

Масштаб системы

36 таблиц, 33 Alembic-миграции, 18 роутеров FastAPI, 186 API-эндпоинтов, 16 страниц серверного интерфейса на Jinja. Бэкенд на Python/FastAPI + PostgreSQL, фронт серверный, визуализация — встроенный Metabase.

Данные

Синхронизация с OneBox CRM: около 82 000 заказов в истории. 510 реестров NovaPay и примерно 15 000 платежей сопоставляются с заказами автоматически. Курсы НБУ по USD/EUR подтягиваются ежедневно, рекламные данные FB/TikTok приходят через Airbyte Cloud в Postgres.

Интеграции

OneBox CRM, Nova Poshta, Airbyte для FB/TikTok, Gmail OAuth для реестров NovaPay, НБУ, OpenAI для GPT и Whisper, Metabase, Railway для размещения и запуска.

Качество и доступ

25 автопроверок целостности данных, RBAC на трёх уровнях, ручные правки по клиентам хранятся отдельно и не перезаписываются при синхронизации. 6-уровневая логика определения пола клиента по справочнику из 10 514 имён — неизвестных меньше 0.5% по всей базе.

AI в контуре

Один агент анализирует рекламу FB/TikTok через SQL-представления и подсвечивает проблемы в воронке. Второй работает как бизнес-аналитик по продажам, финансам и товарам. Голосовой ввод — через Whisper.

Дисциплина проекта

CLAUDE.md — рабочая инструкция для AI-агента, которую я обновляю после изменений. Формулы оборота, маржи и логистики защищены от случайных правок, SQL-представления восстанавливаются после сбоев Airbyte.

HR Helper

HR Helper превращает хаотичный поток откликов в понятный ранжированный список кандидатов с объяснением: какие сигналы в резюме сработали в плюс, какие в минус и где модель не уверена. Каждый балл подкреплён цитатой из резюме с меткой достоверности, поэтому оценку можно проверить по самому тексту. Система принимает резюме в любом формате, разбирает текст вакансии в портрет с критериями и весами, быстро отсеивает неподходящих по ролям и подробно оценивает выбранных, а дальше ведёт кандидата по воронке мини-CRM вплоть до подготовки к интервью и письма с отказом.

Видео-презентация проекта: смотреть. Демо (запись экрана): смотреть.
В процессе интеграции для рекрутинговых компаний.

Стек: Python 3.14, FastAPI, SQLModel, SQLite, Jinja2, HTMX, Tailwind, MarkItDown, PyMuPDF, Pydantic, claude -p (CLI), OpenRouter, ffmpeg, Whisper.

готовый MVP solo + AI-агенты личный инструмент
17таблиц
60маршрутов
7.3kстрок Python
18внешних промптов
8статусов воронки
2стадии оценки
Подробнее

Приём и обработка резюме

Резюме приходят в разных форматах — PDF, DOCX, HTML, Markdown, текст, в том числе трудные сканы и многоколоночные макеты. Приём отделён от обработки, как сырые заявки в CRM: сначала загрузил пачку, потом запустил обработку — она идёт фоновой очередью с живым прогрессом. Разные форматы обрабатываются по-разному: PyMuPDF проверяет структуру файла (есть ли текстовый слой, колонки, картинка), простые форматы читает MarkItDown, а сложные напрямую читает claude -p. Из текста модель достаёт базовые данные кандидата и до 10 широких ролей в порядке приоритета — по ним потом идёт предварительный отбор.

Профиль вакансии и модель баллов

Текст вакансии — печатью, документом или голосом — система разбирает в портрет и критерии в трёх группах: навыки, опыт и стоп-факторы. Вес критерия — это его важность по шкале 1–10. Балл критерия — это доля его важности от ста, поэтому сумма по всем плюсовым критериям всегда равна ста. Стоп-факторы считаются отдельно: они идут в минус, и у штрафа есть потолок. У каждого критерия описаны наблюдаемые «отлично» и «неприемлемо», а не абстрактное «соответствие высокое». У профиля есть версии: правка веса создаёт новую версию и сохраняет историю для калибровки.

Предварительный отбор и оценка

Перед подробной оценкой система делает быстрый и дешёвый отбор: один запрос к модели оценивает, насколько роли кандидатов из пула близки к вакансии, а дальше код раскидывает людей по трём корзинам. Порог можно двигать — пересчёт идёт сразу, без новых обращений к модели. Сама оценка идёт в две стадии, чтобы не смешивать число и текст: сначала модели ставят баллы 0–10 с цитатой по каждому критерию, потом отдельная модель пишет общее заключение — сильные стороны, риски и показательные примеры из резюме, не трогая баллы. Если включить режим с несколькими моделями, они оценивают независимо, и при большом расхождении кандидат помечается спорным.

Доказательства и калибровка

Каждый балл сопровождён цитатой из резюме. Код сверяет цитату с обработанным текстом и ставит метку достоверности: подтверждена, частично, не найдена или это вывод по смыслу. Цитата не отменяет балл — она делает оценку проверяемой: видно, где балл опирается на текст, а где это предположение. Калибровка живая: двигаешь вес критерия — список пересортируется сразу, из уже сохранённых баллов, без нового обращения к модели.

Воронка, интервью и аналитика

Кандидат идёт по воронке мини-CRM из восьми статусов по паре кандидат×вакансия, с историей переходов и заметками. Часть статусов запускает действия автоматически: «на рассмотрении» собирает бланк вопросов к интервью, «отклонён» — черновик именного письма с отказом. После интервью запись расшифровывается в текст и оценивается по этому бланку двумя баллами — от модели и от рекрутера, причём модель не видит оценку рекрутера. Сверху всё это сводится в дашборд по трём срезам, таблицу результатов и календарь собеседований.

Логика проекта

Архитектурно это тот же скелет, что в Aroma Dashboard, но с другой предметной областью: FastAPI, серверный интерфейс, фоновые очереди, доступ к моделям через сменный адаптер — локально через claude -p бесплатно или облачные модели через OpenRouter. Главный принцип у меня повторяется из проекта в проект: модель делает то, что меняется от случая к случаю — читает смысл, формулирует, — а то, что должно быть предсказуемым, держится в коде: расчёт баллов, проверка цитат, стаж, даты, сведение оценок нескольких моделей.

vash-advokat.org

Клиентский проект для «Фундації адвокатів України». За месяц была собрана новая версия сайта и базовая маркетинговая инфраструктура вокруг него: стратегия, сайт, SEO, контентная модель, AI/RAG-слой, запланированный n8n-контур и операционная документация.

Задача была собрать разрозненные материалы в понятный рабочий контур: с воронкой, технической базой, юридической безопасностью, контентным производством и возможностью дальше подключать рекламу, AI-агентов и регулярное продвижение.

Сайт: vash-advokat.org

Слои проекта: стратегия, B2C/B2B-позиционирование, Next.js-сайт, SEO, Schema.org, GSC, hreflang, FAQ-хаб, блог, Content Pipeline, Smart Chunker, Qdrant, SEO-RAG, n8n-концепт, AI Safety, парсинг клиентов и конкурентов, операционная документация.

готовый MVP solo + AI-агенты клиентский проект
1месяц
228FAQ-карточек
64→86Performance
100A11y / BP / SEO
3000SEO-RAG чанков
92контент-карточки
Подробнее

Стратегия

Сначала была зафиксирована стратегическая рамка: кто клиент, что продаётся, кому продаётся и через какую воронку. В позиционировании сделали акцент на защите, надёжности и юридическом опыте. Главный публичный персонаж — Веприцкий Сергей Сергеевич.

Аудитория разделена на два слоя: массовая B2C-аудитория с бытовыми, военными, семейными и кризисными юридическими вопросами; и B2B/премиум-сегмент — бизнес, собственники и люди с высокими юридическими рисками. Логика воронки: короткие видео и полезный контент → доверие и подписка → консультация → продажа абонемента или индивидуальной услуги.

Сайт и SEO

Сайт должен был стать центральной точкой проекта: туда должны вести соцсети, реклама, лид-магниты, блог и будущие AI-сценарии. Я собрал основную техническую базу на Next.js: двуязычие, canonical, hreflang, sitemap, Open Graph, оптимизация изображений, breadcrumbs, авторские страницы, юридические страницы и базовая SEO-инфраструктура.

Отдельно добавлены элементы, которые помогают пользователю проверить проект: Schema.org, разметка эксперта, организации, юридической услуги, контактов и статей. FAQ-хаб закрывает 114 вопросов на двух языках — всего 228 карточек. Его задача простая: отвечать на реальные тревожные запросы пользователей, усиливать SEO и давать сайту больше точек входа из поиска.

Контентная система

Я спроектировал модель первого месяца контента на 92 карточки: AI-avatar video, статичные посты, карусели, premium video и статьи. Контент разделён по себестоимости: дешёвый, средний и дорогой. Так бюджет можно объяснять через конкретную роль каждого формата: что даёт дешёвый, средний и дорогой контент.

На июнь запланировали органическое продвижение без таргета: сначала наполнить площадки, создать доверие, протестировать темы и подготовить базу для лид-магнитов.

AI / RAG / автоматизация

В проекте описана AI-инфраструктура: юридическая база знаний, Smart Chunker + Qdrant для векторизации, SEO-RAG-эксперт на 3000 чанков и AI Safety workflow для проверки юридического контента.

Также я спроектировал будущий n8n-контур для обработки входящих сообщений. Логика: соцсети → n8n → история диалога → RAG-запрос к юридической базе → Claude → safety-фильтр → ответ клиенту или передача горячего лида в Telegram/CRM. Этот блок зафиксирован как обязательный перед запуском таргета, чтобы не терять входящие обращения и не обрабатывать поток вручную.

Отдельно я разработал план парсинга потенциальных клиентов из открытых источников и будущего таргетирования на них. Параллельно добавил парсинг и аудит конкурентов, чтобы видеть, как устроена ниша: какие предложения используют, как упакованы услуги, какие каналы активны и какие темы или форматы конкуренты пока не закрывают.

Документация

Подготовлена операционная база: Operations Handbook, Recovery Playbook, RACI-матрица, link-building playbook, monitoring templates, article playbook и AI Content Safety workflow. Это нужно, чтобы проект не зависел от памяти одного человека и его можно было спокойно передать другим исполнителям.

Итог

За месяц у проекта появились сайт, SEO-база, FAQ-хаб, блоговая структура, контентная модель, AI/RAG-архитектура, n8n-концепт, план парсинга аудитории и конкурентов, а также операционные правила. Такой набор уже можно использовать как базу для контента, рекламы и дальнейшей автоматизации.

Content Pipeline

Конвейер для рекламных креативов: от темы до трёх готовых вертикальных видео с аватаром, B-roll, озвучкой, обложкой, субтитрами и подписью к посту. Он нужен там, где ручная сборка 30-секундного ролика занимает несколько часов: идея, сценарий, визуальный стиль, промпты, генерация, голос и монтаж. Сейчас логика работает для моего бизнеса и консалтингового клиента, а сама схема переносится под другие ниши и форматы.

Стек: Claude Code, Python, ffmpeg, Fal.ai, Nano Banana, Seedance 2, Veo 3, HeyGen, ElevenLabs, Qdrant, ASS-субтитры, API-поллеры.

готовый MVP solo + AI-агенты клиентский проект
3000+тем в плане
3видео из темы
15–20минут цикл
$1.5–3за единицу
Подробнее

Короткое видео кажется простым, но внутри у него много шагов: идея, угол подачи, текст, визуальный стиль, раскадровка, промпты, генерация изображений и видео, голос, субтитры и монтаж. Я разложил этот процесс на этапы, собрал базу знаний по инструментам и прописал инструкции так, чтобы агент работал по понятному производственному процессу и не придумывал варианты без опоры.

База знаний и инструкции

В системе есть материалы по работе с основными AI-инструментами для видео и голоса: Nano Banana, Seedance 2, Veo 3, HeyGen, ElevenLabs и другими. Отдельно собраны правила по камере, сценариям, визуалу, текстам, обложкам и монтажной логике. Поэтому агент видит и тему ролика, и подходящий инструмент для каждого шага.

Клиентская ниша

Для консалтингового клиента в юридической нише я собрал базу знаний по теме и контент-план на 3000+ тем. Дальше тема по расписанию попадает в пайплайн: система берёт её из очереди, создаёт рабочую карточку, запускает агентные шаги и ведёт состояние до финального файла.

Производственный цикл

  • Claude Code делает из одной темы три разных угла подачи. Каждый вариант собирается в 5 публичных блоков: зацепка, текст озвучки, подпись к посту, текст обложки и описание визуала для обложки.
  • Через Fal.ai создаётся обложка, обычно на Nano Banana.
  • ElevenLabs делает озвучку голосом клиента с тегами интонации и эмоций.
  • HeyGen создаёт AI-аватар по готовой озвучке.
  • По alignment-файлу Claude Code собирает карту видео: где остаётся A-roll с аватаром, где нужны B-roll вставки, какие эффекты и какие промпты нужны для каждого фрагмента.
  • Fal.ai параллельно генерирует видеоряд для B-roll.
  • Python-скрипт вместе с ffmpeg собирает финальное видео, накладывает субтитры и приводит материалы к единому формату.

Что получается на выходе

Одна тема превращается в три видео с разными углами подачи. В среднем полный цикл занимает около 15–20 минут, а себестоимость одной единицы получается примерно $1.5–3 в зависимости от качества и количества B-roll. Логику можно перестроить под другой формат: карусели, серийные видео со статичными персонажами, AI-аватары с B-roll или рекламные креативы для другого бизнеса.

Почему это важно

В проекте важна связка базы знаний, инструментов и проверок качества. Отдельная нейросеть без этого не даёт такого же контроля. AI делает вариативную и творческую часть, а повторяемые операции, проверка состояния, ожидание внешних сервисов и финальный монтаж вынесены в код. Поэтому процесс можно запускать сериями и понимать, на каком этапе находится каждый ролик.

Инструменты под мои задачи

собрал, чтобы быстрее делать свою работу и разобраться в новом

AI MVP Pipeline

При работе с AI легко уйти в хаотичный чат вместо нормального процесса разработки. AI MVP Pipeline раскладывает сырую идею на этапы, которые можно отдавать отдельным агентам: от обсуждения и видения продукта до плана, поэтапной сборки и первого сырого MVP для теста. Это может быть сайт, программа или новый pipeline.

Стек: Claude Code, Telegram-бот, Markdown-протоколы, библиотека проектных скиллов, конфигурация фаз, терминальный workflow, Git.

готовый MVP solo + AI-агенты личный инструмент
3шага
4скилла
11блоков vision
9блоков контракта
Подробнее

Админ-агент

Внутри есть агент-администратор: он доступен из терминала и через Telegram. Он знает активный проект, режим работы, проектные папки, библиотеку скиллов и помогает запускать фазы для субагентов. Когда появляется новая идея, я обсуждаю её с ним, а он ведёт её по протоколу: сначала уточняет смысл, потом фиксирует границы, потом помогает разложить работу на фазы.

1. Vision

Первый шаг — собрать видение. На входе сырая идея голосом или текстом. Агент пересказывает, как понял, задаёт вопросы, ищет слабые места и собирает документ видения. В нём 11 блоков, включая суть, решение, MVP и то, что сознательно не входит в первую версию. Дальше система может сама предложить следующий шаг цепочки.

2. Plan

Второй шаг — технический план. Агент берёт утверждённое видение и превращает его в план реализации: 5–10 этапов, задачи внутри этапов, артефакты на выходе и чеклисты аудита. Он не расширяет задачу и держится в согласованных границах.

3. Pipeline

Третий шаг — поэтапная сборка. Система собирает конфигурацию фаз: кнопки запуска, промпты для субагентов, зависимости, проверки и формат результата. Каждый промпт оформляется как рабочий контракт из 9 блоков, чтобы отдельный агент мог взять фазу и выполнить её без догадок.

Результат

Идея проходит через декомпозицию, границы, план, проверки и только потом попадает к агентам-исполнителям. Так быстрее получается первый сырой MVP, а границы и архитектура остаются под контролем.

Knowledge Pipeline

Пайплайн для создания внутренней базы знаний в Markdown: на входе — разрозненные источники из YouTube, Instagram или сайтов; на выходе — база без дублей, с понятной структурой и темами для обучения агентов. Markdown остаётся источником правды, но при необходимости эта архитектура быстро перегоняется в гибридную векторную БД.

Стек: Python, терминальная оркестрация, Claude-агенты, Telegram-уведомления, Markdown-база знаний, Tavily, Firecrawl, Apify, Whisper, embeddings для поиска дублей.

готовый MVP solo + AI-агенты личный инструмент
7этапов обработки
9блоков KB
3.2 MBMarkdown
~2kтем с ID
Подробнее

Задача пайплайна — сохранить материал так, чтобы с ним мог работать агент: убрать дубли, воду и разрозненность, разложить знания по темам, категориям и устойчивым ID. Для сбора и подготовки источников используются Tavily, Firecrawl, Apify и Whisper; после этого агент работает с базой через индекс и точечную подгрузку нужных тем.

Сбор и извлечение

Пайплайн берёт источник, создаёт рабочую папку и ведёт состояние обработки. Дальше материал проходит цепочку этапов: сбор, планирование батчей, извлечение идей, проверка качества, классификация, дедубликация внутри категорий и финальная дедубликация между категориями.

Оркестрация агентов

Каждый агент выполняет ровно один этап и выходит. После завершения он обновляет состояние, отправляет Telegram-уведомление и запускает следующего агента в новом терминальном окне. Если этап падает, цепочка не идёт дальше, окно остаётся открытым для разбора.

Формат базы

Knowledge Base — это 9 широких Markdown-блоков: маркетинг, продажи, контент, AI-визуал, пайплайны, бизнес-операционка, психология влияния и когнитивные искажения. INDEX.md даёт карту блоков, категорий и тем, а ID темы остаётся устойчивым даже при переименовании.

Дедубликация и качество

Новая тема проходит фильтр дублей и воды. Если мысль уже есть в базе — пропуск. Если добавляет нюанс — объединение. Если это новая применимая идея — расширение. Спорное уходит в review, но не блокирует всю работу. В базе должны оставаться знания, которые помогают агенту принимать решения, без накопления лишнего текста.

Готовность к RAG

Markdown остаётся главным источником правды, но структура уже подготовлена для гибридного поиска: темы имеют ID, каждая тема достаточно самостоятельна, есть служебный векторный слой для поиска дублей. Когда нужно подключить агента к базе через RAG, эту архитектуру можно быстро перегнать в векторную БД с чанками до 2000 символов.

Smart Chunker

Локальный сервис для подготовки Markdown-документов к RAG и перегону в векторную базу. Он появился из простой проблемы: агентам часто не хватает контекста по узким темам. Общих знаний модели для серьёзной работы бывает недостаточно. Если на входе в базу хаос, агент тоже будет отвечать хаотично.

Стек: Python 3.11, FastAPI, Vanilla JS, OpenAI / Anthropic, Qdrant, BM25 sparse-векторы, SSE-стриминг, localStorage для ключей.

готовый MVP solo + AI-агенты личный инструмент
6.5kстрок кода
20API-точек
7правил чанкинга
2500комбинаций
Подробнее

Когда я начал работать с AI-агентами, быстро стало видно две вещи. Первая — контекстного окна мало для регламентов, цен, внутренних правил и других специализированных знаний. Вторая — общие знания модели часто нормальные, но недостаточно глубокие для узкой задачи. Значит, нужная информация должна быть подготовлена и доступна агенту в правильном виде.

Почему понадобился свой инструмент

Векторная база решает только часть задачи. Перед загрузкой нужно аккуратно разрезать материал: не порвать предложения, не потерять структуру заголовков, не создать микрочанки без смысла и не смешать соседние темы. Готовые сервисы часто резали слишком грубо или слишком мелко, а гибридный поиск поддерживали не всегда.

Детерминированное ядро

Smart Chunker парсит Markdown в дерево заголовков H1/H2/H3 и применяет 7 правил: границы родителя, допустимый диапазон размера, объединение маленьких соседних секций, деление больших секций по абзацам, спуск к детям, жёсткие min/max границы и обработка документов без заголовков. Overlap не используется: лучше видеть проблемный чанк и поправить источник, чем плодить дубли.

Автоподбор и контроль качества

Инструмент подбирает целевые размеры чанков перебором сетки до 2500 комбинаций, показывает интерактивное дерево и цветом отмечает проблемные чанки. Для проблемных чанков даёт рекомендации: объединить с соседом, добавить подзаголовок, оставить принудительное разделение или поправить исходный Markdown.

AI-обогащение

Поверх детерминированного ядра есть AI-слой: архитектор анализирует документ и предлагает схему метаданных, рабочий обогащает чанки пакетами, а результаты проходят валидацию. Если часть чанков обработалась неполно, система повторно отправляет только проблемные элементы. Таблицы можно конвертировать в связный текст через LLM, но базовый чанкинг работает и без внешних моделей.

Загрузка в векторную базу

Последний этап — подготовка к Qdrant: dense-векторы через embeddings, sparse-векторы через локальный BM25, создание коллекции, Smart Match для обновления существующих чанков и загрузка с прогрессом. API-ключи не сохраняются на сервере: они задаются в интерфейсе и живут только в браузере.

Я использую этот сервис вместе с Knowledge Pipeline: один пайплайн собирает и очищает базу знаний, второй превращает подготовленные Markdown-документы в качественные чанки для RAG и векторной базы.

Blueprint MCP

Локальный редактор, в котором я по шагам проектирую продукты, процессы и архитектуру. Рисую на бесконечном холсте разделы, связи и зоны ответственности. Но это не схема из квадратиков: к каждому узлу можно прикрепить всю конкретику — реальные промпты, таблицы с полями и правилами, изображения и скриншоты. Поэтому доска становится детальным планом, а не наброском. Главное — ту же доску через MCP читает AI-агент: я задаю нюансы прямо на узлах, а он работает с ними уже на этапе реализации, без догадок.

Стек: Python, FastMCP, Vanilla JS, rough.js на Canvas, JSON-схема с валидацией, атомарное сохранение, Claude Code, Codex, MCP.

готовый MVP solo + AI-агенты личный инструмент
23инструмента MCP
5типов узлов
3вида вложений
148узлов в карте
Подробнее

Когда проектируешь сервис вместе с AI, план обычно живёт в переписке и быстро теряется: агент помнит последний кусок разговора, а общую картину держать негде. Мне хотелось, чтобы у проекта была наглядная карта, которую видит и человек, и агент, и по которой потом можно делать реализацию без догадок.

Одна доска для человека и агента

Я проектирую на холсте, а агент работает с той же доской через MCP. Он видит все разделы, их логику, связи и вложенные материалы — и может не только понять замысел, но и достроить его: добавить раздел, соединить шаги, разложить схему. Получается работа над проектом вдвоём, а не отдельный документ, который потом пересказываешь модели.

Из чего собрана доска

Каждый раздел — это узел со своей ролью: обычный шаг, развилка, шаг с моделью или движок, который гоняет чужие данные по статусам. Стрелки задают порядок и зависимости, область обводит группу разделов по смыслу. Сложный раздел можно раскрыть внутрь как отдельный уровень, чтобы не держать всё на одной карте.

Артефакты как контракт между разделами

Отдельный слой — артефакты, то есть данные, которые один раздел передаёт другому. Артефакт описан один раз в каталоге, а на доске стоят его ярлыки в разных точках потока. Один и тот же объект, например «Резюме», на входе стоит как «Сырой», а на выходе как «Нормализован» — так видно, как он меняет состояние, и правка описания сразу видна везде.

Вся конкретика прямо на узле

Blueprint — это детальный план, а не общая схема. У каждого узла два уровня. Человек читает суть простыми словами: что на входе, что на выходе, главное правило. А вся техническая правда лежит во вложениях, прикреплённых прямо к узлу: текстовые файлы с реальными промптами, таблицы с полями, статусами, правилами и весами, изображения и скриншоты как референс. Так я задаю все нюансы один раз на нужном узле, а агент берёт их и работает с ними уже на этапе реализации, не переспрашивая и не выдумывая.

Один источник правды

Вся доска хранится в одном JSON-файле. Из него автоматически собирается текстовое представление для агента: компактная сводка по уровням, отдельный файл по каждому узлу вместе с его вложениями, каталог артефактов. Любая правка, из редактора или от агента, проходит проверку на целостность, поэтому доска остаётся согласованной и не ломается от случайного изменения.

Инструменты для агента

Агент работает с доской через 23 MCP-инструмента. Часть из них — на создание: добавить раздел, связь, артефакт или область, разложить схему автоматически. Часть — на чтение: компактная карта проекта, поиск по названию и тексту, чтение одного раздела вместе с его вложениями. Читающие инструменты отдают ровно нужный кусок, поэтому агент разбирается даже в большом проекте, не выгружая всё подряд.

GitHub Repo Parser

Интересных решений на GitHub выходит больше, чем реально отследить, а разобрать каждый репозиторий вручную тем более нельзя. Этот сервис собирает поток за меня: берёт пять мировых агрегаторов, которые сами находят и разбирают самые заметные проекты и ловят новинки на росте, и складывает всё в одну структурированную базу. Каждый репозиторий проходит ИИ-разбор и получает понятную карточку, а база хранится в двух видах — обычном и векторном, — поэтому по ней легко искать, фильтровать и анализировать глубже. Репозитории ранжируются по скорости роста, поэтому наверх выходит то, что набирает популярность сейчас, а не старые проекты с большими цифрами. Под задачу я сначала ищу решение здесь, а не по всему GitHub.

Стек: Python, PostgreSQL, Qdrant, OpenRouter (text-embedding-3-large), Jina reranking, BM25 sparse-векторы, GitHub API, Telethon, FastAPI, Vanilla JS.

готовый MVP solo + AI-агенты личный инструмент
4246репозиториев
5агрегаторов
25групп навигации
2вида базы
Подробнее

Идея простая: под любую задачу сначала искать готовое решение у себя в базе, а не заново прочёсывать весь GitHub. Для этого поток интересных репозиториев нужно собрать, разобрать и разложить так, чтобы по нему можно было искать и фильтровать.

Топ-агрегаторы вместо всего GitHub

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

ИИ-разбор каждого репозитория

Коллектор собирает репозитории и убирает дубли, затем по GitHub API добираются факты — звёзды, язык, размер реального кода. Дальше каждый репозиторий проходит через модель, которая делает карточку: краткое описание простыми словами по-русски, тип (приложение, сервис, библиотека, CLI, модель и так далее), сценарии использования и теги. Вместо сырой ссылки с англоязычным readme у меня понятная карточка, по которой сразу ясно, что это и зачем.

Ранжирование по скорости роста

База ранжирует репозитории не по общему числу звёзд, а по скорости роста — сколько звёзд и форков репозиторий набирает за день своего возраста. Поэтому наверх выходят не старые проекты с большими цифрами, а то, что набирает популярность прямо сейчас: хайп и быстрый рост. Балл считается по перцентилю внутри категории (0–100), поэтому быстрорастущий нишевый проект виден рядом с гигантами, а один гигант не перекашивает соседей. Это сортировка по умолчанию в каталоге.

Единые теги и 25 групп навигации

Сырые теги от модели разнородные, поэтому они приводятся к единому виду, а каждый репозиторий раскладывается по навигационным группам — их 25, и для репозитория выбираются самые подходящие. Это то, что делает базу управляемой: можно смотреть срез «всё про OCR» или «всё про AI-агентов», фильтровать по языку, звёздам и типу, а не листать сплошной список.

Два вида базы и два способа поиска

База хранится сразу в двух видах. Обычная, в PostgreSQL, со структурой из 46 полей — по ней точный поиск и фильтры: язык, звёзды, тег, группа, тип. И векторная, в Qdrant, — по ней смысловой поиск: пишешь запрос по-русски «чем транскрибировать голос», а не подбираешь ключевые слова. Смысловой поиск гибридный: плотный вектор плюс поиск по словам, потом переранжирование через Jina, чтобы наверх выходило самое релевантное.

Обновление и веб-интерфейс

Пополнение идёт одной командой или кнопкой «Актуализация»: система собирает новое, дедуплицирует, добирает факты по API, делает карточки, канонизирует новые теги и заливает свежие репозитории в вектор. Поверх базы есть веб-интерфейс: каталог со смысловым поиском, избранное и та самая актуализация. Базу дальше можно анализировать глубже — например, смотреть, что нового появилось в конкретной теме.

R&D и эксперименты

исследования, концепты и закрытые проекты, показывают подход и мышление

Digital Persona + n8n

R&D-проект, после которого я начал переходить от n8n-автоматизаций к AI-агентам с памятью, контекстом и инструментами. Сначала я пробовал n8n как основу для универсального мультимодального ассистента. Потом появилась задача: сделать так, чтобы ассистент лучше понимал конкретного человека. Из этого выросла Digital Persona — попытка описать персону через структурированную диагностику и использовать это в коммуникации.

Именно на этом проекте я начал плотно работать с Claude Code, агентной декомпозицией и связкой “LLM + код + база знаний”. Потом я стал больше заниматься самостоятельной разработкой с помощью AI-агентов. n8n при этом остался полезным для узких регулярных автоматизаций и интеграций.

Стек: n8n, Telegram, OpenAI, Whisper, Google Drive, Qdrant, FastAPI, PostgreSQL, SQLAlchemy async, Next.js 14, TypeScript, Mantine, Docker Compose, Railway, Claude Code.

R&D solo + AI-агенты личный инструмент
6n8n workflow
172узла в боте
86вопросов
47%адаптивных
5модулей
~900RAG-чанков
Подробнее

С чего началось

Первый заход был через n8n. Я хотел собрать универсального ассистента, который принимает текст, голос, аудио и документы, умеет работать с Telegram, Google Drive, CRM, Postgres и OpenAI, а часть памяти хранит в векторной базе. В n8n было собрано 6 workflow разной сложности, включая крупного мультимодального Telegram-бота примерно на 172 узла.

Переход к Digital Persona

Дальше стало понятно: если ассистент должен быть полезнее обычного чат-бота, ему нужно лучше понимать человека. Так появилась Digital Persona — MVP идеи о цифровом профиле человека через структурированную диагностику, чтобы агент мог адаптировать коммуникацию под конкретного пользователя.

Технически это был FastAPI backend + Next.js 14, PostgreSQL, Qdrant, Docker и деплой на Railway. Внутри — 5 диагностических модулей, 86 вопросов, 47% адаптивных вопросов через RAG, голосовой ввод через Whisper, админка для YAML-модулей и системных промптов, логирование LLM-вызовов.

Что было важным технически

Главный урок — разделение LLM и детерминированной логики. LLM извлекает свидетельства из ответов в JSON-формате, а оценка считается кодом: веса по типу вопроса, уверенность, специфичность, согласованность, ограничения на вклад одного свидетельства. AI помогает извлекать смысл, но финальная оценка не отдаётся модели целиком.

Почему это не рабочий продукт

Продуктовую ветку я сознательно остановил. Сейчас я не пользуюсь этой системой как готовым продуктом. Но как R&D-проект она была полезна: здесь появились паттерны, которые потом перешли в Aroma Dashboard, Content Pipeline, Knowledge Pipeline и Smart Chunker.

Что осталось полезным

Соционическая Qdrant-коллекция примерно на 900 чанков живёт как domain RAG и может подключаться из других проектов. n8n я продолжаю использовать для узких регулярных автоматизаций, интеграций и связок между сервисами, особенно когда его можно соединять с более сильным кодовым и агентным стеком.

AI-консультант ресторана

R&D-концепт с детальной продуктовой спецификацией, пока без пилотного ресторана. Гость сканирует QR на столе, попадает в привычный мессенджер (Telegram, WhatsApp, Viber — на выбор ресторана) и на своём языке голосом или текстом выбирает блюда: помощник уточняет бюджет и аллергии, объясняет позиции, предлагает напитки и дополнения. Он помогает гостю быстрее разобраться в меню, при этом роль официанта остаётся основной.

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

Планируемый стек: Telegram / WhatsApp Business / Viber API (один канал в MVP, несколько в базовой), OpenAI или Claude, Whisper для голоса, RAG по меню, FastAPI или n8n под оркестрацию, PostgreSQL, простая таблица управления для администратора.

R&D solo + AI-агенты концепт
2версии продукта
18доп. модулей
6этапов внедрения
4языка в базовой
117пунктов спеки
пилотбез предоплаты
Подробнее

С чего началось

Я разбирал ресторанный зал как процесс: что происходит между тем, как гость зашёл, и тем, как он оплатил заказ. Три зоны видны уже на уровне процесса: гость не пробует фирменные блюда из-за неуверенности, апселл по напиткам и дополнениям держится на личной инициативе официанта, а в туристических локациях часть гостей не до конца понимает меню. Идея — закрыть эти зоны одним консультационным слоем поверх меню, не трогая кассу и привычные процессы зала.

Как это работает для гостя

QR на столе → мессенджер без установки приложений и без регистрации → диалог на родном языке текстом или голосовыми. Помощник уточняет формат визита, бюджет и ограничения по питанию, потом даёт 2–4 точных рекомендации с пояснением, а не список из 80 позиций. Дальше — логичная мягкая допродажа: напиток, гарнир, соус, десерт. Гость приходит к официанту уже определившимся.

Почему мессенджер, а не приложение или веб-меню

Выбор мессенджера был не случайным. Мобильное приложение упирается в установку, регистрацию и слабый возврат после разового визита. Веб-меню по QR — это статичный список, такой же как бумажный, только на экране, диалога в нём нет. Мессенджер закрывает оба ограничения: минимум трения на входе (камера → код → знакомый интерфейс), естественный формат диалога с голосом, и переписка остаётся у гостя. Ресторан может позже аккуратно вернуться к диалогу.

Как формируется рекомендация

Рекомендация собирается из четырёх частей. Первая — профиль гостя из диалога: формат визита, вкусовые предпочтения, бюджет, аллергии и ограничения. Вторая — жёсткие фильтры: стоп-лист по позициям, стоп по ингредиентам в базовой версии, ограничения по бюджету и аллергиям. Третья — бизнес-приоритеты ресторана: продвигаемые позиции, маржинальность, время дня, событие. Четвёртая — короткий набор из 2–4 вариантов с понятным объяснением, почему эти блюда подходят. LLM работает на первом и четвёртом слое — извлечение смысла и формулировка. Фильтры и приоритеты — детерминированная логика, чтобы поведение системы было предсказуемым и управляемым со стороны ресторана.

Две версии продукта

MVP (пилот) — один мессенджер, два языка, текст и голос, учёт бюджета и аллергий, рекомендации блюд и напитков, стоп-лист, ручное продвижение приоритетных позиций, простая таблица управления без техзнаний. Этого достаточно, чтобы проверить гипотезу в реальном зале.

Базовая подписка — несколько мессенджеров, четыре языка, умный апселл с учётом блюда и времени дня, стоп по ингредиентам (один ингредиент скрывает все связанные блюда), карточка заказа для официанта с номером стола и пожеланиями, перевод ключевых фраз гостя персоналу, базовая аналитика запросов и оценка визита.

Дополнительные модули

Поверх базовой подписки — 18 модулей, которые подключаются по мере целей: фото- и видео-карточки блюд, сценарии визита (быстро/семья/романтика), модуль управления маржинальностью с учётом себестоимости, расширенная аналитика поведения, сетевой модуль для нескольких точек, бронирование и предзаказ с депозитом, рейтинг блюд, профиль постоянного гостя и система лояльности, динамический расчёт времени подачи, админ-панель зала.

Модель внедрения с низким риском

Модель внедрения простая: ресторан сначала проверяет MVP в реальном зале и только потом обсуждает оплату. Шесть этапов: подготовка (ресторан передаёт меню, составы, приоритетные позиции — техническая часть на стороне команды) → бесплатный запуск MVP в реальном зале → сбор обратной связи от гостей, официантов и управляющего → улучшение сценариев на реальных диалогах → обсуждение условий подписки на данных пилота → переход к базовой версии. Решение о платном этапе принимается после того, как ресторан уже увидел инструмент в работе.

Роль официанта и работа с залом

В HoReCa важно учитывать персонал: внедрение часто упирается в сопротивление команды, даже если технология работает. Поэтому это учитывается в самом сценарии работы помощника. Помощник снимает с официанта повторяющиеся объяснения меню и языковую часть в часы пик, гость подходит к столу уже определившимся — это ускоряет оборот и повышает шанс на хорошие чаевые. В базовой версии есть карточка заказа с номером стола и пожеланиями и перевод ключевых фраз гостя персоналу. Финальное решение всегда у официанта: подтвердить, дополнить, отговорить. Система — слой поддержки, а не контролёр над залом.

Риски, которые я учитываю

Первый риск — поведенческий: часть гостей просто не воспользуется помощником, и это нормально. Использование добровольное, классический формат «официант + меню» остаётся работать параллельно. Второй риск — сопротивление персонала, его снижает дизайн продукта (см. выше) и то, что MVP не требует отдельного обучения команды. Третий — техническая среда: работа зависит от интернета и доступности мессенджера, но это не влияет на кухню и кассу; в худшем случае ресторан просто работает в обычном режиме. Четвёртый — нет гарантий роста выручки: инструмент усиливает процесс, но результат зависит от меню, кухни и сервиса. Поэтому модель — бесплатный пилот, а не предоплата за обещание.

Почему это пока R&D

Концепт и продуктовая спецификация готовы: структура из 117 пунктов, презентационная версия для собственника, таблица функций по версиям и модулям. Технически продукт собирается из уже знакомых мне блоков — мессенджер-канал, LLM с RAG по меню, голосовой ввод, простая админка. Чего пока нет — пилотного ресторана. Запуск имеет смысл только в реальном зале с реальными гостями, синтетический тест эту гипотезу не закроет.

Логика проекта

В этом проекте сначала разбирается бизнес-процесс, а код появляется после этого: сначала разбор, где теряются деньги, потом минимальная версия, которая закрывает именно эти зоны, потом модель внедрения, которая снижает риск для клиента. AI здесь нужен только там, где без него сложно собрать живой диалог: голос, перевод, персонализация и мягкий апселл.

Smart Backtester

Самостоятельный проект, собранный с помощью AI-агентов, для проверки торговых гипотез на исторических данных Forex. Проект написан заново: данные, индикаторы, бэктестер, статистика, оптимизатор, API, база данных и интерфейс разделены по слоям. Для меня это трейдинговый проект и одновременно способ дисциплинированно проверять гипотезы: гипотезу нельзя оценивать “на глаз”, её нужно прогнать через данные, метрики, тесты и устойчивость параметров.

Стек: Python 3.11, FastAPI, SQLAlchemy async, PostgreSQL 16, Alembic, pandas, numpy, scipy, pytest, Docker Compose, vanilla HTML/CSS/JS.

готовый MVP solo + AI-агенты личный инструмент
13индикаторов
65зон проверки
40+метрик
13эталонных тестов
87тестов v1
10.8kстрок Python
Подробнее

Зачем он нужен

В трейдинге легко обмануть себя красивым графиком или удачным отрезком истории. Smart Backtester прогоняет гипотезу через полный цикл проверки: исторические свечи → индикатор → торговые сигналы → симуляция сделок → статистика → оптимизация параметров → сохранение результата → повторная проверка. Если число меняется, это должно быть объяснимо, а не “так получилось после правки”.

Как устроен анализ

Система читает бинарные RVDF-файлы со свечами, прогоняет их через 13 индикаторов и приводит сигналы к единому формату через Power Engine. Дальше Zero Exit решает, когда выходить из позиции, бэктестер симулирует сделки, а статистический слой считает 40+ метрик: equity curve, MTM, MAE/MFE, PnL, просадку, сделки, комиссии, свопы и другие параметры.

Все индикаторы работают по единому контракту. Это позволяет сравнивать их не как набор разрозненных скриптов, а как одну аналитическую систему.

Один из выводов: режим SAR был полностью удалён после анализа 50 CSV-файлов оптимизации. В прямом сравнении Zero Exit выиграл 21 из 25 случаев, поэтому система стала проще и стабильнее: один режим выхода, меньше ветвлений, меньше мест для ошибки.

Оптимизатор параметров

Grid-оптимизатор перебирает комбинации параметров, поддерживает ограничения, чекпоинты и возобновление, ранжирует результаты по перцентилям и оценивает плато — то есть смотрит на лучший пик и на устойчивость соседних параметров. Это снижает риск выбрать настройку, которая хорошо выглядит только на одном отрезке истории и ломается при небольшом изменении рынка или периода. Оптимизатор запускается отдельным процессом, а прогресс виден в интерфейсе в реальном времени.

Дашборд и база результатов

Интерфейс собирает результаты в матрицу 13 индикаторов × 5 групп таймфреймов: ULTF, LTF, MTF, HTF, MACRO. Это 65 зон проверки: видно, где параметры уже подобраны, где есть сильные результаты, а где ещё пусто. Для каждого индикатора и группы можно открыть оценку, параметры и метрики.

Результаты сохраняются в PostgreSQL: история бэктестов, пресеты, оптимизированные параметры, запуски оптимизатора, реестр индикаторов и история оптимизаций. Поверх этого работает REST API: backtest, symbols, timeframes, indicators, optimized-params, dashboard, optimizer, history, presets, health/ready.

Защита от случайных изменений

Отдельный блок проекта — защитные правила. В проекте есть 13 эталонных golden-тестов: если изменение кода ломает эталонный результат индикатора, этап не считается завершённым. Защищены бэктестер, статистика, индикаторы, чтение RVDF и логика проверки результатов. Эталонные фикстуры нельзя менять, чтобы “подогнать” зелёный тест.

Процесс работы с AI-агентами

В проекте есть правила агента, текущее состояние, handoff, worklog, спецификация, план реализации и отчёты по этапам. AI-агент может писать код и выполнять этапы, но не принимает продуктовые и бизнес-логические решения самостоятельно. Всё, что влияет на расчёты, сигналы, сделки, статистику или пользовательскую логику, согласуется отдельно.

Логика проекта

Порядок работы здесь обычный для аналитических систем: сначала отделяется доменная логика от интерфейса и инфраструктуры, потом стандартизируются входы и выходы, дальше — метрики, оптимизация, хранение результатов и защита от самообмана. AI ускоряет разработку, но архитектура, проверка и ответственность за числовой результат остаются на человеке.

Trading Engine

Локальный торговый движок с собственной моделью рынка: инструменты для разметки структуры, индикаторы, стратегии через JSON-конфиги, walk-forward бэктест с поминутной симуляцией свечей и автоматическое исполнение через MetaTrader 5. Полтора года работы, с середины 2024 до конца 2025 — этап до того, как я перешёл на самостоятельную разработку через AI-агентов.

Для меня это был первый проект, в который я вкладывал собственные деньги в разработку: я выступал владельцем продукта и архитектором, а реализацию вёл внешний разработчик. Технически движок был доведён до рабочей версии, но мои основные торговые гипотезы с FTMO после проверки на длинной истории не подтвердились. Поэтому я остановил проект на основе результатов тестов, с возможностью позже совместить его со Smart Backtester или вернуться к нему с новыми гипотезами.

Стек: Python, PyQt6 / PySide6, pyqtgraph, numba + llvmlite, pandas / numpy, MetaTrader 5 для live-режима, Dukascopy / Binance для истории, duckdb, SQLAlchemy / PyMySQL, openpyxl, PyInstaller / Nuitka для сборки в отдельный .exe.

завершённый проект в команде свой продукт
1.5 годаработы
~15 400строк Python
3 222строки спеки
12примеров стратегий
4таймфрейма
13+элементов модели рынка
Подробнее

Контекст и роль

Это был мой первый технический проект, где я оплачивал и вёл разработку системы с нуля. До этого я в основном пользовался готовыми инструментами. На этом проекте я выступал владельцем продукта и архитектором: модель рынка, индикаторы, язык описания стратегий, правила бэктеста, логика live-исполнения, постановка задач, ревью, проверка гипотез и решения по границам проекта. Реализацию вёл внешний разработчик.

Собственная онтология рынка

Под гипотезу мы сделали свой доменный язык разметки вместо набора стандартных индикаторов. Базовые элементы — фракталы (FP), структурные точки (SP), вложенные диапазоны Macro / Micro / Sub, имбалансы (IMB / Fresh IMB), их деактивация через Full Fill, манипуляции SFP и RAID, Break of Structure. Поверх этого — формации Quasimodo (QM) и Entry QM (EQM) с фильтрами по ликвидности, переход от структуры к точкам интереса (POI) и дальше к Genesis, FTA и сигналу. Спецификация всей модели и стратегического слоя — 3 222 строки документа, который писался и поддерживался параллельно с кодом.

Walk-forward бэктест без заглядывания в будущее

Архитектурное ядро — поминутная имитация формирования свечей. В обычном бэктесте бар часто уже сформирован, и алгоритм незаметно “видит” больше, чем видел бы в реальной торговле. Здесь свеча собирается шаг за шагом, как в live-режиме, и стратегия принимает решение только на той информации, которая была бы доступна в этот момент. Это дороже по вычислениям, но убирает один из главных источников самообмана — расхождение между бэктестом и реальной торговлей.

JSON-конфиги стратегий с перебором параметров

Стратегии описывались через свой JSON-формат с разными типами параметров, фильтров и условий. Это давало перебор контекста без правки кода и отделяло логику стратегии от конкретных настроек. 12 JSON-конфигов были примерами стратегий, а не пределом системы. Такая архитектура позволяла быстро добавлять разные интерпретации рынка и проверять новые гипотезы.

Live-режим и приложение

Поверх бэктеста собран live-режим через MT5 с параллельной работой нескольких стратегий и Windows-приложение с графическим интерфейсом: панель инструментов, боковая панель, графики на pyqtgraph, статистика, Excel-репорты на десятки и сотни колонок. Сборка в отдельный .exe через PyInstaller / Nuitka, чтобы запускать без Python-окружения.

Почему направление закрыто

Технически проект дошёл до рабочей версии: была модель рынка, бэктест, live-режим, GUI и конфигурационная архитектура стратегий. Но мои основные гипотезы, по которым я раньше торговал на проп-фирме FTMO, не подтвердились на длинной истории и оказались скорее сезонной случайностью, чем устойчивым преимуществом. Поэтому я не стал продолжать развитие в том же направлении и заморозил концепт.

Я не считаю проект провалом: он закрыт, но его можно использовать как основу для новых проверок. В будущем его можно совместить со Smart Backtester или переупаковать в платформу для тестирования и анализа торговых идей.

Главные выводы из проекта

Первый вывод касается проверки гипотез: гипотеза, которая красиво звучит и красиво размечается на графике, не обязательно работает в числах. Без честной инфраструктуры проверки об этом легко не узнать ещё годами.

Второй вывод касается формата работы. Зависимость от внешнего разработчика оказалась дорогой в трёх вещах: сроках, границах проекта и стоимости. Именно после этого проекта я перешёл на самостоятельную разработку через AI-агентов: архитектура, темп и границы остаются у меня, а реализация ускоряется. Smart Backtester вырос из этого решения: та же область, но я уже собираю систему сам с помощью AI-агентов.

Биография

Ниже — основные этапы моей биографии.

Харьков · образование и подработки

Родился в Харькове в 1994 году, район Северная Салтовка-5. Учился в гимназии №172, потом в лицее при ХАИ. С 2011 по 2017 — Народная Украинская Академия, магистр факультета бизнес-управления.

На первых курсах работал вожатым и официантом — это был первый практический опыт работы с людьми, командой и ситуациями, которые меняются на ходу.

В Churrasco Bar со школьным другом сделали простое Android-приложение для зала: я отвечал за идею и логику, друг писал код. Оно помогало официантам понимать, что и куда выносить. Для меня это был ранний пример: даже небольшой инструмент может упростить работу в зале.

2014–2019 · Первый опыт и карьерный рост

2014. На 4 курсе устроился в польскую международную компанию, которая продавала премиальную посуду и массажёры для дома. Контакт-центр прозванивал базу и приглашал на презентации, где проводились продажи с оформлением через кредит. Средний чек — около 3 000$. Начал с позиции продавца и вошёл в топ-10% по продажам в регионе.

2015. Перешёл к кризисному управлению клиентскими вопросами по всей России. Лично занимался сложными жалобами, возвратами, взаимодействовал с банками и госорганами. Позже возглавил отдел по работе с клиентами и сформировал команду из пяти человек. За время работы в этом контуре сохранил договоров на $500K+.

2016. Перевели в Москву в статусе тренера-рекрутера. Организовывал подбор и обучение сотрудников в Москве и Новосибирске — провёл более 800 собеседований, собрал и запустил программу адаптации и обучения сотрудников.

2016. В той же компании участвовал в развитии франшизы Body Chief — доставки диетического питания в Москве. Руководил организацией производства, логистикой, закупками и адаптацией польской бизнес-модели под российский рынок. Проект не получил развития и был закрыт.

2017–2018. Запускал филиалы компании с нуля в Стамбуле и Мадриде. Курировал организацию офисов и складов, подбор и обучение команд до 25 человек, внедрение корпоративных стандартов. Сталкивался с языковыми, культурными и религиозными барьерами. Филиалы вышли на оборот свыше $1M.

2019. Планировал запуск филиала в Боготе и вернулся в Харьков для оформления визы. Пока ждал документы, работал дистанционно аудитором отдела продаж — контролировал качество работы через аудио- и видеозаписи. Визу не одобрили, предложили вернуться в Москву, но я отказался, так как Москва не входила в мои планы. В это время понял, что устал от постоянных командировок, и решил остаться в Харькове. После этого сотрудничество с компанией закончилось.

2019 — 2021 · ТОВ "Автомагнат Украина" · директор по продажам

В Харькове прошёл собеседование и начал работу руководителем отдела продаж в небольшой компании, которая быстро росла и производила EVA-коврики для автомобилей под брендами EvaKovrik и BonCar. После предыдущей компании со штатом 4 000+ человек это был другой масштаб: около 15 сотрудников и отдел продаж из 3 человек.

Первым делом перенёс управление отделом продаж в Google Sheets: в таблицах были видны ключевые метрики, результаты менеджеров и зарплаты. Так стало проще видеть, что происходит в отделе, и управлять работой менеджеров. Параллельно выстроил сквозной контроль от звонков до проблемных заказов, внедрил скрипты, регламенты и регулярное обучение.

Построил отдел с разделением ролей, тимлидами и мотивацией менеджеров, привязанной к маржинальности продаж. Доходы сильных сотрудников выросли без ущерба для экономики бизнеса. Параллельно я впервые столкнулся с разработкой. Компания и производила, и продавала, поэтому нужна была система, которая сведёт производство и продажи в один контур и синхронизирует их. Готовые продукты не подходили: пробовали 1С и Битрикс, но они не покрывали весь спектр требований. Тогда мы начали делать своё решение силами команды из внутренних специалистов и внешних подрядчиков, где я отвечал за продукт. Полностью заменить рабочие инструменты не успели — процессы менялись быстрее цикла разработки, и в контуре остались старая CRM и Google Sheets.

За два года выручка выросла с 700 тысяч до 12 миллионов гривен в месяц — более чем в 17 раз. Отдел продаж расширился с 3 до 60 человек, а общий штат компании вырос примерно до 120 сотрудников. Доля рынка в Украине достигла 35–40%, и бизнес вошёл в число крупных производителей EVA-ковриков в Украине. В прямом подчинении находились 40–60 человек: продажи, контроль качества и прослушка звонков.

В начале 2021 года заранее согласовал с собственником плановый уход из компании. Параллельно развивался собственный бизнес Aroma Car Lux, и нужно было выбрать приоритет. Предложил собственнику слияние, но он сфокусировался на строительстве завода EVA-материалов. Я ушёл в августе 2021 года. Тогда же женился и переключился на свой бизнес.

2020 → сейчас · Предприниматель · интернет-магазин

В августе 2020 года, пока ещё работал в найме, запустил свой интернет-магазин по продаже ароматизаторов. Вместе с другом, который стал партнёром, к началу 2021 вышли в офис и начали работать полноценно. Через восемь месяцев запустили второй бренд.

Первый бренд — Aroma Car Lux: ароматизаторы для авто, металлические держатели со сменными ароматическими стиками. Делали их на основе парфюмерных композиций — реплик известных брендов. Позже решили сделать историю серьёзнее, уже со своими ароматами — так появился второй бренд, Addictive Perfumes: авторская парфюмерия, спреи для дома и авто. Планировали продавать через обычные магазины и выходить в Европу.

Всё работало через интернет: соцсети, реклама в Facebook, Instagram, TikTok и Google; доставка по Украине через Нову Пошту. Для работы подключили CRM OneBox — не самая тривиальная, но очень гибкая; готовых интеграторов крайне мало, поэтому разбирались сами. В феврале 2022 из-за военных действий планы пришлось заморозить.

За эти годы бизнес остался стабильным и прибыльным — около 25–30% итоговой рентабельности. В CRM уже больше 82 тысяч заказов. Сейчас он требует от меня буквально несколько часов в месяц. Команда — 5 человек: отдел продаж, таргетолог и склад. Работает спокойно, но без активного роста. Я переключился на новое направление.

Сайты: aromacarlux.com.ua · addictive-perfumes.com

2024 → 2026 · София · Trading Engine → AI-assisted разработка

Во время войны, когда с бизнесом была неопределённость и нужно было думать, что делать дальше, я начал изучать трейдинг. Прошёл обучение, сдал экзамен в проп-фирме FTMO и получил funded-счёт. Параллельно готовил для себя профессию без привязки к месту.

Из этого вырос мой первый большой проект, в который я вкладывал собственные деньги, — торговый движок. Это не простой индикатор, а полноценная система с собственной моделью рынка: разметка структуры, индикаторы, стратегии через JSON-конфиги, walk-forward бэктест с поминутной симуляцией свечей и автоматическое исполнение через MetaTrader 5. Я был владельцем продукта и архитектором, а разработку вёл вместе с программистом, с которым мы раньше уже собирали CRM-систему для Автомагната. Полтора года работы, с середины 2024 до конца 2025.

Движок я довёл до рабочей версии, но мои собственные торговые гипотезы на длинной истории не подтвердились: то, что казалось закономерностью, оказалось временной статистической погрешностью. Поэтому торговую часть я остановил. Сам движок остался рабочей аналитической базой — его можно развить в продукт для бэктестов и индикаторов или объединить со Smart Backtester.

Здесь я на практике увидел, как дорого обходятся слабая архитектура, размытые границы проекта и зависимость от одного разработчика. В январе 2026 переключился: сначала автоматизация через n8n, потом самостоятельная разработка через AI. Так появился текущий фокус — собирать рабочие системы, где вместе работают бизнес-логика, данные, интерфейс и AI-слой.

2026