Спроектировать архитектуру нового продукта
Разбираем доменную область, выбираем технологический стек и модель развёртывания, собираем схему компонентов и контрактов до начала разработки.
Опишите задачу своими словами — без ТЗ и подготовки.
Поймём суть, процессы и ограничения, зададим уточняющие вопросы.
Покажем варианты, подход и стек — без навязывания лишнего.
Сориентируем по бюджету, этапам и срокам запуска MVP.
Путь от запроса до работающей системы: сначала договариваемся об ограничениях, потом выбираем решение и только затем пишем код.
Разбираем процессы, планируемые нагрузки, интеграции и ограничения — от бюджета и сроков до требований регуляторов иlegacy-систем.
Рассматриваем несколько решений по надёжности, стоимости эксплуатации и скорости внедрения и выбираем то, которое соответствует задачам бизнеса.
Описываем схему компонентов, контракты, сценарии развёртывания и отката — так, чтобы решение можно было проверить и повторить без автора.
Остаёмся на связи во время реализации: ревью решений, уточнение контрактов и проверка готовности системы к продуктивной эксплуатации.
Решения закладываем с запасом: инфраструктура, наблюдаемость и требования к данным продуманы до начала разработки.
Модель развёртывания выбираем под требования к данным, уровню сервиса и стоимости владения инфраструктурой.
Планируем отказоустойчивость, целевое время восстановления и наблюдаемость: метрики, логи и понятные алерты вместо тишины в проде.
Ролевая модель, минимальные привилегии, сегментация сети, шифрование данных и безопасная разработка — как по умолчанию, а не как опция.
Определяем, где хранятся персональные данные, по каким правилам обрабатываются и какие меры нужно заложить в архитектуру.
С чем чаще всего приходят — от проектирования с нуля до перевода работающей системы на новую архитектуру.
Разбираем доменную область, выбираем технологический стек и модель развёртывания, собираем схему компонентов и контрактов до начала разработки.
Определяем границы сервисов, sequence миграции без остановки бизнеса, вводим управление данными и оркестрацию, чтобы система не потеряла работоспособность.
Находим узкие места, настраиваем кэширование, очереди и балансировку, готовим горизонтальное масштабирование и нагрузочные испытания.