сегодня

DevOps-инженер маркетплейса цифровых товаров

ниже рынка на 7,5%
вакансия 300 000 ₽
в среднем 324 200 ₽
Загрузи резюме, чтобы видеть мэтчи с вакансиейЗагрузи резюме, чтобы видеть мэтч с вакой

подготовься к отклику

ai-инструменты

Чтобы адаптировать резюме под вакансию или составить сопроводительное письмо, загрузи резюме

описание

Playerok — это маркетплейс цифровых товаров и услуг. Мы соединяем покупателей и продавцов, берём на себя безопасность сделки и запускаем собственные продукты. Строим масштабный бизнес на быстрорастущем рынке, на стыке гейминга, финтеха и e-commerce. Про эту роль: Эксплуатация кластеров и путь кода в прод: релизы, чарты, пайплайны, наблюдаемость, ограничения на краю, изменения схемы боевой базы.

задачи

  • Обеспечивать повторяемые и безопасные выкатки через единые чарты (Helm) и пайплайны.
  • Отвечать за процедуру отката — она должна быть отрепетирована и проверена до того, как что-то пойдёт не так.
  • Настраивать политики ограничения скорости (per-IP rate limit) на входе, разделять публичный и административный контуры.
  • Грамотно реагировать на внезапные всплески трафика, отличая их от реального отказа сервиса.
  • Настраивать единые стандарты сбора метрик и алертов (PromQL, Alertmanager).
  • Важно, чтобы каждый алерт имел чёткого адресата и инструкцию к действию.
  • Участвовать в развитии внутренней страницы статуса — автоматизация без необходимости дежурного у кнопки.
  • Сопровождать изменения схемы PostgreSQL (без блокировок, с применением expand/contract), отслеживать блокировки и стоимость массовых операций.
  • Управлять Kafka (ребалансы, лаги) и Redis (предотвращать stampede-эффекты на горячих ключах).
  • Важно понимать, как клиент Redis ведёт себя при недоступности.
  • Управлять конфигурацией кластеров через код (ModuleConfig, Ingress, cert-manager с DNS-01).
  • Настраивать сертификаты с чётким ответом на вопросы «когда истекает» и «что делать, если продление не сработало».
  • Если дефект относится к целому классу клиентов или чартов — мы чиним весь класс, а не конкретный случай.
  • Вы будете участвовать в разборе падений (включая код на TypeScript/NestJS) и проверять изменения профиля нагрузки на ревью (например, влияние резолверов без DataLoader, отсутствие пагинации, ретраи без джиттера).

требования

  • Глубокое понимание Linux и сетей: уверенно работаете с ss, strace, tcpdump, dig, systemd.
  • Понимаете разницу между drop и reject и объясняете, почему выбор этих стратегий меняет диагностику инцидента.
  • Опыт с Kubernetes и Helm на уровне повседневного эксплуатанта.
  • Понимаете, почему readyz, завязанный на базу, брокер и кэш, может превратить частичный отказ в полный.
  • Умеете смотреть дифф релиза через рендер (знаете про опасность «молчаливой» подстановки значений из-за опечаток).
  • PostgreSQL как эксплуатант: знаете про блокировки, lock_timeout перед DDL, последствия падения CONCURRENTLY, цену массовых UPDATE.
  • Умеете ревьюить миграции на предмет CREATE INDEX без CONCURRENTLY — и до выката проверять, что будет с записью.
  • Kafka и Redis: понимаете цену ребаланса, умеете работать с лагами, знаете про идемпотентность и чтение сообщений руками.
  • Понимаете проблему stampede при истечении горячего ключа.
  • Боевой TypeScript: готовы читать, дебажить и ревьюить код (писать продакшн-фичи не нужно, это делают команды разработки).
  • Сможете по стеку разобрать ночной инцидент в чужом NestJS.
  • Python обязателен: наш внутренний движок раскатки написан на Python (ansible-runner, ansible-vault через API).
  • Нужно уметь вникнуть в существующий проект по коду и документации и дописать свою часть так, чтобы она прошла ревью.
  • CI/CD (GitHub Actions): опыт с reusable workflows, управлением артефактами и секретами.
  • Умеете объяснить, из чего складывается разница между «CI зелёный» и «в проде работает».
  • Наблюдаемость: различаете метрику, лог и трейс по назначению.
  • Пишете PromQL-запросы вручную, настраиваете правила алертов с адресатом и действием.
  • Секреты и безопасность: опыт работы с ansible-vault и шифрованными значениями в werf, знаете процедуру ротации и что делать, если секреты уже утекли в git.
  • Ответственность и связность.
  • О проблемах и сорванных сроках сообщаете сами, до того как спросят.
  • Задача не встаёт на первом препятствии в ожидании подсказки.
  • После своей ошибки остаётесь в разборе — уронить прод может каждый, но исчезнуть после этого непростительно.
  • Будет плюсом: Опыт разработки статус-страниц и работы с SLO (сигналы деградации, объявление инцидентов); Глубокое знание werf (не только чтение werf.yaml), опыт с Deckhouse, Terraform; Работа с Elasticsearch (логи), Sentry как код, диагностика ребалансирующейся Kafka на живом трафике; Тюнинг PostgreSQL и опыт онлайн-изменения схемы на высоконагруженной баз

условия

  • Удаленный формат сотрудничества с редкими встречами в Москве (местонахождение в Москве очень желательно).
  • 300 000 руб — стартовая вилка, итоговая сумма обсуждается по опыту.
  • Возможность выбрать форму сотрудничества и оплаты (все налоги — наша забота).
  • Онбординг-квест — не бросим в бой без подготовки, введем в курс дела и подключим к команде.
  • Занятость 5/2 с 8-часовым рабочим днем.
  • Команда профи— работаешь с инициативными и увлеченными коллегами.
  • Пауза на восстановление — «перезагрузиться» можно в оплачиваемом отпуске или на больничном.

Если просят выйти из iCloud, прислать код из SMS, запустить или установить что-то, перевести деньги — не соглашайся: это мошенничество.

Если просят выйти из iCloud, прислать код из SMS, запустить или установить что-то, перевести деньги — не соглашайся: это мошенничество.