Система
Домен, жизненные циклы, интеграции, данные и границы ответственности.
Владимир Синявский / Engineering Lead / Software Architect
12 лет проектирую и модернизирую backend-системы на .NET. Работал с платёжными контурами, распределёнными интеграциями и legacy в непрерывной эксплуатации.
Совмещаю архитектуру, hands-on разработку и техническое лидерство. Разбираю домен, провожу границы системы, делаю опорную реализацию и передаю команде понятный контекст.
Lead AI-native Engineer, Альфа-Лизинг, с октября 2025
12 лет в backend engineering
Более 5 лет технического и командного лидерства
Домен, жизненные циклы, интеграции, данные и границы ответственности.
Путь до production, наблюдаемость, quality gates и безопасная эволюция legacy.
Ownership, развитие лидов и AI-инструменты с проверяемым результатом.
В начале карьеры хорошая разработка для меня означала умение быстро писать качественный код.
Потом продукты выросли. Вместе с ними появились новые команды, интеграции и требования, а каждое следующее изменение стало затрагивать всё больше компонентов.
Архитектура стала ежедневной практикой. Она помогает заранее видеть последствия решений для следующих релизов.
Сейчас меня больше всего интересуют системы, которые продолжают нормально развиваться спустя годы после запуска.
Где проходят реальные границы домена и почему одни и те же слова значат разное?
Я смотрю на технические ограничения вместе с продуктовыми и организационными.
Модель нужна для решений. Простого описания текущего кода недостаточно.
Ответственность компонентов и команд должна оставаться понятной при росте.
Сначала я разбираюсь с задачей и ограничениями, потом выбираю технологию.
После релиза видно, как решение ведёт себя под нагрузкой, с реальными интеграциями и обратной связью.
Новые факты меняют архитектуру. Это нормальная часть её жизни.
Спроектировать продуктовую систему, собрать техническую основу и вывести MVP на прод.
Развивать работающую систему постепенно, сохраняя бизнес-процессы и совместимость.
Распределить технические решения между инженерами и сохранить понятность системы для команды.
Проверять AI-подходы в реальной работе и оставлять то, что действительно помогает инженерам.
Точки слева направо: Payments, Travel, EdTech / Legacy, AI-native.
Выбранная задача
платёжные жизненные циклы
Связанный кейспоиск / бронь / бронь у поставщика
Связанный кейсобразовательные модели
Связанный кейсЗадача была второстепенной для этого домена.
Выбранная задача
банки и платёжные шлюзы
Связанный кейсGDS и внешние поставщики
Связанный кейсlegacy API
Связанный кейспоставщики LLM и внутренние инструменты
Связанный кейсВыбранная задача
колбэки, повторы и сверка
Связанный кейспоиск, бронирование, статусы
Связанный кейсЗадача была второстепенной для этого домена.
долгие процессы с AI-агентами
Связанный кейсВыбранная задача
legacy в биллинге
Связанный кейсработающие travel-сервисы
Связанный кейсRails → .NET
Связанный кейсЗадача была второстепенной для этого домена.
Выбранная задача
денежные операции
Связанный кейскритичный сценарий бронирования
Связанный кейссверка поведения legacy
Связанный кейсверификация действий AI-агентов
Связанный кейсВыбранная задача
внутренний фреймворк и CI для сервисов
Связанный кейсдоменный язык и продуктовая работа
Связанный кейскоманды и преемственность
Связанный кейсинструкции для AI-агентов в бэкенд-командах
Связанный кейс21 из 24 пересечений подтверждено конкретными проектами. Для трёх оставшихся эта задача была второстепенной в домене.
"Эволюция без остановки" встречалась в legacy-биллинге, работающих travel-сервисах и при постепенной замене Rails на .NET.
CASE-001
В CloudPayments я отвечал за направление альтернативных способов оплаты: 10+ сервисов, часть legacy-биллинга и 9 внешних шлюзов. Платформа поддерживала 12 сценариев и около 1.2k rpm, включая СБП, SberPay, TinkoffPay и мексиканский STP/SPEI; я отвечал за архитектуру, вывод на прод, устойчивость, мониторинг и работу с инцидентами.
Бизнес-задача. CloudPayments нужно было развивать альтернативные способы оплаты через банки: от СБП и сервисов российских банков до международных сценариев и мексиканского SPEI.
Контекст и риски. В контуре работали 10+ сервисов, часть legacy-биллинга и 9 внешних шлюзов. Один платёжный цикл связывал денежные операции, асинхронные статусы, колбэки, повторы, идемпотентность и сверку.
Решение. Я спроектировал и реализовал базовый REST API с нуля как modular monolith. Я собрал общие правила платёжного цикла в одном месте, а сервисы сохранили ответственность за свои сценарии и интеграции.
Что изменилось. Базовый MVP вышел на прод за 3.5 месяца. Платформа выросла до 12 сценариев и 9 внешних шлюзов, включая мексиканский STP/SPEI. После роста команды до 11 человек я отвечал за стек, архитектуру, релизы, устойчивость, мониторинг и инциденты.
Инженерная основа. Позже я создал backend framework для общей инфраструктуры сервисов и стандартизировал CI/CD, работу с секретами и архитектурную документацию. Запуск нового сервиса сократился с двух дней до четырёх часов.
9 шлюзов внешние платёжные интеграции
12 сценариев на платформе
CASE-002
В travel-домене внешне простое "найти и забронировать" превращалось в агрегацию нескольких GDS и разные жизненные циклы брони, оплаты и взаиморасчётов.
Контекст. RuTrip держал около 300 rps. В продукте были 40 фильтров, 4 сценария бронирования, 3 способа оплаты и 2 вида взаиморасчётов с GDS.
Что сделал. Работал над агрегацией поиска и бронирования, Customer Journey Map и общим языком с продактом. Архитектуру постепенно переводили на vertical slices.
Результат. Время поисковой выдачи сократилось с 20-30 до 6-8 секунд. Позже в business travel я работал с внешними GDS и критичными корпоративными системами, которыми пользовались 300+ сотрудников.
CASE-003
Нестабильный Rails API платформы с 20 000 активных пользователей нельзя было остановить и переписать целиком.
Контекст. Работающий продукт зависел от нестабильного Ruby on Rails API, а миграцию нужно было провести без остановки клиентских приложений.
Что сделал. Собрал команду из четырёх backend-инженеров. Мы постепенно замещали маршруты через Strangler Fig и параллельно переносили данные.
Результат. Клиентские приложения переходили на новый API бесшовно. Мы выпускали его по частям и уложились в жёсткие сроки, не останавливая продукт.
CASE-004
В инвестиционном EdTech-продукте команда выросла с 5 до 15 человек и разделилась на две.
Контекст. Команда выросла с 5 до 15 человек и разделилась на две. Следующим ограничением стала концентрация технических решений у одного лидера.
Что сделал. Занимался наймом, 1:1, ИПР и делегированием. В команде появились DDD, Event Storming, взаимное ревью, тестирование и DevOps.
Результат. Три инженера выросли до тимлидов. Каждая команда получила свой контур технической ответственности.
CASE-005
Сейчас я проверяю в реальной работе инструкции для AI-агентов и процесс разработки с ними. Подход ещё формируется.
Контекст. Нужно было ускорить сложную интеграционную разработку и работу с legacy, оставляя инженерные решения за человеком.
Что сделал. Собрал 20+ инструкций для AI-агентов (agent skills), настроил их версионирование и доставку, подключил к работе бэкенд-команд и обучил коллег.
Результат. В одиночку собрал MVP омниканального колл-центра за 4 месяца. За 5 недель перенёс другой legacy-проект с PHP на .NET / React, используя AI-инструменты.
Открытый проект
OSS-001
Открытый проект, где видны моделирование домена, архитектурные решения и организация кода. Сейчас готов бэкенд Flights M1: модульный монолит с DDD, интеграции с поставщиками авиаконтента, устойчивость, наблюдаемость и отдельный AI-сервис.
Следующие этапы: Hotels, Rail, Trip Planning и ядро AI-сервиса.
Открыть репозиторийХорошая архитектура нужна пятому году жизни продукта сильнее, чем первому релизу.
Самые сложные проблемы часто начинаются с разного понимания предметной области.
Команду и инженерные процессы тоже приходится проектировать.
AI меняет работу сильных инженеров, но ответственность за решения остаётся у человека.
В начале карьеры я искал разборы реальных проектов: что строили, где ошиблись, почему выбрали именно это решение и чем за него заплатили позже.
Теперь я собираю такие истории сам.
Длинные разборы решений, ограничений и цены изменений.
ПрактикаDDD, distributed systems, legacy и инженерная работа с AI.
ИсследованияКак порядок решений влияет на стоимость и устройство системы.
В Telegram: наблюдения из инженерной практики, продолжения статей и эксперименты с AI в работе синьора и техлида.
Буду обновлять эту страницу вместе с проектами и собственным опытом.