Chaos Engineer
When to Use / When Not to Use
Use when:
- Designing and running controlled failure experiments before production incidents happen
- Planning game day exercises for the team
- Building blast radius controls and CI/CD chaos pipelines
- Improving resilience based on experiment findings
Do not use when:
- Responding to an active incident (use
sre-engineer or incident-response-playbook)
- No monitoring stack exists — steady state cannot be verified without metrics
Process
- System Analysis — Map architecture, dependencies, critical paths, and failure modes. Confirm a monitoring stack (Prometheus, Datadog, or equivalent) exists before proceeding — chaos without observability is just breaking things.
- Experiment Design — Define hypothesis, steady state metrics, blast radius, and safety controls
- Execute Chaos — Run controlled experiments with monitoring and scripted rollback
- Learn & Improve — Document findings, implement fixes, enhance monitoring
- Automate — Integrate chaos testing into CI/CD for continuous resilience
Safety Checklist
Enforce on every experiment:
- Steady state first — define and verify baseline metrics before injecting any failure
- Blast radius cap — start with the smallest possible impact scope; expand only after validation
- Automated rollback ≤ 30 seconds — abort path must be scripted and tested before the experiment begins
- Single variable — change only one failure condition at a time
- No production without safety nets — customer-facing environments require circuit breakers, feature flags, or canary isolation
- Close the loop — every experiment must produce a written learning summary and at least one tracked improvement
Output Template
For each experiment, provide:
- Experiment design document (hypothesis, steady-state metrics, blast radius)
- Implementation code (failure injection scripts or manifests)
- Monitoring setup and alert configuration
- Rollback procedure (scripted, ≤ 30s)
- Learning summary and improvement recommendations
What Claude Does / What You Do
| Claude |
You |
| Drafts hypothesis and steady-state definition |
Confirm the hypothesis reflects real business risk |
| Generates Litmus, toxiproxy, or Chaos Monkey config |
Run experiments in your environment |
| Designs blast radius controls |
Verify blast radius is acceptable before starting |
| Writes rollback scripts |
Test rollback works before the experiment begins |
| Templates the learning summary |
Fill in actual findings and assign follow-up tickets |
Reference Guide
| Topic |
Reference |
Load When |
| Experiments |
references/experiment-design.md |
Designing hypothesis, blast radius, rollback |
| Infrastructure |
references/infrastructure-chaos.md |
Server, network, zone, region failures |
| Kubernetes |
references/kubernetes-chaos.md |
Pod, node, Litmus, chaos mesh experiments |
| Tools & Automation |
references/chaos-tools.md |
Chaos Monkey, Gremlin, Pumba, CI/CD integration |
| Game Days |
references/game-days.md |
Planning, executing, learning from game days |
| Post-Mortems |
references/post-mortem.md |
Post-mortem template for game days and unplanned production incidents |
Example: Pod Failure Experiment (Litmus Chaos)
# chaos-pod-delete.yaml
apiVersion: litmuschaos.io/v1alpha1
kind: ChaosEngine
metadata:
name: my-service-pod-delete
namespace: production
spec:
appinfo:
appns: production
applabel: "app=my-service"
appkind: deployment
engineState: active
chaosServiceAccount: litmus-admin
experiments:
- name: pod-delete
spec:
components:
env:
- name: TOTAL_CHAOS_DURATION
value: "60"
- name: CHAOS_INTERVAL
value: "20"
- name: PODS_AFFECTED_PERC
value: "33" # max 33% of replicas affected
For network latency (toxiproxy) and Chaos Monkey examples, see references/chaos-tools.md.
Related Skills
sre-engineer — SLO definition, error budgets, incident response
microservices-architect — resilience pattern design for distributed systems
circuit-breaker-tuner — configure failure thresholds before running chaos experiments
1---2name: chaos-engineer3description: Use when someone wants to proactively test whether a distributed system will survive real failures — by designing controlled chaos experiments, injecting faults (network latency, pod deletion, zone outages), planning a game day exercise, or...4license: MIT5---67# Chaos Engineer89## When to Use / When Not to Use1011**Use when:**12- Designing and running controlled failure experiments before production incidents happen13- Planning game day exercises for the team14- Building blast radius controls and CI/CD chaos pipelines15- Improving resilience based on experiment findings1617**Do not use when:**18- Responding to an active incident (use `sre-engineer` or `incident-response-playbook`)19- No monitoring stack exists — steady state cannot be verified without metrics2021## Process22231. **System Analysis** — Map architecture, dependencies, critical paths, and failure modes. Confirm a monitoring stack (Prometheus, Datadog, or equivalent) exists before proceeding — chaos without observability is just breaking things.242. **Experiment Design** — Define hypothesis, steady state metrics, blast radius, and safety controls253. **Execute Chaos** — Run controlled experiments with monitoring and scripted rollback264. **Learn & Improve** — Document findings, implement fixes, enhance monitoring275. **Automate** — Integrate chaos testing into CI/CD for continuous resilience2829## Safety Checklist3031Enforce on every experiment:3233- **Steady state first** — define and verify baseline metrics before injecting any failure34- **Blast radius cap** — start with the smallest possible impact scope; expand only after validation35- **Automated rollback ≤ 30 seconds** — abort path must be scripted and tested before the experiment begins36- **Single variable** — change only one failure condition at a time37- **No production without safety nets** — customer-facing environments require circuit breakers, feature flags, or canary isolation38- **Close the loop** — every experiment must produce a written learning summary and at least one tracked improvement3940## Output Template4142For each experiment, provide:431. Experiment design document (hypothesis, steady-state metrics, blast radius)442. Implementation code (failure injection scripts or manifests)453. Monitoring setup and alert configuration464. Rollback procedure (scripted, ≤ 30s)475. Learning summary and improvement recommendations4849## What Claude Does / What You Do5051| Claude | You |52|--------|-----|53| Drafts hypothesis and steady-state definition | Confirm the hypothesis reflects real business risk |54| Generates Litmus, toxiproxy, or Chaos Monkey config | Run experiments in your environment |55| Designs blast radius controls | Verify blast radius is acceptable before starting |56| Writes rollback scripts | Test rollback works before the experiment begins |57| Templates the learning summary | Fill in actual findings and assign follow-up tickets |5859## Reference Guide6061| Topic | Reference | Load When |62|-------|-----------|-----------|63| Experiments | `references/experiment-design.md` | Designing hypothesis, blast radius, rollback |64| Infrastructure | `references/infrastructure-chaos.md` | Server, network, zone, region failures |65| Kubernetes | `references/kubernetes-chaos.md` | Pod, node, Litmus, chaos mesh experiments |66| Tools & Automation | `references/chaos-tools.md` | Chaos Monkey, Gremlin, Pumba, CI/CD integration |67| Game Days | `references/game-days.md` | Planning, executing, learning from game days |68| Post-Mortems | `references/post-mortem.md` | Post-mortem template for game days and unplanned production incidents |6970## Example: Pod Failure Experiment (Litmus Chaos)7172```yaml73# chaos-pod-delete.yaml74apiVersion: litmuschaos.io/v1alpha175kind: ChaosEngine76metadata:77 name: my-service-pod-delete78 namespace: production79spec:80 appinfo:81 appns: production82 applabel: "app=my-service"83 appkind: deployment84 engineState: active85 chaosServiceAccount: litmus-admin86 experiments:87 - name: pod-delete88 spec:89 components:90 env:91 - name: TOTAL_CHAOS_DURATION92 value: "60"93 - name: CHAOS_INTERVAL94 value: "20"95 - name: PODS_AFFECTED_PERC96 value: "33" # max 33% of replicas affected97```9899For network latency (toxiproxy) and Chaos Monkey examples, see `references/chaos-tools.md`.100101## Related Skills102103- `sre-engineer` — SLO definition, error budgets, incident response104- `microservices-architect` — resilience pattern design for distributed systems105- `circuit-breaker-tuner` — configure failure thresholds before running chaos experiments