~/cv — lead backend, python

Сергей Иванов

Строю надёжные бэкенд-системы и процессы вокруг них.

7+ лет в python · 3+ года веду команды · агентная разработка

~/about

Backend-лид, 7+ лет в Python.

Путь: фриланс полного цикла → сеньор в OSINT-платформе → руководитель backend-группы в Газпром-Медиа.

Строю надёжные системы и процессы вокруг них: CI/CD, мониторинг, наставничество. Томск, удалённо.

~/experience

Газпром-Медиа 2023-07 — н.в. · Команда из 4 инженеров · точность спринта 90–95%

Сервис консолидации данных холдинга Газпром-Медиа: сбор из нескольких источников, автоматическая обработка, отправка во внешний контур. Пришёл на смену легаси: от унаследованных сервисов — к единой платформе. Кросс-функциональный проект с 5 смежными командами (QA, фронтенд, системная аналитика, бизнес-аналитика, дизайн). Backend-группа из 4 инженеров под моим руководством, режим код-менеджера.

Зоны ответственности

  • Архитектуру домена и интеграционного контура: границы модулей и систем, контракты обменов, модель данных верхнего уровня, НФТ — утверждал архитектуру проекта
  • Надёжность обработки данных: PostgreSQL с репликацией RW/RO; идемпотентность на Redis с атомарными Lua-скриптами; transactional outbox — повторная постановка выпавших сущностей в очередь
  • Поставку: формирование и утверждение требований с продуктом и аналитиками, планирование, приоритизация, code review; настройка процесса оценки (story points, планинг-покер), автоматизация и дашборды статуса команды в Jira; разграничение зон ответственности и ролей в команде
  • Безопасность и эксплуатацию: ролевая модель доступа (RBAC/ABAC), SLA системы, согласование интеграций и контура с ИБ
  • Релизный цикл: CI/CD, релиз-менеджмент, документирование
  • Найм и рост: технические интервью, онбординг, 1-1, ИПР
  • Консультации команд холдинга по архитектуре python-приложений, запуск MVP

Достижения

  • 90–95% точность спринта после внедрения Agile со story points; пропускная способность выросла в ~1,5 раза за полгода — практика распространилась на другие команды холдинга
  • Мониторинг на Grafana + Alertmanager: раньше об инцидентах узнавали из заявок в саппорт — теперь проактивные алерты, реакция 5–10 минут
  • CI/CD на GitLab + ArgoCD: feature toggles, auto-semver, миграция на Trunk Based Development — откат фич без редеплоя
  • TSG — стандарты проекта: код, миграции без даунтайма (blue-green), эволюция API-контрактов (обратная совместимость), соглашение о коммитах
  • Агентная разработка по всему проекту: харнес вокруг LLM, промпты, скиллы; авторевьюер на pydantic-ai с обвязкой для расширения — выросла производительность инженеров, меньше времени на ревью и разбор багов с QA
  • Агентная база знаний проекта (агенты + индексированные документы кодовой базы и README) — упростила онбординг новичков и работу саппорта
  • Провожу тренинги и мастер-классы по агентной разработке; консультирую смежные команды и дирекции по внедрению ИИ
#python#team-lead#media#ai#pydantic-ai
Кибер-Ром 2022-03 — 2023-06 · OSINT · 5 000+ источников · 1 млн постов/сутки

OSINT-платформа: сбор, обработка и поиск данных из открытых источников — 5 000+ источников с автообнаружением, 100+ GB скользящей истории за 30 дней, ML-обогащение. Команда 5 человек; исполнял обязанности тимлида: координация задач, архитектурные решения.

Зоны ответственности

  • Проектирование системы сбора: парсеры, парсер-менеджер, шина данных
  • Сервисы обработки и обогащения данных, включая ML-интеграцию
  • Поисковые возможности: полнотекстовый и фасетный поиск
  • Поддержку БД и сложные SQL-запросы
  • Внутренние гайдлайны и документацию

Достижения

  • Спроектировал и написал парсер-менеджер — пропускная способность системы до 1 млн постов в сутки (шина данных на Kafka)
  • Парсеры Telegram на event-подходе обновляли индексы на проде практически в реалтайме (~2 секунды)
  • Полнотекстовый поиск на PostgreSQL TSV + ManticoreSearch с высокой релевантностью; спроектировал и внедрил фасетный поиск — ключевая функция для аналитиков
  • Переписал тяжёлые SQL-запросы на SQLAlchemy Core — нагрузка на БД снижена в десятки раз
  • Гайдлайны и документация стали основой масштабирования команды
#python#postgresql#sqlalchemy#kafka#senior#team-lead#osint
NPM-Group 2021-05 — 2022-03 · Миграция Flask → FastAPI · −40% времени обработки

Backend-сервисы автоматизации бизнес-процессов клиентов myradius.ru: от CRM-интеграций до систем учёта и мониторинга.

Зоны ответственности

  • Разработку REST API на FastAPI и Flask
  • Асинхронные фоновые задачи: Celery, RabbitMQ, Redis
  • Проектирование БД и миграции
  • Unit-тесты и качество кода

Достижения

  • Миграция со стека Flask на FastAPI — асинхронность и масштабируемость
  • Асинхронные идемпотентные воркеры — время обработки снизилось на 40%
  • Unit-тесты с покрытием >92% — стабильность сервисов выросла
#python#fastapi#celery#redis#dev#automation
Фриланс 2018-11 — 2021-01 · 20+ проектов · ML-датасет 15 млн записей

Разработка под заказ полного цикла: REST API, парсеры, автоматизация бизнеса — от анализа требований до деплоя. 20+ закрытых проектов; прямая связь и прозрачность с заказчиками.

Зоны ответственности

  • REST API, парсеры, системы автоматизации — полный цикл
  • Интеграции: Telegram, Google Sheets, email, CRM
  • Работу с антибот-системами: JavaScript, авторизация, капча; реверс-инжиниринг JS — хардкод токенов, шифрование телефонов через карту символов

Достижения

  • Автоматизация типовых процессов клиентов (CRM, отчёты, уведомления) — время на рутину сократилось на 70–90%
  • Парсер вакансий и резюме hh.ru для ML-датасета: обновляемый датасет на 15 млн записей
#python#dev#automation

~/projects

Личный VPN-шлюз на базе mihomo 350+ серверов · всегда самый быстрый · RU/non-RU маршрутизация

Шлюз на базе mihomo. Кастомный парсер готовит список серверов; mihomo проверяет все 350+ нодов и всегда держит активным самый быстрый.

  • Парсер превращает конфиги провайдеров в список серверов для mihomo
  • Проверяет все 350+ серверов — всегда активен самый быстрый нод
  • Правила маршрутизации разделяют RU / non-RU трафик
#python#network#automation
Хоумлаб на NAS 24 docker-контейнера · ~1 ТБ медиа · домашняя сеть

Self-hosted сервисы на домашнем NAS — 24 контейнера за реверс-прокси (Nginx Proxy Manager), управление через Portainer.

  • Медиа-пайплайн: *arr-стек → Jellyfin (59 сериалов, 2 000+ эпизодов)
  • Облако фото на Immich: 75 000 фото / ~1 ТБ, 4 пользователя
  • AdGuard Home на всю систему с шифрованными апстримами (DoT/DoH): 65% DNS-запросов блокируется (46 000 из 70 000)
  • Домашняя сеть L2/L3: сегментация и маршрутизация сервисов и клиентов
  • Дашборд Homepage сводит здоровье и статистику всех сервисов
#docker#self-hosted#network