We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
LeadDev Berlin 2022 Charity Majors
Don't struggle with code ownership and maintenance. Learn how to break the cycle of on-call rotation and focus on reliability, technical debt, and team well-being, with Charity Majors.
- On-call rotation is a sign of struggling with code ownership and maintenance. It’s a badge of honor that says “I’m in over my head”.
- The goal is to focus on shrinking the interval between monitoring and alerting. High-performing teams respond to alerts quickly, usually within 15 minutes.
- Deleting 90% of alerts helps to identify the real problems. The remaining 10% are the ones that really matter.
- Teams that spend 20% of their time on maintenance are more likely to have healthy on-call rotations. Investing in sociotechnical systems is crucial for reliability and technical debt.
- Ideally, teams should be on call for a block of time, followed by a break. This allows for focus and ownership.
- Code ownership is not about individual ownership, but about collective responsibility. Teams should aim to ship constantly, with many small diffs.
- Engineers who write code often have different priorities than those who run it. Separating roles can lead to chaos.
- Technical leaders should focus on expertise, not just metrics. They should own the process of identifying and fixing problems, rather than just reacting to alerts.
- Managers should encourage engineers to own their code and focus on shipping. This means investing in observability, monitoring, and feature flags.
- On-call rotation should be a choice, not a requirement. When it’s a choice, it’s more likely to be successful.
- Teams should focus on making small, incremental changes, rather than trying to tackle everything at once.
- Retrospectives are crucial for identifying areas of improvement and implementing changes.
- Engineers should be encouraged to take breaks and focus on well-being. On-call rotation should not be used as a punishment or a way to “tire them out”.
- Technical leaders should prioritize empowerment, rather than control. This means giving engineers the autonomy to make decisions and own their work.