Знаете что мне чаще всего приходится объяснять заказчикам?
Знаете что мне чаще всего приходится объяснять заказчикам, оунерам, продуктолагам, менеджерам, джунам с мидлами, иногда даже хедам? Разницу между «запилить фичу» и «вывести фичу в продакшен». Большинство до сих пор думают, что сделать какой-то функционал — это и есть вся работа.
Так вот, хочу немного развеять этот миф.
Вам нужно сделать, условно, «кнопку, которая делает магию». Саму кнопку нарисовать и простейший эндпоинт — это дело пары дней, если не часов. И все такие: «О, как быстро!». Да можно даже навайбкодить и будет «вау! Программисты не нужны!».
А потом... а потом начинается настоящая работа. Та самая, которую не видно, но без которой всё развалится. Та, что съедает 90% времени и нервов.
-
«А оно у нас не упадет, если зайдут сразу 100 человек?» - тут начинаются танцы с бубном вокруг серверов, балансировок , очередей, параллелей, воркеров, потоков и алго оптимизации.
-
«А как люди будут грузить свои гигабайтные файлы? Чтобы быстро и не обрывалось.» - Привет, боль и страдания с сетью.
-
«А что сделать, чтобы наше API не утянули налево и не начали использовать бесплатно?» — Здравствуй, авторизация, аутентификация, rate limiting и прочие радости жизни.
-
А еще права, роли, безопасность, логирование, расчет стоимости нагрузки, автомасштабирование...
Именно из-за всей этой «обвязки» запуск полноценной фичи в прод - это такой долгий и дорогой процесс, который не генерится нейронкой. Цена выходит очень серьезная.
А знаете, где это легче? 👇
«Коробочные» решения. Тот самый установщик под Windows/macOS или обычное мобильное приложение.
Не нужно париться, что ваш сервер ляжет под нагрузкой — у каждого пользователя своя копия. Не нужно строить супер-защищенное API. Просто установил — и всё уже работает. По деньгам за разработку это выходит кратно дешевле.
Так что вывод для стартапов часто такой: Хочешь быстро и с минимальным бюджетом — смотри в сторону «коробки».
А вы как думаете? Узнали в этом свой опыт?