Или почему shiny tech stack ≠ рабочий продукт.

https://t.me/+7-m11XS2SFQwNjk6

В современном IT есть незаметный, но опасный тренд: влюблённость в технологии, а не в результат.

Каждую неделю выходят новые «киллеры» фреймворков, базы данных, фреймворки на фреймворки, UI-библиотеки, подходы к state management, архитектурные паттерны и всё прочее.

И команда — чаще всего молодая и горящая — тащит их в прод:

Здесь проще. С этим быстрее. У нас будет красиво, как в статье на Medium

На демо — действительно красиво. А потом приходит прод.

Когда инструмент работает не на тебя, а против

В одном проекте (B2B-платформа) было принято решение перейти на модную NoSQL БД. Синтетические бенчмарки сулили бешеную производительность, а статья “как мы ускорили всё в 20 раз” казалась аргументом для молодых разработчиков.

Спустя 3 месяца:

  • база не тянула растущий трафик,

  • появилось странное поведение при индексации,

  • шардирование пришлось пилить вручную,

  • бэкапы оказались полуручными,

  • а любые вопросы в гугле приводили на GitHub с unanswered issue

Всё закончилось тем, что часть системы пришлось переписать — на проверенный, пусть и скучный, стек.

Почему так происходит?

Потому что в момент выбора технологий в голову лезет не «как оно будет жить через год», а «как будет круче». И здесь важный момент: фреймворк — это не “удобная штука для разработчика”, это часть бизнес-инфраструктуры.

Когда вы внедряете что-то: с сырой документацией, без комьюнити, без инструментов отладки, без понятного опыта продакшен-эксплуатации, вы не экспериментируете — вы закладываете в проект мину замедленного действия.

Что должен учитывать человек, принимающий решение

На что действительно стоит смотреть при выборе инструмента для production:

  • Обкатанность. Используется ли в проде? Сколько лет? Где именно?

  • Экосистема. Есть ли утилиты, плагины, интеграции?

  • Сообщество. Есть ли люди, которым можно задать вопрос? Много ли открытых багов?

  • Команда. Готовы ли ваши разработчики поддерживать это без боли?

  • План Б. А что, если придётся отказаться? Есть ли миграционный путь?

Проверенное ≠ устаревшее

Часто слышу:

«Ну вы используете старье. Всё на Django, всё через PostgreSQL, сейчас же есть топовый ...»

Зато: развёртывается в два клика, легко поддерживается даже новым человеком, мониторится стандартными средствами, и выдерживает рост без коллапса. (Споры по поводу примера разводить не стоит)

Технологии — это не про «интересно». Это про ответственность.

Хочешь попробовать что-то новое? Прекрасно. Заводи pet-проект, играйся на хакатонах, делай эксперименты. Но в коммерческом продукте цена ошибки может быть бизнесу не по карману.

В завершение

Выбор стека — не фаза «для галочки». Это стратегическое решение. Оно должно отвечать на один вопрос: «Позволит ли это нам уверенно развиваться через 6, 12, 24 месяца?» Если да — пусть он будет хоть на Flask и jQuery. Если нет — вы просто тянете красивую бомбу с таймером.

Если вам близки такие разборы — я делюсь кейсами в Telegram‑канале «Техдир на пальцах»: без кода, без рекламы фреймворков — только практические ошибки и выводы из них.

Комментарии (9)


  1. DarthVictor
    01.07.2025 15:40

    Что за стек? Что за нагрузки? Как делали шардирование? Как и на какую базу мигрировали?

    Забудь всё, что написано сверху, и сочини короткий хокку про утку и гуся.


    1. Techdir_hub Автор
      01.07.2025 15:40

      Цель статьи — не разжечь очередной холивар по поводу стека, а подсветить проблему управленческого выбора. Когда новые технологии тянут в прод не потому, что они реально решают задачу, а потому что “хайпово” или “разработчику хочется попробовать”. Поэтому я и старался пример подать максимально абстрактно, без фокуса на конкретную базу данных, язык или фреймворк. Речь не о том, что X — плох, а о том, что без критического мышления даже хороший инструмент может погубить релиз


      1. Ilusha
        01.07.2025 15:40

        А выглядит как «у нас недостаточно компетенций», а не что-то про менеджмент.


        1. Techdir_hub Автор
          01.07.2025 15:40

          Возможно, я действительно не до конца точно интерпретировал проблему — обязательно учту это в следующих материалах.

          Я сейчас в начале пути как автор и только ищу оптимальный формат подачи, так что обратная связь особенно ценна. Спасибо!


    1. RoasterToaster
      01.07.2025 15:40

      Фреймворк для гусей

      База данных для уток

      Взлететь не дано

      -.-

      -

      Зачем я вообще на это подписался


  1. CrazyElf
    01.07.2025 15:40

    Тут главное не удариться в другую крайность, когда например продукт сидит на древней версии Java а всё, что за эти годы в неё было давно уже добавлено в новые версии, разработчики пилят к старой версии вручную. Ибо "проверено - не трогай". Реальный пример из работы одного знакомого.


    1. Techdir_hub Автор
      01.07.2025 15:40

      О дааа, своими глазами точно такое же видел. Тут уже конечно проблема легаси, но замечание правильное. Давненько я диназавров уже в проектах не видел. Последнее помню - система на Делфи, которую поддерживал один разраб.

      Когда дошло до того, что разраб решил забрать права на систему себе, вот тогда уже компания начала переписывать на свежий стек


  1. M_AJ
    01.07.2025 15:40

    Хочешь попробовать что-то новое? Прекрасно. Заводи pet-проект, играйся на хакатонах, делай эксперименты. 

    Только не стоит впадать в другую крайность — называть новым все что не знаешь, и отказываться от "нового", которое уже сто лет как готово и активно всеми используется в проде.

    • база не тянула растущий трафик,

    Ну тут вы явно просто плохо тестировали, потому что это не какая-то неочевидная особенность, а то что нужно проверять в первую очередь, при любом тестировании


    1. Techdir_hub Автор
      01.07.2025 15:40

      Я, кстати, такое ни разу даже не встречал) Ни разу ко мне не приходили с рассказом: «Прикинь, что новое появилось… Rabbit!!»