CrackOps
Interview PrepTracksLinuxAWS LabSoonInterview RoomSoon
Sign inStart free
CrackOps

Interview prep for the people who keep production up.

[email protected]
ProductInterview PrepTracksDashboardInterview Room
RolesDevOpsSREPlatformCloud
CompanyAboutContactPrivacyTerms
© CrackOps
Tracks/CI/CD & Release Engineering
Advanced 4 minSystem design

How do you enforce approvals and segregation of duties in CI/CD without slowing delivery to a crawl?

Scenario

A capital-markets firm has 60 engineers across 25 services: order routing, market-data handlers, risk and post-trade. Today every production change needs a ticket, a weekly change advisory board, and an ops engineer who deploys by hand from a runbook, so lead time is about nine days and the team ships twice a week. An internal audit found two changes approved by their own authors, and the business wants faster delivery without a worse audit.

The interviewer asks

“Auditors require that the person who writes a change, the person who approves it and the thing that deploys it are all different. Design a CI/CD system that enforces that and produces the evidence automatically, while getting us from two releases a week to many a day.”

The 30-second answer

I'd enforce segregation of duties with systems, not people: the author writes the PR, a different CODEOWNER must approve the latest commit, and only the pipeline's own identity can deploy, with no human holding production credentials. Every artifact is built once, signed with cosign and given SLSA provenance, and the cluster admits only signed images. Changes are risk-tiered by policy as code: standard changes are pre-approved and flow automatically, normal changes need one change approver, emergencies get post-hoc review. Each deployment writes an evidence bundle to immutable storage, and we track DORA metrics to prove velocity went up without change failure rate going up.

Sign in to finish this question

A free account unlocks the rest of it, and saves your progress across every track.

  • The voiced mock interview (4 min)
  • The full senior answer, step by step
  • Animated architecture diagrams
  • The whole conversation, 12 turns
  • Deep dive: how it works, mistakes, risks and trade-offs
  • 3 copy-ready command snippets
  • 5 follow-up questions they'll ask next
  • A self-check of 8 things interviewers listen for
Create a free accountSign in

More CI/CD & Release Engineering interview questions

  • Walk me through a production deployment and rollback strategy.
  • Production can only change Saturday 02:00 to 05:00. How do you run releases so the window stops failing?
  • Design a deployment pipeline where changes that touch money get extra safety without slowing every team down
  • A deploy passed canary cleanly, then payment success slowly decays over an hour. How do you debug it?
  • Design a deployment system that rolls out thousands of services safely with automatic canary analysis
  • A release passed automated canary analysis, but a member-facing metric dropped a day later. What did the canary miss?
All CI/CD & Release Engineering questions

Linux commands for this track

  • bash: variables Shell variables: assign, quote, default and export
  • bash: if Conditions: if, elif, else, test brackets and case
  • bash: loops Loops: for, while read, until and retry
  • bash: functions Functions: name a block, pass arguments, return a status
  • bash: arrays Arrays: lists and key-value maps in bash
  • bash: exit codes Exit codes, $?, set -euo pipefail and trap
  • bash: redirection Redirection: stdout, stderr, 2>&1, /dev/null and here-docs
  • bash: arguments Script arguments: $1, $#, "$@", shift and getopts