Стартап растет, и теперь в вашей команде 5 штатных разработчиков. У вас есть старое приложение, которое запущено и работает в производственной среде, а новое веб-приложение почти готово к выпуску. У вас есть что-то вроде 5 физических серверов (некоторые новые, некоторые устаревшие) и 5/10 «облачных машин». Старая версия вашего приложения работала на простом веб-сервере и со временем превратилась в нечто более «профессиональное». С другой стороны, ваше новое приложение использует преимущества облачной среды и предназначено для поддержки «большого объема трафика» с использованием очередей, nosql и других интересных вещей ... Ваши продажи растут, необходимы разработка функций и исправление ошибок. Ваши разработчики используют 110% своих возможностей (и становятся настоящими «разработчиками программного обеспечения швейцарского армейского ножа»), разрабатывая новое приложение и поддерживая старое ... Когда у вас заканчиваются ресурсы, когда дело доходит до решения конкретных проблем, вы позвоните «знающему парню», оплатив дорогие счета. У вас есть серверы unix и windows, и вы устанавливаете обновления и читаете средство просмотра журналов, когда у вас есть время или когда вы получаете сообщение об ошибке приложения. Пока что обычная ситуация для технологического стартапа ...
Итак, теперь у вас есть картина. Должна ли эта компания нанять системного администратора или позволить «разработчикам, которые хотят» управлять инфраструктурой и отдавать на аутсорсинг, если они сомневаются в решении?
Я говорю, как только вы сможете себе это позволить.
Разработчики - не системные ребята. Они понятия не имеют, как лучше всего оптимизировать MySQL для достижения максимальной производительности. Они не знают о Keepalive на Apache при работе на виртуальной машине.
Это 2 примера, с которыми я столкнулся, когда разработчик настраивает веб-сервер для стартапа и в процессе его сбивает.
Многие разработчики также придерживаются мнения: «Это сработало на моем ПК, поэтому должно работать на сервере!» - Плохие новости.
Наймите системного специалиста, если хотите, чтобы все было сделано правильно.
Когда расходы на персонал перевешивают риск перебоев в работе и потери данных для вашего бизнеса, которые будут предотвращены персоналом.
Это так просто.
В этом масштабе вы уже должны записывать достаточно подробностей о том, на что нынешние сотрудники тратят свое время, чтобы ответить на вопрос. Из вашего описания я бы заставил всех отслеживать, над каким продуктом / сайтом / услугой они тратят время, чем они занимаются (админка, анализ, предварительная разработка, исправление ошибок, прочее). Если у вас есть около одного FTE в админке, вам, безусловно, нужен админ.
Помимо того, что хороший администратор берет на себя часть работы ваших разработчиков, он также должен повышать ценность услуг, особенно в отношении доступности, безопасности и производительности.
Но имейте в виду, что это болезненный этап в росте вашего бизнеса - не ожидайте, что один человек сможет обеспечить всю административную работу 24 часа в сутки, 7 дней в неделю - некоторая часть работы должна быть разделена, чтобы другие люди имели навыки ( и доступ к резервным носителям, паролям, внешним контактам ....), чтобы прикрыть ее, когда она уйдет в отпуск или найдет работу в другом месте.