Основной функциональной обязанностью DevOps инженера является участие в процессах разработки и поддержки микросервисной архитектуры систем, продуктов и решений компании DECK. Работа в офисе в г. Казань.
Требования к участию в процессе разработки и тестирования
Совместная работа с командой разработки продуктов является основной функциональной обязанностью DevOps инженера. В рамках этого процесса выполняется решение следующих задач:
- разработка, тестирование и принятие инфраструктурных решений для продуктов компании
- взаимодействие с командами разработки приложения
- создание, поддержка и постоянное улучшение процессов CI/CD (Gitlab)
- автоматизация процессов управления конфигурациями
- разработка скриптов автоматизации сборки и тестирования (bash, Python,GoLang)
- подготовка, сборка, публикация docker-образов
- настройка виртуальных серверов как в собственном ЦОД, так и в публичных облаках
- автоматизация сборки образов, при помощи которых происходит доставка продуктов конечным Заказчикам (Packer)
- участие в процессе принятия архитектурных решений, которые касаются системных компонент продуктов
- проведение исследований, которые касаются оптимальных способов решения инфраструктурных задач
- участие в процессе разработке функций системы, которые касаются процессов управления версиями (upgrade/downgrade) и создания резервных копий (backup/restore)
Требования к техническим знаниям и навыкам соискателя
DevOps инженеру требуются глубокие знания в следующих предметных областях:
- понимание жизненного цикла и методологии DevOps
- знание Linux, опыт администрирования и автоматизации рутинных задач при помощи скриптов и средств разработки (Bash, Python, GoLang)
- опыт работы с инструментами GitLab
- опыт создания, отладки и документирования скриптов на основе Ansible
- опыт работы с Docker/CRI-O/сontainerd
- опыт создания и поддержки кластеров под управлением K8S
- опыт с настройкой систем балансировки нагрузки на базе NGINX
- разработка процессов сборки и запуска PHP/Node.JS/GoLang приложений
- администрирование и управление отказоустойчивыми и кластерными конфигурациями серверов БД PostgreSQL (Patroni)/ClickHouse
- управление и настройка хранилищ для ключевой информации ETCD, Zookeeper
- автоматизация сборки образов при помощи Packer
- навык создания технической документации
Плюсом будет следующее:
- глубокие знания сетевого стека операционной системы Linux, включая механизмы сетевой изоляции, которые используют контейнеры
- знание работы CNI-плагина Cilium для K8S
- опыт работы с Docker Swarm
- хорошее понимание порядка обработки сетевых пакетов стеком Linux
- опыт в администрировании правил iptables на Linux-хостах
- опыт организации сетевых подключений в отечественных публичных облаках
Требования к опыту работы соискателя
- опыт работы DevOps инженером от 2-х лет является обязательным
- опыт работы с K8S, CNI-плагином Calico, Postgres, Clickhouse, Zookeeper является обязательным
Требования к soft-skills соискателя
- умение доступным языком объяснять принципы работы сложных систем
- системное мышление
- стрессоустойчивость
- инициативность
- вовлеченность