Представьте, что вы строите город.
Архитектура — это не отдельные здания. Это план улиц, расположение кварталов, транспортные развязки, коммуникации. Это то, как части города соединены друг с другом.
В IT архитектура — это:
Хорошая архитектура позволяет добавлять новые районы, не перестраивая весь город. Плохая — превращает любое изменение в точечный ремонт, который ломает соседние кварталы.
Я не спрашиваю: «Что выберем?». Я смотрю на проект и принимаю решение.
Я выбираю монолит, когда:
Я выбираю монолит, потому что он даёт скорость и простоту там, где сложность не нужна.
Я выбираю микросервисы, когда:
Я выбираю микросервисы, потому что они дают гибкость там, где монолит начинает душить.
Это решение я тоже принимаю сам. На основе задачи, горизонта планирования и команды.
Я выбираю фреймворк, когда:
Я выбираю фреймворк, когда скорость важнее долгосрочной гибкости.
Я выбираю свою разработку, когда:
Я выбираю свою разработку, когда гибкость и долгосрочная перспектива важнее скорости запуска.
По моему опыту, крупные компании за редким исключением используют фреймворки. И вот почему.
Когда система живёт 5, 10, 15 лет — фреймворк становится проблемой. Он устаревает, его перестают поддерживать, на нём сложно найти разработчиков, он ограничивает архитектуру.
Крупные компании пишут свои решения. Не потому что им «так хочется», а потому что это единственный способ сохранить контроль над системой в долгосрочной перспективе.
Zend был популярен → устарел.
Symfony был популярен → устаревает.
Laravel популярен сейчас → устареет через пару лет.
Yii был популярен → уже не модно.
React, Vue, Angular — те же истории.
Я это учитываю при выборе.
Если вы выбираете фреймворк, вы выбираете: быстро сейчас, дорого потом.
Если вы выбираете свою разработку: дорого сейчас, дёшево потом.
Фреймворки используют для скорости, не понимая, что завтра фреймворк устареет. Появится новый «модный» вариант, и у вас будет два пути:
Это не «плохо» и не «хорошо». Это выбор стратегии. И я выбираю ту, которая соответствует вашим целям.
| Ситуация | Моё решение |
|---|---|
| Вы запускаете MVP, хотите проверить гипотезу | Фреймворк + монолит |
| У вас типовой бизнес (интернет-магазин, услуги) | Фреймворк + монолит |
| У вас 3–5 разработчиков | Фреймворк + монолит |
| У вас 10+ разработчиков, сложная логика | Своя архитектура, возможно микросервисы |
| Вы строите систему на 5+ лет | Своя архитектура |
| У вас уникальная предметная область | Своя архитектура |
Я принимаю это решение. Я обосновываю его. Я несу за него ответственность.
Потому что бизнес не должен выбирать архитектуру. Бизнес должен формулировать задачи.
Я не спрашиваю: «Что выберем?». Я говорю: «Я выбрал. Вот обоснование».
Архитектура — это не «модное слово». Это выбор, который определяет будущее вашей системы.
Я выбираю стратегию. Я обосновываю её. Я несу за неё ответственность.
Я помогу разобраться и принять решение. Без продаж. Без обязательств.