Совет шляпы моему другу Джеймсу Уоттерсу ( @wattersjames ) за то, что он учил меня о строке ценности. Что такое строка стоимости? Строка ценности — это то, как вы отличаете то, что является основным для вашего бизнеса, а не то, что вы можете и должны на аутсорсинг. В современном мире мы нанимаем много вещей, которые не являются неточными проблемами, но каким-то образом продолжаем размывать линию, когда дело доходит до разработчиков и OPS.
Я здесь, чтобы поговорить с вами о строке стоимости в 2020 году.
Каков мой приоритет?
Настоящий вопрос, с которого вы должны начать, — это мой приоритет? Какая проблема я решаю? Кто мой пользователь или клиент? Когда вы начинаете с этих вопросов, вы начинаете раскрывать, где фокус действительно должен лгать. Итак, давайте начнем с мыслительного эксперимента.
Алиса создает новый бизнес. Для этого примера допустим, это необанк, ориентированный на миллениалов …
Она выявила настоящую проблему, поскольку сама тысячелетия она понимает боли управления деньгами в 2020 году, пытаясь отслеживать расходы и что еще хуже, общаясь со своим банком по телефону или посещая филиал, когда возникает проблема. Банковское дело просто не было построено для нее. У нее отличная идея, что, если банк был построен только для нее.
Алиса намеревается решить проблему с MVP. Ее и еще один инженер (Джо) выясняют, сколько им нужно создать, чтобы сделать что -то вроде этой работы. Им понадобится мобильное приложение, какая -то предоплаченная карта и способ управлять всем этим на бэкэнд.
Алиса знает, как построить приложения HTML5, а Джо — довольно хороший Dev с полным стеком, используя Ruby on Rails, плюс они видели, что полоса — эмитент карт, поэтому они могут использовать это очень быстро. Алиса и Джо решают использовать Heroku для размещения приложения Rails с бэкэнд MySQL и попытаться получить что -то с земли, используя PhoneGap.
Это запутанный пример, но здесь Алиса определила, что проблема, которую она чувствовала, и ей нужно было быстро прототип. Разгружая большую часть первоначальных технических требований на полностью управляемый PAAS, эмитент карты с API и HTML для преобразователя приложений.
На каждом этапе вашего бизнеса вам нужно определить, в чем проблема, которую я решаю и какие компромиссы я делаю, чтобы решить эту проблему против поиска идеально масштабируемого решения для будущего. По сути, какая ценность я создаю и сколько операционных накладных расходов мне нужно повлечь.
Давайте сделаем еще один шаг вперед.
Начальная тяга
Алиса и Джо вытащили MVP и начинают получать тягу. Они находятся на адаптировании друзей и публикуют в социальных сетях, чтобы получить некоторых из первоначальных пользователей. Тяга хороша, и они начинают расти после пары сотен пользователей с линейкой до тысячи за несколько недель. Они уже чувствуют боли от Хероку, но решают удвоить, производительность по телефону также плохая, поэтому они пытаются найти решение.
Алиса решает, что они должны масштабировать Dynos на Heroku, заплатить за большее хранилище MySQL и заключить контракт с разработчиком на сторону приложения. Если приложение медленное, пользовательский опыт ужасен, и это то, что важно. Оплата за вещи-это одно, но ждать 2-3 секунды для загрузки экранов ужасно. Она платит кому -то неполный рабочий день, чтобы начать взламывать что -то для Android, так как большинство пользователей являются пользователями Android.
Хероку сделал свою роль, это кажется дорогостоящим по сравнению с другими решениями, но им не нужно управлять чем -либо, что означает больше времени, чтобы тратить взлом роста, и один человек меньше для оплаты операций. PhoneGap также позволил им проверить рынок изначально, но пережил время, они теперь знают, что пользовательский опыт — это то, что имеет значение.
Масштаб и разорвать
Вещи взорваются быстрее, чем ожидалось. Всегда хорошая вещь, но теперь все в огне. Нам нужно выяснить, как справиться с ростом в пользовательской базе без необходимости полностью Rearchitecte Stack. Нам нужно разбить горячие точки в коде на отдельные службы.
Джо определяет, что API очень медленный с момента его написания в Ruby. Монолитное приложение получило их довольно далеко, но есть много запеченных, в которых можно было бы разделить, чтобы сделать на более подходящем языке. В этом случае API должен быть чем -то более эффективным с момента его обработки всех запросов. Он также просто использует тонну памяти.
Это будет не тривиально на Героку. Они действительно не поддерживают сервисную архитектуру. Все будет публичным вызовом API. Разговор с бэкэндом станет сложным. Джо решает, что ему нужно укусить пулю и заставить ее работать на Heroku, они инвестируют в нее сейчас, и это все еще означает, что им не приходится иметь дело с OPS.
Джо узнал, что некоторые идут и увидели, как многие из крупных технологических компаний приняли за бэкэнд -системы. Он решает написать API в Go и использовать очередь сообщений в Heroku с Redis, чтобы опубликовать что -либо для существующего монолита, который необходимо обработать на заднем плане. Это потребует небольших изменений в приложении Rails, но стоит выгоды.
API GO использует 1/10 от памяти приложения Ruby, на самом деле требуется только 1 динамо, чтобы удовлетворить все их потребности. Монолитное приложение Ruby теперь осталось справляться с фоновой обработкой работы и некоторыми основными функциональными возможностями, которые все еще были довольно сложными. Первый этап масштабирования и разрыва является успешным.
Выходя за пределы Героку
Все это становится здорово, но теперь мы достигли возможности Heroku. Расширение большего количества услуг полезно, но мы несем довольно большие расходы, чтобы сделать это с полным раздутым PaaS. Если мы оцениваем наши затраты по отношению к нашему клиенту базовому уровню, мы на самом деле теряем деньги, а не делаем их. Мы должны найти лучшую альтернативу. Хероку был построен для монолитных приложений, а не микросервисов.
Прагматизм заставил Алису и Джо так далеко. Они подтвердили MVP, получили посадку продукта/рынка и подтолкнули текущую инфраструктуру так далеко, как это было бы. Теперь им нужно выйти из Хероку и найти лучший маршрут вперед.
Вы думаете, что я точно знаю, что вам нужно делать сейчас. Контейнерная платформа на крупном облачном провайдере. Просто разверните этот управляемый контейнерный оркестратор, выучите немного YAML, может быть, немного терраформ, и вы уходите. Здесь вам нужно очень тщательно задуматься о линии ценности. Правильно, мы не забыли об этом.
Строка значения
Добавление до предела с точки зрения масштаба как технически, так и организма заставляет многих компаний приносить все больше и больше операционных бремени в доме. Естественно взвесить стоимость управляемого обслуживания по сравнению с нашими текущими потребностями и предположить, что самостоятельно управляемый является наиболее подходящим выбором для будущего.
Настройка, снижение затрат на саму управляемую услугу, все возможности. Все, не задумываясь о том, что такое операционная стоимость и бремя обслуживания. Я здесь, чтобы сказать вам, это ключевой момент в жизни вашей компании.
Решение, где находится линия стоимости для вашей компании, теперь определит, где вы тратите большую часть своего времени и денег, движущихся вперед. Самостоятельно управляемый — это затонувшая стоимость, яма, из которой становится невероятно трудным, откуда не восприниматься. Столько, сколько вы можете поверить, что сможете перейти из внутреннего подхода, мы редко видим, что это происходит.
Это правда, что когда вы достигаете точки разрыва масштаба, вам нужно начать отклоняться от того, что работало раньше. То, что сработало для 1, не будет работать на 100, не будет работать на 1000. Но это не означает, что вам нужно взять на себя все оперативное бремя владельцев сегодняшних платформ.
Бэкэнд для вашего фронта
M3O родился с пониманием этой точной боли. На расстоянии масштаба каждая команда и организация должны сделать выбор, либо перейти на самостоятельную платформу для выполнения микросервисов, либо нести расходы на решения, которые не были созданы для цели. Мы почувствовали эту боль, поэтому мы решили построить решение.
M3O является облачной нативной платформой разработки для микро служб. Мы сосредоточены на предоставлении полностью управляемой платформы для построения Микросервисы в GO Использование Framework с открытым исходным кодом Микро Анкет Цель состоит в том, чтобы включить Крупномасштабная производительность разработчиков на бэкэнд, позволяя людям, подобным NetLify сосредоточиться на Frontend.
Мы думаем, что это решение работает и почему мы придумали термин «NetLify для вашего фронта, Micro для бэкэнд».
Крупная разработка программного обеспечения сложно. Облако не облегчило это. На самом деле мы чувствуем, что за последние 5 лет Если ничего другого становится все труднее со всеми этими инструментами, продвигаемыми CNCF . Мы думаем Все должно измениться. Поскольку миллионы теперь ожидают масштабирования онлайн -услуг с первого дня, нам, разработчикам программного обеспечения, нужна помощь.
Бэкэнд для вашего фронта. Позвольте нам управлять платформой, помогать писать микросервисы, быть супер продуктивным. Позвольте NetLify разобраться с Frontend и поговорить с нами через единый консолидированный API. Правильно, нет необходимости спорить с этими микросервисами в сплоченный API, мы делаем это за вас.
Когда вы думаете о строке ценности для своего бизнеса. При принятии решения о том, разрабатывает ли будущее вашей компании программное обеспечение или управлять им. Выбирайте разработку каждый день недели, позволяя нам иметь дело с операциями.
Если вам интересно узнать больше, проверьте m3o.com или присоединиться к нам по адресу #M3-Platform на slack.m3o.com .
Оригинал: «https://dev.to/micro/the-value-line-in-2020-dev-vs-ops-4e4b»