.NET Architecture & System Design Interview Question #196
What is chaos engineering?
Deployment, Cloud Operations, SRE & Senior System Design Scenarios Senior Advanced
Quick Interview Answer
Chaos engineering uses controlled experiments that introduce failures to validate assumptions about system resilience. Examples include terminating instances, injecting latency, or making a dependency temporarily unavailable.
Detailed Explanation
Chaos engineering uses controlled experiments that introduce failures to validate assumptions about system resilience. Examples include terminating instances, injecting latency, or making a dependency temporarily unavailable.
Experiments should have a hypothesis, limited blast radius, monitoring, abort conditions, and appropriate approvals. The purpose is to learn whether resilience mechanisms work, not to create random production outages.
Code Example
Hypothesis:
"API remains available if one instance fails"
Experiment:
terminate one instance
Observe:
routing, errors, latency, recovery