Основным процессом, который мы стараемся отладить с разработчиками в первую очередь является процесс настройки окружений и автоматического процесса CI/CD - выкладки изменений из dev окружения в test, из stage в production. На каждом этапе осуществляются как технические, так и организационные мероприятия, которые позволяют процессу релиза протекать плавно и без сбоев.
Другой услугой, которой пользуются практически все разработчики - это описание инфраструктуры кодом. Только когда инфраструктура вашего приложения описана кодом, вы можете говорить о действительно надежном и безопасном релизе, который можно «откатить». (На самом деле это не совсем так, потому что единственное, что не хранится в репозиториях – это ваши данные. Если вы внедрили изменения в продакшн и ваши данные изменились в соответствии с этими изменениями, то откатить назад одним нажатием кнопки, возможно, не получится. Но это отдельная тема, которой мы с вами можем коснуться при эксплуатации вашего проекта).
Если в команде разработки нет культуры DevOps, то велик риск, что проблемы качества сервисов, которые изготовляет данная команда будет падать.
Например, часто разработчики не понимают основ безопасности серверных систем. Оставляют открытыми порты в интернет, делают простые пароли, не задумываеются о комплексной безопасности внедряемых решений.
Также, системы ручного развертывания не обеспечивают повторяемость, идемпотентность и стабильность релизов, не говоря об их частоте и качестве тестирования.