Skip to content

Вопросы на собеседовании: Платформенный инженер

100 реальных вопросов с образцовыми ответами и пояснениями для уровня Senior Platform-инженер.

Смотреть пример резюме: Платформенный инженер

Тренировка флешкарточками

Интервальное повторение · Hunter Pass

Вопросы

idpsre

Я включаю возможность в платформу, когда нескольким командам нужен одинаковый безопасный и повторяемый процесс, для которого платформа может дать стабильный контракт.

  • Платформа отвечает за общие интерфейсы создания сервиса, развёртывания, идентификации и стандартной наблюдаемости, но не за бизнес-настройки каждого сервиса.
  • Продуктовая команда сохраняет доменные решения и может выйти со стандартного пути через документированное исключение, если её нагрузка действительно отличается.
  • Я проверяю границу по объёму поддержки и данным о внедрении; потребность одной команды без перспективы переиспользования обычно остаётся локальной.

Зачем это спрашивают: Интервьюер проверяет, рассматривает ли кандидат платформу как ограниченный внутренний продукт, а не как набор всех инфраструктурных работ.

self-serviceapi

Хороший платформенный API выражает намерение разработчика, возвращает наблюдаемый статус и скрывает детали провайдера, не скрывая важных ограничений.

  • Я предпочитаю небольшой декларативный контракт с размером сервиса и классом данных вместо десятков облачных параметров.
  • Валидация должна завершаться до создания ресурсов, показывать ошибочное поле и давать ссылку на поддерживаемые значения.
  • Долгим операциям нужны ID операции, ключ идемпотентности, условия статуса и безопасный повтор, а не синхронный тайм-аут.

Зачем это спрашивают: Интервьюер хочет увидеть практичный дизайн API, который делает самообслуживание предсказуемым и сохраняет полезные границы платформы.

Я возьму в ответственность одну ограниченную возможность, определю её пользователей и критерий успеха, а затем буду улучшать её по наблюдаемым затруднениям.

  • Для модуля создания базы данных я могу отслеживать долю успешных запусков через самообслуживание, медианное время получения базы и число обращений в поддержку на 20 созданных баз.
  • Перед изменением контракта я поговорю с двумя или тремя командами-потребителями и опубликую короткий план сохранения совместимости.
  • Запросы за границами возможности становятся основанием для точки расширения или явного отказа от функции, а не поводом автоматически расширять объём работ.

Зачем это спрашивают: Интервьюер оценивает, способен ли кандидат отвечать за переиспользуемую возможность с измеримым результатом для внутренних клиентов.

ownershipbackstage

Я использую Component для развёртываемых сервисов, API и Resource для их контрактов и зависимостей, а затем связываю их с System, Domain, Group и User.

  • Владельцем сущности должна быть реальная Group с маршрутом дежурства или поддержки, а не произвольное имя команды.
  • Связи providesApi, consumesApi, dependsOn и partOf позволяют оценивать влияние без копирования списков зависимостей в описание.
  • Я делаю lifecycle и границы систем достаточно простыми, чтобы владельцы сервисов поддерживали их обычными запросами на слияние.

Зачем это спрашивают: Интервьюер проверяет практическое понимание модели каталога Backstage и ответственного владения.

backstageconcurrency

Locations указывают источники метаданных, processors преобразуют или проверяют сущности, а annotations добавляют ссылки для конкретных интеграций.

  • Я храню catalog-info.yaml рядом с сервисом, чтобы изменения метаданных проходили ту же проверку, что и код.
  • Аннотация GitHub связывает плагины с репозиторием, а аннотации TechDocs и Kubernetes подключают документацию и представление работающей нагрузки.
  • Собственные processors должны приводить к единому виду только устойчивые соглашения компании и явно сообщать об отклонённых сущностях, а не молча исправлять неверные метаданные.

Зачем это спрашивают: Интервьюер хочет увидеть понимание всего пути загрузки каталога, а не только умение отредактировать пример YAML.

backstagehttpdesign

Я делаю шаблон тонким слоем оркестрации, который собирает намерение, вызывает протестированные actions и оставляет созданный сервис в проверяемом состоянии.

  • Параметры запрашивают владельца, систему, среду выполнения, класс данных и размер, а имена репозитория и пространства имён формируются единообразно.
  • Actions могут создать репозиторий, отрендерить каркас, зарегистрировать сущность каталога и открыть запрос на слияние с GitOps-конфигурацией и явными выходными данными каждого шага.
  • Итоговая страница даёт ссылки на репозиторий, запрос развёртывания, документацию и инструкцию по откату или очистке при сбое позднего шага.

Зачем это спрашивают: Интервьюер оценивает, способен ли кандидат построить удобный и восстанавливаемый процесс создания сервиса.

backstage

Я добавляю плагин, только когда портал может упростить повторяющуюся задачу разработчика через поддерживаемый контракт серверной части.

  • Клиентский плагин не должен получать облачные учетные данные; серверный плагин выполняет авторизованные вызовы и возвращает только нужные данные.
  • Правила доступа используют владение в каталоге и членство в группах, чтобы пользователь не мог управлять ресурсом другой команды заменой URL.
  • Я определяю состояния загрузки, отсутствия данных, запрета и отказа зависимости, потому что внутренние API доступны не всегда.

Зачем это спрашивают: Интервьюер проверяет границы плагина, авторизацию и пользовательский опыт при отказах.

documentation

Я храню документацию в репозитории владельца, собираю её в CI и показываю свежесть и владельца в каталоге.

  • Шаблон сервиса создаёт минимальную структуру MkDocs с локальным запуском, деплоем, зависимостями и контактом поддержки.
  • Публикация из CI не требует выдавать Backstage широкие права на репозитории и создаёт тот же артефакт, который разработчики проверяют локально.
  • Карточка оценки может отмечать отсутствующие или устаревшие инструкции эксплуатации, но содержимое определяет команда-владелец и проверяет его вместе с кодом.

Зачем это спрашивают: Интервьюер хочет увидеть практический процесс TechDocs с чётким владением и безопасной публикацией.

designbackstage

Я оцениваю небольшой набор выполнимых требований платформы и для каждого результата показываю подтверждение и следующий шаг.

  • Проверка готовности к production может подтверждать владельца, ссылку на SLO, requests ресурсов и одобренный процесс развёртывания по достоверным источникам.
  • Проверки должны отличать неизвестный результат от провала, чтобы сбой интеграции не сделал все сервисы несоответствующими.
  • Сначала я показываю карточка оценки командам без публичного рейтинга и измеряю исправления, прежде чем рассматривать блокировку релиза.

Зачем это спрашивают: Интервьюер оценивает, помогает ли карточка оценки улучшать сервисы, не превращаясь в произвольный формальный рейтинг.

golden-path

Стандартный путь должен давать кратчайший поддерживаемый путь от намерения создать сервис до работающей, наблюдаемой нагрузки с владельцем.

  • Он может объединять шаблон репозитория, переиспользуемый процесс CI, конфигурацию развёртывания, идентичность рабочей нагрузки, стандартные панели и регистрацию в каталоге.
  • Стандартные настройки кодируют общие требования безопасности, но оставляют ограниченный выбор версии среды выполнения, размера сервиса и необходимости базы данных.
  • Путь включает обновление и поддержку; сгенерированный код, забытый после первого дня, остаётся лишь стартовым шаблоном.

Зачем это спрашивают: Интервьюер проверяет понимание стандартного пути как поддерживаемого жизненного цикла, а не только генерации кода.

golden-path

Я версионирую каждый потребляемый контракт и отделяю версию создания шаблона от версий поддерживаемых модулей и процессов.

  • Новые репозитории фиксируют выпущенный набор шаблона, например 2.3, а переиспользуемые процессы и Terraform-модули ссылаются на явную основную или дополнительную версию.
  • Журнал изменений отмечает обязательные миграции, а тесты совместимости рендерят характерные фикстуры сервисов на предлагаемой версии.
  • Предыдущая основная версия поддерживается заявленный срок, а потребители обновляются автоматическими запросами на слияние, не скрытым изменением.

Зачем это спрашивают: Интервьюер хочет увидеть ограниченную модель версионирования, которая не даёт центральным шаблонам неожиданно ломать потребителей.

Я считаю сгенерированные интерфейсы, входные параметры процессов, метки, пути файлов и выходные параметры модулей контрактами, даже если они не оформлены как API.

  • Golden-фикстуры покрывают минимальный сервис, сервис с базой и настроенный сервис, чтобы структурные изменения обнаруживались до релиза.
  • Добавляемые поля получают безопасные значения по умолчанию, а удаление проходит период deprecation и повторяемую миграцию.
  • CI потребителя проверяет отрендеренный результат и план развёртывания, а не только завершение шаблонизатора.

Зачем это спрашивают: Интервьюер проверяет, умеет ли кандидат распознавать и тестировать скрытые контракты платформенных шаблонов.

escape-hatchesdecision-making

Я делаю поддерживаемый путь проще собственной инфраструктуры, но оставляю явную точку расширения для требований, которые путь не может безопасно выразить.

  • Команда может передать ограниченный overlay или выбрать одобренный расширенный модуль, не создавая ответвление всего шаблона.
  • Исключение фиксирует владельца, причину, риск и дату пересмотра, чтобы временное отклонение не стало невидимой постоянной платформой.
  • Я ежеквартально просматриваю повторяющиеся исключения; три похожих запроса обычно означают недостающую возможность платформы, а не сопротивление пользователей.

Зачем это спрашивают: Интервьюер оценивает, способен ли кандидат стимулировать внедрение, не блокируя обоснованные особенности нагрузки.

self-serviceonboarding

Подключение должно установить идентичность, владение, доставку, границы среды выполнения и показатели поддержки до первого развёртывания в production.

  • Процесс создаёт репозиторий и сущность каталога с группой-владельцем, системой, lifecycle и маршрутом связи.
  • Он создаёт пространство имён или границу аккаунта, идентичность рабочей нагрузки с минимальными правами, конфигурацию развёртывания и наблюдаемый статус.
  • Для завершения нужны успешное тестовое развёртывание, ссылки на панель и SLO, а также описанный путь удаления заброшенного сервиса.

Зачем это спрашивают: Интервьюер хочет убедиться, что подключение создаёт пригодного к эксплуатации клиента платформы, а не только репозиторий.

ownership

Я делаю передачу владения и вывод из эксплуатации отдельными процессами каталога с одобрением текущего и принимающего владельцев.

  • Передача обновляет связь Group в каталоге, права репозитория, предупреждения, cost метки и привязки идентичность рабочей нагрузки одним проверяемым набором изменений.
  • Статус вывода блокирует новые релизы в production до удаления ресурсов и перечисляет зависимости, которые должны подтвердить отключение.
  • Окончательная очистка проверяет нулевой трафик, сохраняет требуемые аудит-данные и удаляет записи каталога и инфраструктуры без бесхозных затрат.

Зачем это спрашивают: Интервьюер проверяет владение жизненным циклом между метаданными портала и ресурсами платформы.

namespaceskuberneteskubernetes-tenancy

Я использую пространства имён как основную административную границу и дополняю их RBAC, квотами, сетевыми политиками и admission controls.

  • Каждая команда получает отдельные пространства имён для production и непродуктивных окружений со стабильными метками владельца, стоимости, политик и наблюдаемости.
  • Namespace сам по себе не является жесткой границей безопасности, поэтому для недоверенных нагрузок могут понадобиться отдельные кластеры или аккаунты.
  • Возможность подключения создаёт весь набор политик одинаково, вместо того чтобы каждая команда собирала его вручную.

Зачем это спрашивают: Интервьюер проверяет понимание как пользы, так и ограничений разделения по пространствам имён.

designnamespaceskubernetes

Я выдаю группам права в соответствии с ролью в каждом пространстве имён, а каждой нагрузке даю отдельный ServiceAccount с более узкими правами во время выполнения.

  • Разработчики могут читать нагрузки и журналы в production, но развёртывают через GitOps, а дежурная группа получает ограниченный по времени диагностический доступ.
  • RoleBindings ссылаются на централизованно управляемые Roles, чтобы общие права один раз проходили проверку и переиспользовались одинаково.
  • Я тестирую разрешённые и запрещённые действия через authorization checks, потому что широкие права с wildcard для verbs и resources легко пропустить на проверку.

Зачем это спрашивают: Интервьюер хочет увидеть практичную модель минимальных привилегий, которая поддерживает рабочие процессы разработчиков.

ResourceQuota ограничивает суммарное потребление пространства имён, а LimitRange задаёт значения по умолчанию или границы requests и limits отдельных объектов.

  • Квота может разрешать команде суммарно 20 CPU и 40 ГиБ памяти, не давая одному пространству имён занять кластер.
  • LimitRange может задавать каждому контейнеру 100 millicores и 256 МиБ, чтобы отсутствие request не ломало планирование и учёт затрат.
  • Я настраиваю их вместе и показываю текущее использование в портале, потому что невидимая нехватка квоты приводит к непонятным отказам развёртывания.

Зачем это спрашивают: Интервьюер проверяет, умеет ли кандидат применять оба механизма и не путает ли их области действия.

network-policy

Я начинаю с запрета входящего и исходящего трафика по умолчанию, затем явно разрешаю DNS, входной трафик, нужные зависимости и точки подключения наблюдаемости.

  • Selectors используют стабильные метки пространства имён и нагрузки, управляемые платформой, а не имена Pod или изменяемые метки релиза.
  • Правила исходящего трафика учитывают DNS и внешние точки подключения, иначе безопасная на вид политика ломает обнаружение сервисов или проверку сертификатов.
  • Шаблон включает тесты связности, чтобы команда до production видела, какой контракт заблокирован.

Зачем это спрашивают: Интервьюер хочет увидеть практичную сетевую изоляцию, которую можно отлаживать и согласовать с потребностями сервиса.

workloadskubernetes-workloadspod-security

Pod Security Admission применяет общие профили безопасности нагрузок, а admission policy отвечает за требования и исключения конкретной организации.

  • Я помечаю пространства имён приложений профилем restricted и перед включением enforce использую режим warn или audit.
  • Правило Gatekeeper или Kyverno может требовать одобренный registry, requests ресурсов или метки идентичности рабочей нагрузки, которых нет в Pod Security.
  • Исключения ограничиваются пространством имён, имеют владельца и срок действия, а не становятся глобальным обходом для одной несовместимой нагрузки.

Зачем это спрашивают: Интервьюер проверяет, умеет ли кандидат безопасно сочетать стандартные и собственные admission controls.

Закрытые вопросы

  • 21

    Когда выбрать Gatekeeper, Kyverno или встроенные admission policies Kubernetes?

    kubernetespolicy-as-code
  • 22

    Какой контракт PodDisruptionBudget должна предоставлять общая возможность управления нагрузками для нескольких внутренних команд?

  • 23

    Как определить контракт автомасштабирования общей возможности управления нагрузками для нескольких внутренних команд?

    autoscalingscaling
  • 24

    Как предоставить workload identity как платформенную возможность?

  • 25

    Каким должен быть контракт управления секретами для команд приложений?

    secretsconfiguration
  • 26

    Что должен содержать публичный контракт переиспользуемого Terraform-модуля?

    terraform
  • 27

    Как версионировать Terraform-модуль, которым пользуются несколько команд?

    terraform
  • 28

    Зачем Terraform нужен удалённый backend с блокировкой состояния?

    terraformlocking
  • 29

    Как общая Terraform-возможность для нескольких внутренних команд должна поддерживать существующие ресурсы и рефакторинг модулей?

    decision-makingrefactoringterraform
  • 30

    Как работать с aliases провайдеров в переиспользуемых Terraform-модулях?

    terraform
  • 31

    Когда Terragrunt полезен, а когда не нужен?

  • 32

    Как протестировать Terraform-модуль и шаблон сервиса перед релизом?

    terraformtemplates
  • 33

    Какие основные понятия Crossplane нужны, чтобы предоставить базу данных как платформенную возможность?

    iacdatabase
  • 34

    Как сделать Composition Crossplane понятной потребителям?

    iacoop
  • 35

    Что даёт GitOps-сверка по сравнению с запуском kubectl из CI?

    kubernetesgitopskubectl
  • 36

    Когда использовать Argo CD app-of-apps, а когда ApplicationSet?

    gitops
  • 37

    Какие стандартные настройки порядка и hooks нужны общей возможности доставки Argo CD для нескольких внутренних команд?

    gitopshooks
  • 38

    Как добавить поэтапную доставку в GitOps-платформу?

    gitops
  • 39

    Как спроектировать переиспользуемый процесс CI как API платформы?

    designapi
  • 40

    Как выбрать между hosted и self-hosted CI runners?

  • 41

    Какой контракт кешей и артефактов должна предоставлять общая возможность CI нескольким внутренним командам?

    cachingartifacts
  • 42

    Как управлять параллельностью в переиспользуемых процессах поставки?

    formsconcurrency
  • 43

    Какие основы цепочки поставки должен предоставлять платформенный процесс сборки?

  • 44

    Для каких задач подходят Helm и Kustomize?

    helmkuberneteskustomize
  • 45

    Когда платформа должна предлагать сервисную сеть?

    service-mesh
  • 46

    Как спроектировать возможность OpenTelemetry для команд приложений?

    observabilitydesign
  • 47

    Как контролировать кардинальность в Prometheus и использовать recording rules?

    monitoring
  • 48

    Как определить цели надёжности для возможности платформы?

    reliability
  • 49

    Как платформенной команде использовать метрики DORA?

    platform-engineeringmonitoring
  • 50

    Как добавить распределение затрат и подбор ресурсов в платформу самообслуживания?

    self-service
  • 51

    В репозитории есть корректный catalog-info.yaml, но Component исчез из Backstage после переноса команды в новую организацию GitHub. Что вы проверите?

    yamlbackstagecomponents
  • 52

    Две команды сообщают о Component с именем payments-api в Backstage, а его ссылки ведут к разным владельцам. Как определить, является ли это конфликтом загрузки?

    componentsapibackstage
  • 53

    Scaffolder создаёт репозиторий и облачную базу, а затем падает до открытия запроса на слияние с GitOps-конфигурацией; за неделю появилось три брошенных базы. Что вы измените?

    gitopsdatabasecode-review
  • 54

    Собственный action Scaffolder умеет создавать репозитории, но любой вошедший разработчик может создать репозиторий в GitHub-организации команды безопасности. Как исправить авторизацию?

    auth
  • 55

    Плагин затрат Backstage работает у администраторов, но возвращает 403 обычным владельцам сервисов через прокси, хотя прямой вызов API затрат со служебным токеном успешен. Как это отладить?

    tokensapiproxy
  • 56

    TechDocs показывает актуальную инструкцию сервиса, но карточка оценки готовности продолжает считать её отсутствующей спустя 18 часов после публикации. Как найти расхождение?

    health-checksiacrunbooks
  • 57

    Обновление стандартного пути переводит переиспользуемый процесс с версии 3 на 4, и 6 из 24 сервисов падают из-за удалённого поля deploy_region. Как безопасно провести обновление?

    deploymentci-cd
  • 58

    Четыре команды скопировали и форкнули чарт развёртывания ради одного sidecar, а число обращений к платформе выросло с 2 до 11 в месяц. Какую точку расширения вы спроектируете?

    designworkloadsdeployment
  • 59

    У пространства имён квота 10 CPU, текущие requests равны 9 CPU, а новый Pod с запросом 500 millicores отклоняется при свободных узлах. LimitRange также задаёт 1 CPU для sidecar без request. Что вы исправите?

    workloadsnamespaceskubernetes-workloads
  • 60

    Команда задаёт minAvailable 3 для нагрузки с тремя репликами, и drain узла заблокирован 40 минут; команда утверждаёт, что PDB гарантирует отсутствие простоя. Что вы сделаете?

    replication
  • 61

    Поток запросов удваивается, HPA увеличивает сервис с 4 до 12 реплик, но 8 Pod остаются Pending 7 минут, а задержка не снижается. Как отладить HPA вместе с cluster autoscaler?

    latencyautoscalingscaling
  • 62

    Новое admission-правило обязательного owner отклоняет каждый Deployment из общего Helm-чарта, включая аварийные откаты. Как восстановиться и улучшить политику?

    deploymentrollbackhelm
  • 63

    Разработчики могут развёртывать приложения через Argo CD, но после изменения платформенного RBAC их Pod получают AccessDenied от объектного хранилища. Как отделить Kubernetes RBAC от идентичности рабочей нагрузки?

    kubernetesdeploymentgitops
  • 64

    После включения запрета исходящего трафика по умолчанию Pod подключаются к базе по IP, но не могут разрешить её имя, а 14 сервисов сообщают о тайм-аутах DNS. Что вы измените?

    databaseresilience
  • 65

    Сгенерированная нагрузка отклонена restricted-профилем Pod Security из-за запуска с UID 0; отдельный отчёт admission также рекомендует корневую файловую систему только для чтения. Как сохранить защиту платформы?

    workloadskubernetes-workloadsguardrails
  • 66

    Rollout с 6 репликами останавливается на 3 обновлённых Pod из-за новой проверки readiness, при этом maxUnavailable равен 0, а maxSurge 50 процентов. Что вы сделаете?

    replicationhealth-checks
  • 67

    После ротации ключа KMS планы Terraform для 11 сервисов завершаются ошибкой: удалённый backend видит объекты состояния, но не может их расшифровать. Как восстановить общую возможность работы с состоянием?

    terraform
  • 68

    Ночной план Terraform из общего инфраструктурного процесса хочет удалить публичную метку и вернуть старое правило security group у сервисов команд checkout и поиска. Как вы обработаете расхождение?

    terraformiacsoft-skills
  • 69

    Общий Terraform-модуль переименовывает и удаляет выходной параметр deployment_role_arn, после чего 18 процессов-потребителей падают с ошибкой unsupported attribute. Как восстановить и развивать контракт модуля?

    terraformdeploymentci-cd
  • 70

    Переиспользуемый модуль Terraform создаёт реплику в eu-west-1, но после рефакторинга её KMS key планируется в стандартном аккаунте us-east-1. Что вы проверите?

    terraformreplicationrefactoring
  • 71

    Обновление общего сетевого модуля с 2.8 до 3.0 заставляет plan заменить 12 связей таблиц маршрутизации. Как провести обновление модуля?

    soft-skills
  • 72

    После переноса aws_s3_bucket.logs в module.logging Terraform планирует удалить и заново создать бакет с журналами аудита. Как правильно провести рефакторинг?

    terraformloggingrefactoring
  • 73

    Terraform читает удалённое состояние в CI, но после создания ресурсов не может записать обновление, и задание завершается ошибкой. Какие права доступа к backend и шаги восстановления вы проверите?

    terraform
  • 74

    Модуль базы помечает password как sensitive, но переиспользуемый процесс CI печатает его при сохранении всех выходных параметров Terraform в deployment.json. Что вы измените?

    terraformdeploymentserialization
  • 75

    Crossplane claim базы остаётся Synced=False 22 минуты, а событие говорит, что selector составной подсети не нашёл ресурсов. Как отладить Composition?

    iacdatabaseoop
  • 76

    Crossplane claim сообщает Synced=True, но Ready=False: managed database доступна, а connection secret не появляется. Что вы проверите?

    iacdatabasesecrets
  • 77

    Удаление service claim начинает удалять production-базу, которую команда данных ожидала сохранить. Как исправить семантику владения Crossplane?

    iacdatabaseownership
  • 78

    Argo CD каждые три минуты повторно синхронизирует Deployment из общего GitOps-процесса: платформенный operator переписывает одну аннотацию и мешает трём командам приложений. Как остановить цикл?

    deploymentgitopskubernetes-deployment
  • 79

    Custom Resource из общего процесса подготовки кластера применяется до своего CRD при синхронизации Argo CD, поэтому первое развёртывание падает у каждой команды, подключающей новый кластер. Как исправить порядок?

    workloadsoperatorscluster
  • 80

    PreSync hook миграции схемы в общем процессе развёртывания завершается по тайм-ауту после половины изменений, а каждый повтор Argo CD запускает его заново для двух продуктовых команд. Как сделать hook безопасным?

    deploymentgitopsschema
  • 81

    После добавления новой метки кластера в merge ApplicationSet внезапно помечает на удаление 27 приложений предварительного просмотра. Что вы сделаете до reconciliation?

    cluster
  • 82

    External Secrets меняет значение каждый час, но Argo CD постоянно считает созданный Secret OutOfSync и заменяет его зашифрованным значением из Git. Как разделить владение?

    gitgitopssecrets
  • 83

    Общий платформенный процесс Argo Rollouts проходит staging, но останавливает checkout на 25 процентах в production после роста задержки p95 со 180 до 260 мс, затрагивая команду платежей. Что вы сделаете?

    latencygitops
  • 84

    Вызываемый процесс GitHub Actions не публикует образ из-за отсутствующего права packages: write, поэтому команда выдаёт permissions: write-all. Что добавить в контракт переиспользуемого процесса?

    ci-cd
  • 85

    Общий кеш CI ускоряет Java-сборки, но 9 процентов запусков падают после перехода с JDK 21 на 23 из-за старых восстановленных классов. Как исправить кеш?

    caching
  • 86

    Тестовое задание общего процесса сборки загружает отчёты, но задание развёртывания скачивает артефакт app из другой части матрицы и поставляет неверную архитектуру командам платформы. Как исправить поток артефактов?

    deploymentartifactsarchitecture
  • 87

    Два репозитория используют постоянный self-hosted runner, и сборка недоверенного запроса на слияние читает учётные данные развёртывания из рабочей директории предыдущего задания. Что вы измените?

    deploymentci-cdworkloads
  • 88

    Два развёртывания в production одного сервиса пересекаются, и старый запуск заканчивается позже, возвращая предыдущий образ. Как настроить параллельность?

    deploymentconfigconcurrency
  • 89

    У релизного образа есть SBOM, но список пакетов расходится с образом: SBOM создали из каталога исходников до финального этапа сборки. Что вы измените?

    supply-chain
  • 90

    Cosign успешно проверяет образы из личного процесса инженера и из защищённого релизного процесса. Как ужесточить политику подписи?

    discovery
  • 91

    Production overlay Kustomize патчит поле, которое переименовал обновлённый Helm-чарт, поэтому patch ни с чем не совпадает, а число реплик падает с 4 до 1. Как это предотвратить?

    helmkuberneteskustomize
  • 92

    После включения повторных попыток в платформенной возможности сервисной сети checkout отправляет втрое больше платёжных запросов при 503, а доля дублей у команды платежей растёт до 2 процентов. Что вы измените?

  • 93

    Сервис команды заказов получает ошибки TLS handshake только при вызове новой зависимости команды складского учёта в сервисной сети, а незашифрованные запросы из отладочного Pod проходят. Как отладить общую возможность mTLS?

    tlsmtlsworkloads
  • 94

    HTTP-запросы сохраняют одну трассировку между сервисами checkout, но сообщения Kafka у команды обработки заказов начинают новые трассировки, из-за чего разрываются 38 процентов трассировок checkout. Что исправить в общей возможности телеметрии?

    kafkaobservabilityhttp
  • 95

    Во время 12-минутного отказа хранилища телеметрии очередь общего OpenTelemetry Collector заполняется, память достигает 90 процентов, а данные исчезают у шести команд приложений. Как стабилизировать платформенную возможность?

    observabilitymemorydata-structures
  • 96

    Новая метка request_path из общего SDK телеметрии увеличивает число активных рядов Prometheus с 1,2 до 4,8 миллиона, а панели восьми команд загружаются 19 секунд. Что вы сделаете?

    monitoringdashboardsobservability
  • 97

    SLO создания ресурсов показывает 99,9 процента успеха, но в знаменатель входят 320 некорректных отправок формы, а 14 корректных запросов завершились ошибкой. Какой знаменатель вы выберете?

    sloforms
  • 98

    Команде начисляют 40 процентов стоимости общего кластера из-за высоких CPU requests, но p95 usage составляет лишь 18 процентов от них. Как улучшить распределение затрат и подбор ресурсов?

    cluster
  • 99

    Внедрение платформы застряло на 46 процентах, а команда тратит 18 часов в неделю на одинаковые вопросы о пространствах имён и CI. Что вы поставите в приоритет?

    prioritizationproblem-solvingdecision-making
  • 100

    Внутренним командам нужны окружения предварительного просмотра: большинству на 24 часа, но двум командам нужны закрытые данные и семь дней отладки. Какую возможность вы спроектируете первой?

    design