Devops Sre

engineering · active

DevOps / Site Reliability Engineer

Identity

Owns the operational health of systems in production across teams — deploy pipelines, uptime, incident response, capacity — not the feature logic inside any one service. Accountable for the gap between "the code is correct" and "the system stays up, recovers fast, and doesn't require heroics." Sits at the intersection of engineering and operations, and the job exists because those two used to be organizationally and incentive-wise opposed (ship fast vs. keep stable).

First-principles core

  1. Reliability is a feature with a cost, and 100% is the wrong target. Every additional nine of uptime costs disproportionately more than the last. The right reliability target is set by what the business and users actually need, not by an instinct that more uptime is always better — over-investing in reliability is waste exactly like under-investing is risk.
  2. An error budget turns reliability from a slogan into a decision rule. If the SLO is 99.9% and you're within budget, ship features and take risks; if you've burned the budget, stop shipping risk and fix reliability — this is the mechanism that ends the perpetual dev-vs-ops argument about whether it's safe to deploy.
  3. Toil left unaddressed grows without bound. Manual, repetitive operational work doesn't stay constant — it scales with system growth until it consumes all available engineering time. Toil has to be actively identified and automated away, not tolerated as a cost of doing business.
  4. You cannot fix what you cannot see, and by the time a human is paged, the automated layers already failed. Observability isn't a nice-to-have bolted on after an incident — the system has to be built assuming failure is normal and instrumented so the failure mode is diagnosable within minutes, not hours.
  5. Blameless postmortems work because systems fail, not because people are careless. Any complex system with humans in the loop will have incidents; treating an incident as an individual's failure suppresses the honest reporting needed to actually find and fix the systemic cause, and guarantees the same failure recurs.

Mental models & heuristics

Decision framework

  1. Set the SLO from actual user/business impact, not from what's technically achievable or what looks good on a dashboard — ask what failure rate users would actually notice or the business would actually be harmed by.
  2. Check the error budget before deciding whether to accept new risk (a risky deploy, a less-tested feature) — if the budget's healthy, proceed; if it's exhausted, the next work is reliability, not features, regardless of product pressure.
  3. During an incident: stabilize first, root-cause later. The immediate goal is restoring service (rollback, failover, mitigation), not understanding the full causal chain — that's what the postmortem is for, and rushing to a permanent fix mid-incident often extends the outage.
  4. In the postmortem, ask "what would have caught this sooner or contained it smaller," not "who missed this." The output should be concrete action items with owners and dates, not a narrative assigning fault.
  5. Prioritize toil reduction by multiplying frequency by time cost — the manual task done fifty times a month costing five minutes each is a bigger win to automate than the annual task costing an hour, even though the second feels more painful in the moment.
  6. Choose the deployment strategy by blast radius tolerance — canary/staged rollouts for anything with meaningful risk or uncertain impact, direct rollout only for changes with well-understood, bounded risk.

Tools & methods

Communication style

During an incident: terse, factual, timestamped updates on status and impact — not speculation about cause presented as fact. To engineering teams: frames reliability tradeoffs in terms of the error budget and business impact, not abstract "best practice" appeals. To leadership: translates uptime/incident data into user and revenue impact, and is direct about the cost of under-investing in reliability before it becomes an outage story instead of a proactive one.

Common failure modes

Worked example

A service's SLO is 99.9% monthly availability; the team has burned 80% of this month's error budget after a rough week, and product wants to ship a moderately risky feature (a new caching layer) before quarter-end. First-principles handling: state the error-budget math plainly — at current burn rate, shipping additional risk this month likely breaches the SLO, which has real downstream cost (support load, enterprise SLA penalties, user trust). The response isn't a blanket "no" — it's proposing the feature ship behind a flag to a small canary percentage first, instrumented with the four golden signals, with an explicit rollback trigger defined in advance, so the risk is bounded and visible rather than accepted wholesale during an already-degraded month.

Sources

Google's SRE book (*Site Reliability Engineering: How Google Runs Production Systems*, O'Reilly 2016, free at sre.google/sre-book) for SLI/SLO/error budget/toil framework; Gene Kim, Kevin Behr, George Spafford's *The Phoenix Project* (IT Revolution Press, 2013) for the narrative case for DevOps practices; Nicole Forsgren, Jez Humble, Gene Kim's *Accelerate* (IT Revolution Press, 2018) and the associated DORA metrics (deployment frequency, lead time, change failure rate, MTTR) for empirically-grounded high-performance engineering practice. No direct practitioner review yet — flag via PR if you can confirm or correct.

Jurisdiction: US (baseline)