Немного про оптимизацию разработки.

Все здесь написанное относится к заказной разработке. Но, справедливо и для продуктовой.

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

Весело. Но дорого.

Но, речь не о сторонних библиотеках. Там ограничения могут быть ого-го. А о своем, родном.

Потому, в какой-то момент мы пришли к модульности. Разбиваем проект на минимальные куски, следуя за принципом единой ответственности. Делаем максимально универсальными, расширяемыми. И переиспользуем их везде, где можно. Собирая из кубиков и минимально кодя.

Нужно нам сделать очередной, например, мега-магазин. Взяли мы наш скелет. Модуль товаров. Добавили нужные поля. Базу для приема платежей. Вытащили туда нужные платёжки. Ещё чего добавили. Немного покодили и все. Проект вместо 3 месяцев занял всего один.

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

Ага. Очевидно. Все так делают! Не, как ни странно, не все. Далеко. Сталкивался не раз и не два с однотипными проектами, сделанными одними людьми, на одних технологиях, но совершенно разные внутри.

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

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

Ну, например, большой модуль работы с блокчейном. Или модуль сделок (а завтра добавите заявки, которые почти сделки, но немного другие).

А завтра компания расширится за пределы crm, а у нас нужные модули уже есть! А мы умные! Мы радуем бизнес!

И да, модули и оптимизации это хорошо, но меру никто не отменял😄

Мысли, кейсы, истории?