Skip to content

Instantly share code, notes, and snippets.

@and1truong
Created January 8, 2025 07:39
Show Gist options
  • Save and1truong/ae09b6db48bcd3d9bfc301f22b24ca93 to your computer and use it in GitHub Desktop.
Save and1truong/ae09b6db48bcd3d9bfc301f22b24ca93 to your computer and use it in GitHub Desktop.

The 80/20 principle, also known as the Pareto Principle, states that 80% of results often come from 20% of efforts. To apply this principle to your SRE tasks, you can focus on identifying the most impactful actions that deliver the highest value with the least effort. Here's how you can implement it:

1. Identify Key Goals

  • Determine the top outcomes you want to achieve (e.g., improved system reliability, reduced incident frequency, faster response times).
  • Align tasks with these goals.

2. Audit Your Current Workload

  • List out all your daily, weekly, and monthly tasks.
  • Analyze which tasks:
    • Directly impact key metrics like availability, latency, or system performance.
    • Mitigate recurring incidents or prevent major failures.
    • Improve processes or automation to save time in the future.

3. Categorize Tasks by Impact and Effort

  • Use an Impact-Effort Matrix:
    • High Impact, Low Effort: Focus here. These are your 20% of tasks that deliver 80% of results.
    • High Impact, High Effort: Prioritize if critical but consider breaking into smaller, manageable steps.
    • Low Impact, Low Effort: Batch these tasks to avoid distractions.
    • Low Impact, High Effort: Delegate, automate, or eliminate.

4. Prioritize Recurring and Preventative Work

  • Focus on tasks that reduce toil (manual, repetitive work).
  • Automate where possible (e.g., scripts for deployments, alert tuning).
  • Address root causes of issues rather than firefighting symptoms.

5. Evaluate & Iterate

  • Regularly assess whether the tasks you focus on are delivering results.
  • Adjust priorities if new pain points emerge or if certain tasks aren't as impactful as expected.

Example in SRE Context:

  1. High Impact, Low Effort:

    • Automating a repetitive deployment script.
    • Fine-tuning alerts to reduce noise.
    • Writing clear post-incident reviews to prevent repeat incidents.
  2. Low Impact, High Effort:

    • Over-engineering dashboards that aren't used.
    • Spending excessive time on non-critical documentation.

By systematically applying the 80/20 principle, you can ensure you're focusing on tasks that significantly move the needle while avoiding burnout. Would you like to refine this into a structured routine?

image
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment