Всё началось с конфликта. В мой трайб, где я работал Agile-коучем, пришёл новый технический лидер и стал разбираться в ситуации. Хотя команда показывала хорошие результаты в бизнесе, новый технический лидер трайба постоянно повторял: «У вас всё сделано на коленке». Я не согласился с этим утверждением, но не стал с ним спорить. Однако меня охватило желание поразмышлять о том, как Agile-подход и Scrum влияют на качество работы.

Если посмотреть на людей, которые входят в Scrum-команды, можно часто встретить мнение, что Agile и Scrum — это про быстрое достижение бизнес-показателей в ущерб качеству. Но так ли это на самом деле? 

MVP: минимальный жизнеспособный продукт и технический долг — как они связаны?

«Если вам не стыдно за первую версию продукта (MVP), значит, вы пришли на рынок слишком поздно», — писал Эрик Райс в своей книге «The Lean Startup».

Эти слова заставляют задуматься о том, что методологии Agile, Scrum и продуктовый подход могут привести к созданию некачественных продуктов. Ведь когда на первый план выходит скорость, появляется множество компромиссов и недочётов, которые в конечном итоге могут негативно сказаться на качестве.

Чтобы опровергнуть это утверждение, необходимо понять, как разрабатывается первая версия продукта (MVP — минимальный жизнеспособный продукт). Должны ли мы жертвовать качеством в погоне за скоростью? Конечно, да, но при этом мы также берём на себя ДОЛГ.

При создании стартапа мы берём кредит, создавая денежный долг перед инвесторами и банками, в надежде, что если продукт окажется успешным, мы сможем вернуть эти средства из прибыли. Аналогично, создавая MVP, мы берём на себя «технический долг», который обязуемся погасить, если продукт станет успешным.

Технический долг — это метафора, которая описывает проблемы, накопившиеся в программном коде или архитектуре из-за пренебрежения качеством на ранних стадиях разработки. Эти проблемы могут привести к дополнительным затратам труда в будущем.

По моему мнению, те, кто создаёт первую версию продукта, не беря на себя технический долг, подобны тем, кто берёт деньги в банке и не готов регулярно выплачивать проценты. Любой долг необходимо возвращать, и самая эффективная схема — это регулярность.

Бюджет в виде ресурса команды или «квота», заложенная на каждый равный промежуток времени, может превратить первую версию продукта из объекта стыда в предмет гордости в течение нескольких десятков итераций. Этот бюджет может составлять 5% времени команды, 10% или даже все 50%. Но если долг существует, его необходимо зафиксировать и постепенно снижать.

Бюджеты для снижения долга появляются из уже запущенного продукта, который, пусть и не идеален, но всё же работает. Если же мы будем делать очень качественный, но очень долгий продукт, то можем увидеть, как рынок захватывают конкуренты с менее качественным, но выпущенным раньше продуктом. И тогда все эти вложенные часы в качество окажутся никому не нужными.

Но только ли в техническом долге дело?

Так что же такое качество?

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

Качество — это совокупность свойств продукта, призванных удовлетворять потребность в соответствии с назначением продукта. 

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

Качество продукта — это совокупность её наиболее важных свойств

Должны ли мы уделять внимание каждому свойству на этапе запуска продукта? Безусловно, да, но не менее важно как быстро мы сможем выпустить первый полностью рабочий экземпляр. Ведь машина с двигателем, но без колёс — это не более чем груда металла. А вот планер с крыльями, но без мотора может существовать как самостоятельный продукт.

И вот, наконец, мы получаем продукт — корявый, в заусенцах, неопрятный, но который работает. Был ли первый этап важным для качества нашей продукта? Конечно, ведь любой работающий продукт всегда лучше, чем неработающий.

Поэтому первое, что нам нужно сделать, — это определить, какие именно свойства действительно важны для нашего продукта в соответствии с её назначением. И сосредоточить свои усилия именно на них.

MVP создан, что дальше? Непрерывный цикл улучшения!

Но вот у нас готова наша первая версия, кривая и косая, но работающая. Ей уже начинают пользоваться, по ней нам прилетает много обратной связи. Что мы должны сделать дальше?

Следующим правильным этапом будет запуск постоянного цикла улучшений. Цикл предполагает постоянное повторение с маленьким улучшением. Как дерево становится гладким от множества повторений движения шлифовальной бумаги, так и определённая область становится лучше, если туда постоянно направлено наше внимание. Но чтобы мы могли что-то улучшать, нам нужна обратная связь от мира, пользователей, внешней среды. Мы должны попробовать сломать, и там, где сломалось, усилить. И так много-много раз.

Такой цикл заложен в Scrum и называется Спринт. Обратную связь по продукту в Scrum мы получаем на таком мероприятии как Демо (более правильное название Sprint Review). Обратную связь по командным процессам мы получаем на таком мероприятии как Ретро. 

Чем больше итераций мы пройдём, тем более качественным будет наш продукт, при условии того, что мы работаем над самым слабым элементом нашей системы. Можно сколько угодно работать над совершенствованием только колеса автомобиля, но это не сделает его лучшим автомобилем на рынке. Через постоянное улучшение самого слабого звена мы придём к накопительному эффекту, где каждое действие будет усиливать все последующие, и наша скорость будет увеличиваться.

C увеличением знаний о продукте и улучшением взаимодействия в команде, Scrum-команды могут достигать более высоких результатов, повышать качество продукта и увеличивать удовлетворенность клиентов.

Для непрерывного улучшения продукта необходим список улучшений. В Scrum такой список называется Бэклог. Бэклог - это список, в котором содержатся и тех. долг и всевозможные улучшения по ОДНОМУ продукту. Ограничение, что продукт один и означает переход в определенный режим шлифовки или цикла управления качеством, который когда-то описал Деминг. 

Цикл Деминга
Цикл Деминга

Scrum провоцирует качество?

Все элементы Scrum направлены на улучшение качества продукта. Спринт служит циклом, в котором мы оттачиваем продукт. Демо позволяет получать обратную связь, выявлять слабые места и накапливать знания о продукте. Ретроспектива помогает нам учиться на собственных ошибках и постоянно совершенствовать процессы внутри команды. Бэклог собирает все идеи по улучшению, которые мы хотели бы реализовать в рамках одного продукта. Владелец продукта активно общается с клиентами и знает все их болевые точки.

Однако, несмотря на это, мы часто сталкиваемся с тем, что продукт не достигает высокого уровня качества, даже если разработка ведется в рамках Scrum.

Согласно моему опыту, причиной этого является постоянное стремление к развитию нового. Создав первое минимально жизнеспособное решение (MVP), мы сразу переходим к созданию второго, не обращая внимания на технический долг, возникший в результате работы над первым MVP. Этот процесс повторяется снова и снова, и команда, работающая в Scrum, создает одно MVP за другим, накапливая такой объем технического долга, что его закрытие может занять несколько месяцев.

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

Неудивительно, что те, кто видит все изнутри, могут прийти к выводу, что Agile и Scrum — это лишь способ быстро решить проблемы, не уделяя достаточно внимания качеству. 

Кто является заказчиком Scrum-команды?

В своей практике я часто сталкиваюсь с тем, что не те люди, которые часто общаются с командой, являются заказчиками, принимающими решения о переключении команды на новые MVP. В таких случаях владелец продукта не играет активной роли заказчика, а лишь передаёт пожелания более высоких бизнес-руководителей команде. Без достаточной власти он не может эффективно управлять бэклогом продукта, учитывая как бизнес-требования, так и результаты предыдущих MVP.

Но так ли это должно быть? Конечно, нет! Владелец продукта — это тот, кто сам принимает решения о развитии своего продукта, основываясь на бизнес-показателях, мнении клиентов и команды. Он близок к команде и знает все её проблемы, а также близок к клиентам и их ожиданиям. Исходя из этих двух часто не совпадающих точек зрения, он выбирает стратегию и формирует видение будущего продукта. Именно владелец продукта отвечает за P&L, то есть за рентабельность, прибыль и качество продукта.

В идеале владелец продукта обладает большой властью в выборе стратегии и основных направлений развития. Он должен уметь жертвовать некоторыми сегментами своей целевой аудитории, фокусируясь на определённых нишах.

К сожалению, в крупных компаниях эта картина далека от реальности. Ситуация усугубляется тем, что у разных частей одного продукта может быть несколько владельцев продукта и несколько бэклогов, что создаёт дополнительные сложности.

Однако существуют различные продуктовые практики, которые могут помочь владельцу продукта «воспитывать» заказчиков, показывая им явный эффект от внедрения новых или доработки старых задач. 

Почему владельцу продукта выгодно заботиться о его качестве?

Если представить, что владелец продукта в конкретной команде или во множестве команд несет реальную ответственность за прибыль и убытки (P&L) своего продукта, то возникает вопрос: почему ему будет выгодно уделять внимание качеству?

Ответ на этот вопрос кроется в мощном продуктовом инструменте — юнит-экономике. У любого продукта есть либо реальная, либо предполагаемая выручка. Даже если это внутренний продукт, он все равно приносит пользу внутреннему заказчику, которая не всегда выражается в деньгах напрямую, но косвенно пересчитывается в деньги.

Структура выручки

Выручка состоит из нескольких компонентов:

  1. Себестоимость — затраты на разработку, обслуживание, материалы, из которых состоит продукт, аренду офиса и налоги.

  2. Затраты на продажу — расходы на коммуникацию с клиентом до момента продажи.

  3. Рентабельность на прибыль — соотношение между выручкой и затратами на производство и продажу

  4. Маркетинг — расходы на привлечение и удержание клиентов.

С каждой проданной единицы товара при определенной рентабельности продукта, себестоимости и затратах на продажу остается бюджет на маркетинг. Это крайне важный показатель, который не всегда очевидно, но напрямую связан с качеством.

Маркетинг и удержание клиентов

Бюджет на маркетинг с единицы проданного товара определяет, насколько активно мы можем привлекать клиентов в свой продукт. Очевидно, что компания с показателем в 100 000 рублей может сделать больше для привлечения нового клиента, чем та, у которой этот показатель составляет всего лишь 10 000 рублей.

Один привлеченный клиент может пользоваться продуктом несколько раз. Зная это количество и средний чек, мы можем рассчитать LTV (пожизненную ценность клиента).

LTV (Lifetime Value) — это метрика, которая оценивает общую прибыль, которую бизнес получает от одного клиента за все время его взаимодействия с продуктом или услугой.

LTV является ключевым показателем для анализа рентабельности привлечения клиентов и стратегии удержания.

Связь качества с LTV

Чем выше качество продукта, тем дольше клиент будет им пользоваться. А значит и LTV будет больше.

Чем выше LTV, тем больше денег остается на маркетинг, и тем более агрессивно мы можем захватывать рынок и развивать продукт.

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

Различные стратегии развития в зависимости от ресурсов компании

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

Если мы посмотрим на самые успешные стартапы, которые начинали с нуля, то увидим, что они все выбрали одну конкретную нишу, предлагая продукт, который решал проблемы узкой аудитории. Это позволило им быстро создать MVP (минимально жизнеспособный продукт) и сосредоточиться на постоянном улучшении качества для своей целевой группы. В результате они стали лидерами рынка, что, в свою очередь, способствовало аккумуляции ресурсов. И только после того, как они накопили достаточно ресурсов, они начали расширяться и выходить на новые рынки.

Да, если MVP не показало должного эффекта, от него можно и нужно отказаться и проверять гипотезы дальше, но, отказываясь от решения, мы также списываем технический долг, который был накоплен с этим решением, но сохраняем опыт и знания.

Scrum-команда или объединение команд создают культуру стартапа в крупной организации. У такой команды всегда ограничено время на реальную разработку, поэтому ей необходимо тщательно выбирать свою нишу. Только после того, как она создаст действительно качественный продукт, она сможет масштабировать свой опыт на другие области. 

Вот примеры из практики известных стартапов которые работали долго над одним продуктом

  1. Amazon:

    • Запустил свой первый продукт — онлайн-магазин книг — в 1995 году.

    • Расширился до продажи других товаров через 3–4 года и запустил Amazon Web Services (AWS) только через 10 лет (в 2006 году).

  2. Facebook:

    • Начал с социальной сети для студентов в 2004 году.

    • Перешел к следующему значимому продукту (Messenger как отдельное приложение) спустя 8 лет, в 2012 году.

    • При этом постепенно добавлял функции в основной продукт (например, Marketplace, Ads).

  3. Google:

    • Запустил свой поисковый движок в 1998 году.

    • В 2000 году добавил контекстную рекламу (AdWords), которая стала вторым важным продуктом.

    • Gmail появился только в 2004 году (6 лет спустя после запуска основного продукта).

  4. Uber:

    • Начал с премиального сервиса (UberBlack) в 2009 году.

    • Запустил UberX (более массовый продукт) через 4 года, в 2013 году.

    • Дальнейшие продукты (UberEats, UberFreight) появились ещё через несколько лет.

Выводы:

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

  2. Создать минимально жизнеспособный продукт (MVP).

  3. Сосредоточиться на развитии этого продукта и сделать его действительно качественным.

  4. Чтобы добиться успеха, необходимо анализировать P&L продукта, оценивать юнит-экономику и действительно решать проблемы клиентов, чтобы они продолжали пользоваться продуктом.

  5. Положительный P&L позволит команде высвободить бюджет для постоянного улучшения качества и масштабирования успешных решений в другие области, рынки и ниши, возможно, путем увеличения количества команд.

Негативный сценарий:

  1. В попытке угодить широкой аудитории мы постоянно разрабатываем новые модули и версии продукта для разных групп клиентов. Каждая новая версия — это как мини-продукт внутри нашего основного продукта.

  2. Из-за ограниченных ресурсов каждый модуль реализуется через MVP, что приводит к большому количеству технических долгов. На их решение нет ресурсов, так как мы постоянно сталкиваемся с необходимостью выпускать новые версии.

  3. Решения, реализованные через MVP, не вызывают WOW-эффекта, и пользователи становятся недовольны или перестают пользоваться продуктом. Это приводит к сокращению бюджета, что делает невозможным дальнейшее улучшение качества и развитие смежных направлений.

P.S. В этой статье я описал лишь один из кейсов влияющий на управления качеством, хотя в этой области есть множество прикладных аспектов, о которых хотелось бы рассказать подробнее (например, о картах Шухарда). Однако, как и в любой другой области, важно начинать с основ. Невозможно добиться идеально ровной поверхности дерева, если каждый раз двигать шлифовальной машиной по разным брускам. Чтобы достичь качества, нужно сосредоточиться на одном бруске, в нашем случае продукте и планомерно, в течение длительного времени, работать над его улучшением. А какими инструментами это делать, я, возможно, расскажу в следующей статье. 


? Когда вы достигаете какой-либо большой и сложной цели, что обычно чувствуете? Радость, удовлетворение, или, может быть, состояние опустошенности?-3
QR Telegram канала "Путь Agile"

Если статья понравилась, подписывайтесь на мой канал «Путь Agile» в Telegram.

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


  1. DikSoft
    25.12.2024 12:34

    MVP - зло в чистом виде. Вместо выпуска чего-то полезного провоцирует гонку недоделок.
    При этом декларируя, что это нормально, продавать (!) сырой отстой.


    1. vmkazakoff
      25.12.2024 12:34

      Просто есть набор людей, в том числе среди начальства, которые не понимают разницу между mvp и прототипом. И из слова mvp видят только первую букву.

      В итоге получаем не минимально полезный продукт, а минимально продаваемое говно.

      Пользователь хочет машину. Это гипотеза. Мы не знаем точно ли и какую именно, не знаем сможем ли мы ее сделать и продать. Можно пойти двумя путями:

      1) Сделать прототип машины. Это будет мотоцикл, или даже самокат. Пусть едет только с горки, а тормоза пока вообще не будем делать. Если мы нашли покупателей, наша уверенность в том, что и на машину сможем - растет. А вот понимается сможем ли сделать машину - нет.

      2) Можем делать mvp - машину без каркаса, сидений и может быть даже тормозов и мотора, но там будут колеса именно от машины. И руль от нее. Получится телега. Но архитектурно она ближе к машине, чем даже мотоцикл. На этом можно проверить сможем ли мы сделать машину, хватит ли компетенций. Но вот продавать телегу не получится, хотя какую-то пользу она несёт - едет если ее тащить.

      В итоге, как правило, получаем от менеджера пожелание делать по первому пути, так как проверить продажи ему важнее, ведь без графиков прибыли и продаж инвестиций не получить, это факт.

      Получаем, например, мотоцикл. Менеджер и получает инвестиции и понеслось - давайте добавлять к мотоциклу климат контроль, мультимедиа, обязательно подогрев стекла. Как стрела нет? Быстро добавить! В смысле некуда? Так, у нас тут агиле или где, хватаем стекло от окна, крепим саморезами!

      На выходе получаем машину, с рулём от велосипеда, колесами самоката, тормозами от роликовых коньков. Продажи, почему-то, не прут. Странно. Менеджера увольняют, новый приходит, понимает что все плохо, нужно переделать, а для этого больше инвестиций, а чтобы их получить надо графики продаж... Круг замкнулся. Мир погряз в прототипах, которые вырвались из лабораторийна прод.

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


      1. R3B3LL10N
        25.12.2024 12:34

        Можем делать mvp - машину без каркаса, сидений и может быть даже тормозов и мотора, но там будут колеса именно от машины. И руль от нее. Получится телега.

        Вы тоже не понимаете что такое MVP. Пользуясь той же аналогией - для мвп мы соберём каркас, колёса, сидения и все остальные атрибуты которые делают машину машиной. Не феррари и даже не жигуль, но чтоб в ГИБДД такую зарегистрировали без проблем.

        Это минимально ценный вариант автомобиля. Смысл мвп создать не говно без ключевых фичей, а собрать ключевые фичи без говна. И дальше уже просто масштабировать.

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


  1. onets
    25.12.2024 12:34

    Опять какие-то общие слова. Давайте конкретику. Вот я пилил MVP. На нем работают несколько мелких клиентов.

    Но однажды отдел продаж продал этот mvp нескольким крупным клиентам и теперь надо повысить качество продукта - чтоб этот mvp выдержал миллион запросов в секунду. И все это через 2-3 месяца. А то клиенты недовольные будут и уйдут. Че делать-то???

    Как вы предлагаете организовать переписывание всего продукта на новую подходящую архитектуру за это время со своим скрамом?


    1. sshikov
      25.12.2024 12:34

      отдел продаж продал этот mvp нескольким крупным клиентам

      Пусть отдел продаж и перепишет? :)


    1. jeen
      25.12.2024 12:34

      А причем тут скрам? У Вас проект: срок есть, конечный результат описан, доступные ресурсы известны. Планируете и узнаете сделаете или нет. Если нет, то думаете что нужно, чтобы да.


      1. onets
        25.12.2024 12:34

        При том, что по ватерфоллу - сначала бы провели анализ и выяснили, что потенциально все текущие клиенты компании могут купить этот продукт, посчитать нагрузку, выбрать подходящую архитектуру с запасом на несколько лет.

        Но нет, сначала mvp за две недели на коленке. А потом страдать и год переписывать в спринт по чайной ложке, теряя новых потенциальных клиентов.

        И сколько тут не пишут статей про адажил - льют воду, и толком не рассказывают как конкретно они борятся с этим аджаилом и в каких условиях (размер команды, размер проектов).


        1. dididididi
          25.12.2024 12:34

          Угу. По ватерфоллу один шанс из 1000 что проект стрельнет, а так то в нем зарегается бабушка основателя и мама. И все.

          Вы знаете много проектов, которые умерли от того, что слишком много клиентов стали внезапно закидывать их миллиардами денег?


          1. DikSoft
            25.12.2024 12:34

            По ватерфоллу один шанс из 1000 что проект стрельнет

            А по аджайлу один стартап из 100 с MVP успеет за это время клиентов нае получить. Офигенный бизнес. Честный и прибыльный.


            1. dididididi
              25.12.2024 12:34

              Блин, ну так работает исследование. Ставишь гипотезу, проверяешь. Если она упадет с вероятнтстью 1 к 100, вряд ли стоит там подвал коллекционным мрамором выкладывать.

              Я те больше скажу, можно ваще без мвп течтировать. Желаешь лендинг и смотришь суолько заманил людей, сколько ссылку тыкнули, где ваще пусто.


              1. DikSoft
                25.12.2024 12:34

                Согласен полностью. Не правильно продавать сырое дерьмо!

                Но вот мерзавец и проходимец, но при этом гений маркетинга Джобс со своим первым айфоном показал, что обмануть и при этом заработать миллионы это хорошо и здорово. С него и понеслось это дерьмо, что раскрутить и дорого продать сырейший MVP это не обман, а такой вот способ "выйти на рынок". Теперь все жрём одни "MVP"..


                1. dididididi
                  25.12.2024 12:34

                  Бери глубже! Еще первобытный человек, вместо того чтобы сделать автомат калашникова, просто наточил палку и пошел в медведя тыкать этим неудобным гуано.

                  А вот нормальные пацаны.. А стоп.. Они все умерли проткнутые острой палкой.


          1. onets
            25.12.2024 12:34

            Так то ситуации бывают разные, вот я и хочу узнать как люди делают. И думаю хабр как раз для того, чтобы поделиться опытом.

            А что я вижу - половина статьей, где аджаил восхваляют, но никакой конкретики (вот как текущая). И другая половина статьей, где аджаил чморят. Например вот https://habr.com/ru/articles/659379/ и такие статьи кстати набирают больше лайков.

            Лично у меня разнообразный опыт, как и удачные проекты по waterfall, так и по agile. Но я не проджект менеджер. И профессионально не погружен в эту тему, настолько же как в программировании. А те, кто восхваляют аджаил - не рассказывают как у них устроен конкретно их тру-каноничный-скрам.

            А проекты закрывают из-за того, что приходится год по аджаилу переписывать продукт почти с нуля. Старые клиенты недовольны, что нет нового бизнес-функционала. А новые не дожидаются. Потому что заранее не продумали роадмап, требования и ограничения. Ведь это же чмошный ватерфолл.


    1. dididididi
      25.12.2024 12:34

      А можно пример медленной архитектуры?

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

      На этом все.

      Ну и спасибо за лакомый пример взрывного роста. В реальной жизни, 95 из 100 проектов умирают вообще без клиентов, и дай бог один из 1000 имеет проблемы с резким ростом нагрузки.

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


      1. onets
        25.12.2024 12:34

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

        Примеры можно:

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

        2. Была синхронная работа - переделывают на асинхронную с очередями

        3. Было единое хранилище данных, решили сделать тяжелый аналитический дашбоард - хранилище начинает тормозить. Сначала увеличивают сервак БД, если не помогло - тогда надо, например, разделять хранилище на read и write.

        4. Поддерживали только Oracle БД, а появился клиент, у которого MS SQL. Если к тому времени много чего в целях оптимизации было перенесено с ORM на нативный SQL - идешь и все это сначала валидируешь, а потом переписываешь в нужных местах

        5. Переписывают монолит на микросервисы (я лично этого не делал, но слышал)

        6. Оказывается, что для каких-то задач надо не SQL, NoSQL (не обязательно monga, а например какая-нибудь cassandra) (лично я тоже не делал, но слышал)

        Пример взрывного роста тоже можно

        • 2 года назад - несколько клиентов, на собранном на коленке синхронном MVP, объем данных на обработку до 500 документов в месяц

        • Год назад - появляются клиенты на 160 000 документов в месяц, некоторые отвалились, пока решали проблемы

        • Сейчас - есть потенциальные клиенты на 500-600 тысяч документов в месяц


        1. dididididi
          25.12.2024 12:34

          Асинхронщина ничего не даст, если вы уперлись в бд. А еще люто усложнит все.

          Монолит на микросервисы ничего не даст, если вы уперлись в бд. Только замедлит, если там https.

          Ну и еще момент: мы рассматриваем легкое поделие на коленке, где один запрос - условно один инсерт в базу. А не раздувшиеся монстры легаси, где вся история хранится, логи и куча взаимосвязанных таблиц, а там на каждое добавление ананасов в пиццу 150 инсертов в базу херачит.

          И поделие постгря выдержит это все легко.

          Но если у вас там два года 10 человек ваяли "функциональность" то да - все посыпется) Но тут уже не про мвп идет речь, вы уже 2 года там чтото делаете - это просто вы криво-косо делаете. Там уже можно и оптимизациями заняться.


        1. dididididi
          25.12.2024 12:34

          Ну и да это не претензия к мвп или качеству. Все равно что купить себе ладу седан и жаловаться, что она 40 тонн не везет. Она сделана для того что она сделана и не делает для чего не предназнаяена. В чем проблема?

          Сделать систему которая переваривает 1м rps это отдельная инженерная задача неиимеющая вообще ничего общего с мвп на коленке и если ее прямо не ставили, то пусть идут в жопу.


  1. Aikonova
    25.12.2024 12:34

    К счастью или к сожалению, теперь понимаю свой опеределенныопыт более четче


  1. OcMaRUS
    25.12.2024 12:34

    Чем больше я читаю подобные статьи, тем больше убеждаюсь, что аджайлы всякие и скрамы - попытка гуманитариев влезть в айтишные дела, там где управлением занимается гуманитарий, нефига не понимающий в байтах.


    1. c3gdlk
      25.12.2024 12:34

      Аджайл придумали айтишники для айтишников. То, что корпорации выпихнули туда гуманитариев, не проблема аджайла.

      Скрам примерно тоже самое.


      1. DikSoft
        25.12.2024 12:34

        Аджайл придумали айтишники для айтишников

        Но почему-то сформулировали, как менеджеры-гуманитарии. Ещё и не совсем порядочные..


  1. kivan_mih
    25.12.2024 12:34

    Статья не показалась мне цельной и не все выводы как мне кажется следуют из того, что написано. А вот, что точно - ни аджайл, ни скрам сами по себе не приведут к качественному продукту, к нему приводят конкретные люди, а не абстрактные команды. За много лет в разработке не раз видел примеры, когда плохие команды делали плохой продукт по самой модной на тот момент методологии и наоборот команды из хороших специалистов используя самопальную методологию-мутанта, придуманную за обедом, делали и поддерживали очень качественные продукты.