Playerok - это маркетплейс цифровых товаров и услуг. Мы соединяем покупателей и продавцов, берём на себя безопасность сделки и запускаем собственные продукты. Строим масштабный бизнес на быстрорастущем рынке, на стыке гейминга, финтеха и e-commerce.
Инфраструктуре несколько лет, она под нагрузкой, есть технический долг - это не Greenfield. Мы ищем инженера (middle/senior) с опытом коммерческой эксплуатации от 3 лет, который умеет принимать самостоятельные решения и готов отвечать за них в проде.
Чем придется заниматься:
-
Воспроизводимая инфраструктура как код Всё, что касается окружений, описываем в коде (Terraform, Ansible, YAML-спеки). Твоя задача - довести контуры до состояния, когда любое окружение можно поднять с нуля одной командой.
-
Работа с Terraform Управление состоянием, импорт созданных вручную ресурсов, перемещение ресурсов без пересоздания (moved), использование for_each вместо копипаста модулей. У нас версия Terraform 1.5+.
-
Фабрика стендов Описания стендов в YAML → автоматическое развёртывание ресурсов в облаке. Валидация описаний до применения, синхронизация стендов с продакшеном.
-
Второе облако (Selectel) Там находятся внутренние сервисы компании (SSO, VPN-оверлей, бастион-хосты, dev/QA-стенды, раннеры). Нужно будет настраивать сеть, доступы и всю сопутствующую инфраструктуру.
-
Управление Ansible У нас парк из нескольких десятков ролей (PostgreSQL, Kafka, Elasticsearch, ClickHouse, Sentry, VictoriaMetrics, GitLab, Netbird, Teleport и др.). Ожидаем, что ты умеешь писать идемпотентные роли, понимаешь приоритеты переменных, используешь --check и --diff, не злоупотребляешь shell без проверки изменений.
-
Развитие внутреннего движка раскатки на Python Это наш самописный инструмент, который оркестрирует Terraform и Ansible через Python API (ansible-runner, ansible-vault). Нужно будет вникать в существующий код, дописывать новые фичи, поддерживать тесты и CI.
-
Аналитическое хранилище и CDC-потоки Принять под эксплуатацию аналитику, описать её кодом, настроить доступы, бэкапы и оркестрацию.
-
Бэкапы и восстановление Проектирование стратегии бэкапов с чёткими RPO/RTO. Главный принцип: бэкап считается рабочим только после успешного восстановления и проверки данных.
-
Учёт затрат в облаках Настроить тегирование, раскладку расходов по проектам и владельцам, чтобы на любой вопрос «сколько стоит этот проект» был готовый ответ.
-
Эксплуатационная рутина Ротация логов, мониторинг дисков, репликационных лагов, блокировок БД, рост баз - постоянный контроль состояния.
-
Доступы и VPN Выдача и отзыв доступа к внутренним ресурсам по процедуре.
-
Инфраструктурный код в монорепозитории Централизованное хранение секретов - нужно будет спроектировать и поддерживать.
Что мы ждём от кандидата
-
Опыт работы с Terraform на уровне состояния - понимаешь, чем import отличается от пересоздания, зачем нужен moved, как работает for_each при смене ключа, что такое ForceNew в плане. Умеешь валидировать сложные фабрики на fileset/try.
-
Глубокое знание Ansible - приоритеты переменных, работа с --check/--diff, использование --limit для страховки. Отличаешь идемпотентный модуль от небезопасного shell. Быстро разбираешься в чужих ролях и видишь, что сломается на втором прогоне.
-
Python - обязательный навык. Наш движок раскатки написан на Python, поэтому нужна способность вникать в чужой код, разбираться в документации, писать свои части с тестами и проходить ревью.
-
Linux и сети - уверенное владение ss, strace, tcpdump, dig, systemd, работа с лимитами, дисками, маршрутами. Понимаешь разницу между drop и reject в iptables и как это влияет на диагностику.
-
PostgreSQL как эксплуатант - знаешь про блокировки, очередь ожидания, lock_timeout перед DDL, последствия упавшего CONCURRENTLY, цену массовых UPDATE без батчей. Умеешь оценивать миграции (например, CREATE INDEX без CONCURRENTLY на горячей таблице) и проверять их до прода.
-
Kubernetes и Helm - не в роли администратора кластеров, но понимаешь, как работают чарты, умеешь рендерить helm template, разбираешься в каскадах values по окружениям.
-
Kafka и Redis - понимаешь цену ребаланса, лаг, идемпотентность обработки, умеешь читать сообщения из топика вручную. Знаешь про проблемы с горячими ключами и поведение клиента Redis при недоступности.
-
TypeScript - уметь читать и дебажить, чтобы ревьюить миграции или разбирать инциденты в коде разработки (писать самому не нужно).
-
Наблюдаемость и бэкапы - работа с метриками, логами, трейсами, уверенное составление PromQL, проектирование алертов с действиями. Бэкапы - в терминах RPO/RTO и проверенного восстановления.
-
Секреты - работа с ansible-vault и шифрованными значениями, ротация, что делать при утечке в git.
-
Самоорганизация и коммуникация - умеешь сообщать о проблемах и срыве сроков заранее, не ждёшь подсказки на каждом шагу, после ошибки участвуешь в разборе, не исчезаешь. Инциденты случаются, мы разбираем их вместе.
Будет плюсом
-
Опыт с ClickHouse (бэкапы, Keeper, TTL, обновления между мажорами).
-
Работа с аналитическим контуром (Airflow, dbt, CDC, оркестрация).
-
Умение поднимать окружение с чистого облачного аккаунта целиком и доказывать это учениями.
-
Опыт учёта облачных расходов (теги, проекты, утилизация).
-
Знание werf (сборка, рендер, секреты).
-
Администрирование самохоста GitLab, Sentry, Elasticsearch, Netbird, Teleport или аналогичных решений.
Что предлагаем
-
Удаленный формат сотрудничества с редкими встречами в Москве (местонахождение в Москве очень желательно).
-
300 000 руб - стартовая вилка, итоговая сумма обсуждается по опыту.
-
Возможность выбрать форму сотрудничества и оплаты (все налоги - наша забота).
-
Онбординг-квест - не бросим в бой без подготовки, введем в курс дела и подключим к команде.
-
Занятость 5/2 с 8-часовым рабочим днем.
-
Команда профи- работаешь с инициативными и увлеченными коллегами.
-
Пауза на восстановление - «перезагрузиться» можно в оплачиваемом отпуске или на больничном.
Откликайся на вакансию - это первый шаг к тому, чтобы стать частью команды, которая меняет правила игры. Ваш ход!

