Существует некоторая неопределенность с тем, кого именно считать инженером эксплуатационной надежности (site reliability engineer, SRE) — специалистов, которые занимаются непосредственной работой с железом или настройкой использующегося на бэкенде софта? Вице-президент по технологиям в Google Бен Трейнор (Ben Treynor) предлагает такое определение этой профессии: «Она возникает тогда, когда вы просите разработчика ПО спроектировать операционные функции». То есть, помимо автоматизации процессов, вроде конфигурирования серверов, инженеры по надежности также отвечают за скорость работы и доступность инфраструктуры.
SRE-инженеры сегодня крайне востребованы, и команда подразделения Talent ресурса StackOverflow рассказывает о том, как нанять таких инженеров.
Где их искать
Чаще всего разработчики не проводят много времени в традиционных социальных сетях, и SRE-инженеры не исключение. Поэтому для их поиска следует разобраться с тем, какие ресурсы для общения привлекают этих специалистов.
В среде SRE-инженеров популярны форумы, вроде Cisco Learning Network, Spiceworks и AnandTech — там они обмениваются опытом и демонстрируют свои знания. Кроме того, одни из самых авторитетных ресурсов по теме — сообщества Server Fault и Network Engineering на Stack Overflow.
Перечисленные ресурсы могут стать входной точкой для первого контакта с SRE-инженерами, но важно помнить, что при общении с ними следует не публиковать обсуждения своих вакансий, а задавать вопросы в тематических обсуждениях. Специалисты любят, когда кто-то проявляет интерес к их работе, поэтому хороший диалог сегодня может в будущем сыграть ключевую роль при рассмотрении вариантов продолжения карьеры.
В чем главные вызовы профессии
Рекрутеру нет смысла досконально разбираться во всех деталях работы SRE-инженера, но для нормального общения со специалистом потребуется хотя бы минимальное понимание того, что он вообще делает на работе.
Вот, из каких задач состоит день SRE-инженера:
- Создание и поддержание документации. Каждая секунда простоя инфраструктуры приводит к реальным финансовым потерям для бизнеса. Чтобы справляться с возникающими проблемами максимально быстро SRE-инженеры создают так называемый ранбук (runbook), то есть инструкцию с перечислением действий, которые надо выполнить, и указанием систем для проверки в случае сбоев.
- Оптимизация на различных уровнях технологического стека. По словам директора по технологиям Dropbox Эндрю Фонга (Andrew Fong), прелесть профессии SRE-инженера заключается не только в написании кода, но и в продумывании всего устройства дата-центра и развертывания оборудования в нем. «Вам приходится работать с различными уровнями стека технологий, с которыми обычно не соприкасаются разработчики софта», — добавляет он.
- Выбор и внедрение новых технологий. Работа инженеров эксплуатационной надежности влияет на всю компанию целиком. Поэтому специалисты вынуждены стратегически подходить к анализу текущих процессов при рассмотрении вопроса об использовании каких-то новых технологий.
Что важно для инженера при выборе работы
Когда дело доходит до рассмотрения вариантов трудоустройства, всех технических кандидатов интересует ряд определенных вещей. Однако для рекрутера важно еще и понимать предпочтения именно SRE-инженеров. Эксперт по эксплуатационной надежности Stack Overflow Марк Хендерсон (Mark Henderson) рассказал, что для него важно при рассмотрении карьерных предложений.
- Открытость компании к переменам. По словам Хендерсона, один из главных плюсов работы SRE-инженера — возможность изучения новых технологий. «Работать с устоявшимся и надежным технологическим стеком удобно, но если мне кажется, что компания в принципе противится переменам, то сразу ясно, что в будущем будет возникать много ненужных споров», — говорит он.
- Отношения между разработчиками и эксплуатационными инженерами. «Специалисту по SRE необходимо доверие со стороны разработчиков, так работа становится гораздо эффективнее, если же этого нет, все значительно усложняется», — говорит он.
- Реалистичные ожидания по доступности инженера. По словам Хендерсона, иногда все SRE-инженеры сталкиваются с необходимостью бросить все дела и бежать к компьютеру, чтобы разбираться с внезапно случившимся сбоем — даже в свой выходной. При этом, никому не хочется постоянно находиться в ожидании алерта о проблемах: «Конечно, никто не ждет, что проблем совсем не будет, но лично я надеюсь, что вещи в принципе будут под контролем, и в мой выходной разобраться с неполадками смогут коллеги — те же разработчики».