Инженер по надежности сайтов (Site Reliability Engineer)
Команда инноваций Hitachi Solutions
Это штатная индивидуальная роль в нашем продуктовом отделе для опытного инженера по надежности сайтов, ориентированного на облачные операции, надежность развертывания, автоматизацию инфраструктуры, наблюдаемость и поддержку производства для клиентских SaaS-приложений и сред платформ данных. Это не руководящая должность. Позиция предназначена для инженера, который может выполнять практические обязанности SRE в рамках инфраструктуры Azure, развертываний на базе Kubernetes, конвейеров CI/CD, Terraform и других инструментов Infrastructure as Code, наблюдаемости, реагирования на инциденты, поддержки выпусков и обработки клиентских эскалаций.
Сотрудники на этой должности будут поддерживать проектирование, разработку, развертывание, устранение неполадок и администрирование продуктовых сред на базе Azure, включая Azure Kubernetes Service, службы Azure PaaS и IaaS, Azure Key Vault, учетные записи хранения Azure, Azure Data Factory, Azure Databricks, GitHub Actions, конвейеры Azure DevOps, Terraform, Helm, шаблоны развертывания GitOps, а также настройку клиентских клиентов. Роль будет тесно взаимодействовать с командами разработки приложений, QA, доставки, безопасности, облачной разработки и эксплуатации для поддержания стабильных, повторяемых и хорошо документированных процессов развертывания и поддержки в средах разработки, QA, тестирования и производства.
Идеальный кандидат продемонстрирует практический опыт, аналогичный текущим навыкам SRE, поддержку SRE уровня 1 и 2, опыт работы с Terraform, AKS, GitHub, Azure DevOps, Key Vault, RBAC, устранение неполадок при развертывании у клиентов, документирование README и инструкций, управление секретами CI/CD, настройку доступа к средам, операционный мониторинг, автоматизацию выпусков и поддержку эскалаций для производственных развертываний.
Обязанности
- Поддержка надежности: Поддержка доступности, задержки, производительности, надежности, эффективности, наблюдаемости, реагирования на инциденты, экстренного реагирования, планирования мощностей, SLO, SLI, бюджеты ошибок и операционные панели для производственных и предпроизводственных сред.
- Устранение неполадок: Анализ, устранение неполадок и решение операционных проблем, влияющих на надежность развертывания, клиентские среды, стабильность платформы, время безотказной работы служб и определенные SLO.
- Поддержание стабильности: Поддержание стабильности сайта, производительности, надежности и времени безотказной работы производственных сред SaaS и платформ данных, размещенных в Azure.
- Эксплуатация производственных сред: Поддержка высокодоступных производственных сред 24x7 для платформ SaaS или поставщиков облачных услуг.
- Поддержка выпусков: Поддержка автоматизированных процессов выпуска, исправлений и развертывания у клиентов в нескольких средах.
- Улучшение CI/CD: Выполнение и улучшение конвейеров CI/CD с использованием Azure DevOps, GitHub Actions, YAML build pipelines, операций Git, стратегий ветвления, pull requests, release pipelines и утверждений развертывания.
- Автоматизация инфраструктуры: Внедрение, поддержка и устранение неполадок инфраструктуры как кода с использованием Terraform, Bicep, ARM-шаблонов, Helm, манифестов Kubernetes и связанных технологий.
- Управление Kubernetes: Поддержка AKS, Kubernetes, Helm, контейнерных нагрузок, учетных записей служб Kubernetes, шаблонов развертывания GitOps, Flux, Argo CD и настройки среды.
- Поддержка идентификации и доступа: Помощь в решении проблем с Key Vault, RBAC, service principal, идентификацией, разрешениями, политикой доступа, ролью Secrets Officer, секретами CI/CD и настройкой клиентских клиентов, влияющих на успех развертывания.
- Управление секретами: Поддержка управления секретами CI/CD и шаблонов автоматизации, которые сокращают ручные обновления переменных конвейера, секретов развертывания и конфигурации, специфичной для среды.
- Восстановление служб: Выполнение поддержки производства, специфичной для приложений, управление инцидентами, управление изменениями, управление проблемами, восстановление служб и анализ первопричин.
- Лидирование реагирования на инциденты: Участие в анализе первопричин инцидентов, восстановлении служб, скоординированном реагировании на сбои и мероприятиях по управлению инцидентами во время сбоев по мере необходимости.
- Обработка эскалаций: Обработка входящих запросов на поддержку SRE, эскалаций Web Support и проблем с развертыванием у клиентов, передача их соответствующим внутренним командам по мере необходимости и решение проблем непосредственно в рамках компетенции.
- Проверка готовности: Поддержка готовности к выпуску путем проверки шагов развертывания, устранения проблем с конфигурацией, обзора инструкций, а также координации с командами QA, разработки, доставки, безопасности и эксплуатации.
- Документирование операций: Разработка, поддержка и улучшение технической документации, включая спецификации дизайна, руководства пользователя, файлы README, инструкции, процедуры устранения неполадок, руководства по поддержке и рекомендации по лучшим практикам.
- Улучшение готовности: Улучшение операционной готовности путем выявления повторяющихся шаблонов сбоев и рекомендации автоматизации, документации, обновлений конфигурации или улучшений процессов.
- Развитие наблюдаемости: Разработка и улучшение шаблонов наблюдаемости для нескольких сред на основе существующих систем, включая журналы, метрики, трассировки, панели мониторинга и анализ тенденций мощностей.
- Оптимизация производительности: Активный поиск возможностей для улучшения доступности и производительности системы путем применения знаний, полученных при мониторинге, наблюдаемости, обзорах инцидентов и поддержке производства.
- Выявление улучшений: Выявление улучшений надежности, производительности, доступности и операционной деятельности для архитектуры продукта с использованием основанного на данных подхода.
- Кросс-функциональное взаимодействие: Взаимодействие с менеджерами продуктов, инженерами-программистами, инженерами QA, дизайнерами, командами доставки, командами безопасности и командами облачной разработки для поддержки эффективного выполнения проектов.
- Участие в Agile: Участие в Agile-церемониях, включая планирование спринта, ежедневные совещания, ретроспективы, обзор бэклога и обсуждения кросс-под-координации.
- Поддержка заинтересованных сторон: Взаимодействие с клиентами и внутренними заинтересованными сторонами для понимания потребностей, сбора отзывов, оказания технической поддержки и обеспечения успешных результатов развертывания.
- Постоянное обучение: Поддержание актуальных знаний о шаблонах развертывания Azure, Kubernetes, Terraform, Databricks, CI/CD, наблюдаемости, облачных сетях, безопасности и лучших практиках облачных операций.
Квалификация и навыки
- Опыт SRE: Практический опыт работы инженером по надежности сайтов, инженером DevOps, инженером по облачным операциям, инженером платформы или на аналогичной должности, связанной с поддержкой производственных сред SaaS или облачных сред.
- Поддержка производства: Значительный опыт поддержки высокодоступных производственных сред 24x7 для платформ SaaS, продуктов или поставщиков облачных услуг.
- Инфраструктура Azure: Глубокий опыт работы с инфраструктурой Azure, включая Azure Kubernetes Service, Azure Key Vault, Azure Data Factory, Azure Databricks, Azure Storage Accounts, service principals, RBAC, сетевые концепции, ресурсы Azure PaaS и ресурсы Azure IaaS.
- Автоматизация Terraform: Практический опыт автоматизации инфраструктуры на базе Terraform, включая устранение неполадок с состоянием, отклонения ресурсов, сбои развертывания, проблемы с конфигурацией среды и подготовку инфраструктуры.
- Инфраструктура как код: Опыт работы с инструментами и шаблонами инфраструктуры как кода, такими как Terraform, Bicep, ARM, Helm или аналогичными технологиями.
- Автоматизация CI/CD: Опыт работы с автоматизацией CI/CD и выпусков с использованием Azure DevOps, GitHub Actions, YAML build pipelines, операций Git, pull requests, стратегий ветвления, release pipelines и утверждений развертывания.
- Эксплуатация Kubernetes: Рабочее знание Kubernetes, Helm, контейнерных архитектур, операций AKS, учетных записей служб Kubernetes, шаблонов развертывания контейнеров и устранения неполадок, связанных с развертыванием кластера.
- Практика GitOps: Опыт применения подходов к развертыванию GitOps с использованием таких инструментов, как Flux, Argo CD или аналогичных технологий.
- Поддержка выпусков: Опыт поддержки развертываний у клиентов, развертывания исправлений, продвижения сред, обновлений QA, тестирования, производства и координации выпусков.
- Инструменты наблюдаемости: Опыт работы с инструментами наблюдаемости, мониторинга, ведения журналов, трассировки, панелями мониторинга и APM, такими как Datadog, Application Insights, Azure Monitor, Prometheus, Grafana, Splunk, Elastic, Sentry, Dynatrace, New Relic, Nagios, Zabbix или аналогичными платформами.
- Планирование наблюдаемости: Опыт внедрения планов наблюдаемости, охватывающих журналы, метрики, трассировки, оповещения, панели мониторинга и процессы обзора операций.
- Устранение неполадок: Способность устранять сложные проблемы с развертыванием, разрешениями, сетями, секретами, RBAC, идентификацией, конфигурацией и средами в незнакомых технических средах.
- Знание платформ данных: Знание Azure Databricks, Data Factory, шаблонов развертывания платформ данных, ACL Data Lake, Synapse, компонентов данных Spark, Unity Catalog или аналогичных компонентов экосистемы данных является предпочтительным.
- Скриптинг и автоматизация: Рабочее знание скриптинга и автоматизации с использованием Bash, Python, PowerShell, Go или аналогичных инструментов.
- Системы контроля версий: Отличное владение системами контроля версий Git, включая стратегии ветвления, политики, pull requests, процессы слияния и тегирование выпусков.
- Системные знания: Глубокое понимание Linux, Windows, разработки программного обеспечения, систем, сетей, облачных концепций и моделей операционной поддержки.
- Облачные сети: Знание облачных сетевых и элементов безопасности, таких как VNets, peering, firewalls, private endpoints, private DNS zones, NAT, service endpoints и связанных элементов управления доступом.
- Готовность среды: Опыт работы с автоматизацией выпусков, системным администрированием, управлением конфигурацией, проверкой развертывания и готовностью среды.
- Техническая документация: Способность создавать и поддерживать четкую техническую документацию, инструкции, руководства по развертыванию, процедуры поддержки, файлы README и документацию по лучшим практикам.
- Коммуникация и сотрудничество: Сильные аналитические навыки, навыки устранения неполадок, коммуникации и сотрудничества, с возможностью работать с командами разработки, QA, доставки, безопасности, эксплуатации и клиентскими командами.
- Самостоятельное выполнение: Способность самостоятельно выполнять назначенную работу, зная, когда следует эскалировать решения, касающиеся архитектуры, влияния на клиентов, безопасности или производственных рисков.
- Гибкость развертывания: Готовность поддерживать развертывания после окончания рабочего дня или в согласованные часовые пояса, когда это требуется для клиентских или производственных нужд.
Дополнительные навыки (желательно)
- Развертывание продуктов: Опыт поддержки развертываний продуктов данных, SaaS или продуктов типа Azure Marketplace.
- Автоматизация Databricks: Опыт автоматизации развертывания Databricks, продвижения конфигураций, ноутбуков, секретов, рабочих процессов данных и продвижения клиентских сред.
- Автоматизация Microsoft Fabric и операции с данными
- Опыт работы с Dynamics 365
- Оркестрация GitOps: Знание практик GitOps, Flux, Argo CD, Helm charts, Terraform controllers и оркестрации развертываний на базе Kubernetes.
- Идентификация и безопасность Azure: Опыт работы с разрешениями service principal, шаблонами идентификации и безопасности Azure в отношении Entra ID и Security Token Service.
- Поддержка клиентов: Опыт технической поддержки клиентов, обработки эскалаций при развертывании, маршрутизации эскалаций Web Support и процессов обработки заявок на внутреннюю поддержку SRE.
- Облачные операции: Знание операций Docker, REST API, API развертывания SaaS, сетевых технологий Azure, private endpoints, private DNS zones, firewalls, NAT и практик облачной безопасности.
- Опыт MLOps: Знакомство с MLflow, технологиями конвейеров MLOps, конвейерами развертывания платформ ИИ или операционной поддержкой платформ науки о данных является плюсом.
- Развертывание баз данных: Опыт работы с конвейерами развертывания баз данных, такими как DACPACs или аналогичными технологиями, является плюсом.
- Корпоративная аутентификация: Опыт работы с SSO, федеративной безопасностью и шаблонами корпоративной аутентификации является плюсом.
- Фреймворки тестирования: Знакомство с фреймворками модульного тестирования и мокирования, такими как unittest, MSTest, NUnit, RhinoMocks, Moq, NSubstitute или аналогичными инструментами, является плюсом.
- Инструменты CI/CD: Предыдущий опыт работы с Jenkins или аналогичными технологиями CI/CD является приемлемым.
- Сертификаты: Необязательные сертификаты включают Microsoft Certified: Azure Solutions Architect Expert, Microsoft Certified: DevOps Engineer Expert, Certified Kubernetes Application Developer, Certified Kubernetes Administrator.
Практики, принципы и методы
- Инженер по надежности сайтов (Site Reliability Engineering)
- Стратегия инструментирования и инженерия наблюдаемости
- Управление инцидентами, экстренное реагирование, анализ первопричин и восстановление служб
- SLO, SLI, бюджеты ошибок, операционные панели и отчетность по надежности
- Автоматизация CI/CD и выпусков
- Инфраструктура как код с использованием Terraform, Bicep, ARM, Helm и сопутствующих инструментов
- Kubernetes, AKS, контейнерные нагрузки и GitOps
- Идентификация Azure, RBAC, Key Vault, service principals и управление секретами
- Мониторинг, наблюдаемость, ведение журналов, трассировка, оповещения и анализ мощностей
- Коммуникация по выпускам, координация развертываний и кросс-командное взаимодействие
- Безопасность, соответствие требованиям и управление доступом к производству
- Концепции Test Driven Development в контексте CI/CD и DevOps
- Документация по развертыванию, инструкции и управление операционными знаниями
- Agile-доставка, выполнение спринтов и кросс-функциональное взаимодействие
- Приоритет автоматизации для снижения рутинной работы и повышения согласованности развертываний