Skip to content
View VitalyOstanin's full-sized avatar

Block or report VitalyOstanin

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
VitalyOstanin/README.md

Виталий Останин

Tech Lead / Senior Backend Developer — Node.js, PostgreSQL, Kubernetes, AI-инжиниринг (MCP)

Более 25 лет в ИТ, более 13 лет на Node.js. Санкт-Петербург. Разносторонний инженер: закрываю задачу от кода до кластера и релиза. Backend и DevOps веду одновременно, без выделенного DevOps-инженера.

Резюме (RU) · Резюме (EN) · English version · vitaly.ostanin@gmail.com

Проекты

Задачи в стиле Org Mode в обычных Markdown-файлах: агенда по дням и неделям, повторяющиеся задачи по RRULE, панель git, синхронизация с календарём.

Загрузки Open VSX Версия в Open VSX

Неинтерактивный выбор и разрезание ханков unified diff: замена git add -p там, где интерактивный ввод недоступен — в скриптах и у AI-агентов. Адресация под-ханков по стабильным content id.

Версия на crates.io

Интеграция с YouTrack по MCP: задачи, вложения, списание времени, отчёты, база знаний.

Экспорт чатов и медиа Telegram на локальный диск: инкрементальная выгрузка с состоянием в SQLite, официальный Takeout API, правила по чатам и папкам, HTML-просмотр переписки по месяцам.

Версия на PyPI

MCP-серверы: PostgreSQL · MongoDB · GitLab · Sentry · YouTrack · отладчик Node.js

Экосистема Markdown Org: markdown-org-extract — ядро на Rust, общее для всех клиентов · markdown-org-android — клиент для Android (Kotlin, Jetpack Compose)

Инструменты: laba — настольный дашборд и CLI над несколькими трекерами задач, Tauri + Rust · claude-dir-settings — настройки Claude Code по каталогу · infostream — основа базы знаний

Обо мне

Backend-инженер и Tech Lead. Более 25 лет в ИТ и более 13 лет на Node.js.

Из недавнего:

  • спроектировал 4-уровневую систему кэширования, давшую рост RPS в 50–100 раз на проблемных endpoints;
  • восстановил неработавший приём платежей и формирование чеков (CloudPayments); подключил пул новых внешних систем — T-Bank, Robokassa, Yandex SmartCaptcha, amoCRM;
  • вывел из эксплуатации 14 устаревших сервисов в пользу 4 новых с поддерживаемым стеком;
  • в проекте под NDA спроектировал и реализовал финансовое ядро на PostgreSQL для приёма депозитов, начислений и выплат.

Погружаюсь в проект целиком: предметная область, код, инфраструктура и эксплуатация, а не только свой участок задач. Удерживаю контекст крупных проектов на длительной перспективе; ориентируюсь в предметной области бизнеса (финтех, платежи, фискализация по 54-ФЗ, CRM-воронки, антифрод); беру на себя сложные и запущенные задачи.

Отдельное направление — AI-инжиниринг: 6 публичных MCP-серверов, две plugin-обвязки Claude Code, внедрение AI-ассистентов (Claude Code, OpenAI Codex, VS Code Cline) в разработку и тестирование, обучение разработчиков работе с AI-агентами.

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

Сильные стороны
  • Разносторонность: закрываю не только свой слой. Backend на Node.js и TypeScript, транзакционные сценарии в PostgreSQL, Kubernetes и GitLab CI/CD, тестирование от unit до нагрузочного, техническое руководство и найм. Читаю и правлю Python и Rust (в Open Source — CLI на Rust и экспортёр на Python). Пример: в одном проекте одновременно вёл backend-разработку, развернул стенд на ~30 микросервисов в Yandex Cloud Managed Kubernetes, построил инфраструктуру тестов и руководил командой
  • Погружение в проект и результат: беру задачу от постановки до работы в production, включая унаследованный код без документации; отвечаю за результат, а не за закрытие задач
  • AI-инжиниринг и MCP: внедряю AI-ассистентов в работу команды и обучаю разработчиков; строю инфраструктуру вокруг MCP-протокола — 6 публичных MCP-серверов (PostgreSQL, MongoDB, GitLab, Sentry, YouTrack, отладка Node.js) и плагины Claude Code; интегрирую с корпоративным стеком
  • DevOps полного цикла: Kubernetes (в т.ч. Yandex Cloud Managed), Helm-чарты, GitLab CI/CD, безопасный runner на unprivileged Podman + Buildah + Harbor. Пример: развернул стенд на ~30 микросервисов и перевёл сервисы на новые пайплайны без выделенного DevOps-инженера
  • Запущенные задачи и legacy: восстанавливаю поведение системы без документации — по коду, логам, базе и поведению в production; дотягиваю до рабочего состояния
  • Сложные интеграции: retry, идемпотентность, граничные случаи и наблюдаемость закладываю с первого дня, а не после первого инцидента
  • Архитектура: закладываю инварианты (immutable ledger, append-only, двойная запись), транзакционность и идемпотентность с первого дня; разделяю горячий путь и тяжёлую обработку
  • Лидерство: систематизирую знания в базу (основа — infostream); налаживаю процессы разработки, тестирования и деплоя; участвую в найме — техническое интервью и проверка практических навыков, закрыты позиции backend и DevOps
  • Удержание контекста и финтех-домен: удерживаю контекст крупного проекта на длительной перспективе; ориентируюсь в платежах, 54-ФЗ фискализации, CRM-воронках, антифроде
Избранные достижения
  • Производительность: рост RPS в 50–100 раз на проблемных endpoints за счёт 4-уровневой системы кэширования (кэш in-flight Promise → in-memory LRU/TTL → Redis → БД)
  • Финансовое ядро (проект под NDA): спроектировал и реализовал предметную область на PostgreSQL для приёма депозитов, начислений и выплат
  • Интеграции (платежи + антифрод + CRM): восстановил CloudPayments (платежи и условное формирование чеков по 54-ФЗ); подключил пул новых внешних систем — T-Bank, Robokassa, Yandex SmartCaptcha, amoCRM
  • Сокращение legacy: вывел из эксплуатации 14 сервисов с неподдерживаемым кодом, заменив на 4 сервиса с поддерживаемым стеком
  • Инфраструктура: развернул ~30 унаследованных Node.js-микросервисов в Yandex Cloud Managed Kubernetes; создал безопасный и быстрый GitLab Runner (unprivileged Podman + Buildah + Harbor); настроил пайплайны build + deploy в Kubernetes
  • Оптимизация затрат: вывел нагрузку из DigitalOcean и Hetzner; подготовил план отказа от Cloudflare
  • AI в работе команды: внедрил AI-ассистентов (Claude Code, OpenAI Codex, VS Code Cline) в ежедневный рабочий процесс; обучил backend- и frontend-разработчиков работе с Kubernetes и отладке Node.js в нём
  • Найм: участвовал в закрытии позиций backend и DevOps
Навыки и технологии
  • Программирование (основное): TypeScript, JavaScript, Node.js, NestJS
  • Программирование (с помощью AI-ассистентов): Python, Rust
  • Базы данных: PostgreSQL (включая транзакционные финансовые сценарии), MongoDB
  • Кэширование и очереди: Redis, RabbitMQ, Kafka, NATS, pg-boss
  • Системная архитектура: микросервисы, проектирование API, многоуровневое кэширование, распределённые системы
  • DevOps и инфраструктура: Kubernetes (в т.ч. Yandex Cloud Managed Kubernetes), Docker, Podman, Buildah, Helm, GitLab CI/CD, Harbor
  • Linux: более 20 лет опыта с серверными и десктопными окружениями
  • Тестирование: unit (Vitest, Jest), integration, E2E (supertest), нагрузочное (k6); отладка утечек памяти в production
  • AI-инжиниринг: MCP-протокол и 6 публичных MCP-серверов, плагины Claude Code, агентные инструменты (Claude Code, OpenAI Codex, VS Code Cline, Cursor), внедрение в рабочий процесс команды и обучение разработчиков
  • Инструменты разработчика: Git, ESLint (в т.ч. собственные плагины), Webpack, Vite, расширения VS Code

Открыт для сотрудничества в проектах, связанных с инструментами разработчика и интеграцией AI.

Pinned Loading

  1. markdown-org-vscode markdown-org-vscode Public

    Org-mode style task management in Markdown: TODO/DONE workflow, priorities, SCHEDULED/DEADLINE timestamps, agenda views, and CLOCK time tracking.

    TypeScript

  2. youtrack-mcp youtrack-mcp Public

    MCP server for YouTrack: issues, attachments, work items, time reports, knowledge base

    TypeScript 6 7

  3. hunkpick hunkpick Public

    Non-interactive unified-diff hunk picker and splitter

    Rust

  4. mcp-chrome-debugger-protocol mcp-chrome-debugger-protocol Public

    MCP server for Chrome debugger protocol (Node.js)

    TypeScript 2

  5. tg-export tg-export Public

    Экспорт данных из Telegram на локальный диск с гибкой настройкой

    Python 1

  6. laba laba Public

    Desktop tray dashboard and CLI over a pluggable backend layer — connect several issue-tracker servers at once. GitHub is the primary backend; OpenProject also implemented; Jira, YouTrack, GitLab pl…

    Rust