As a SaaS customer support or success leader, are you managing support SLAs? Are you finding it hard to have well managed internal SLOs across support and R&D teams (product and engineering)? Then, THIS is for you!
Software products have to meet support Service Level Agreements (SLAs), such as first response and periodic update times, to ensure timely customer outcomes.
But managing those SLAs becomes harder due to interdependencies across support and R&D teams. Which then turns into customer escalations and then into potential churn.
To ensure smooth running SLAs across organizations, we need internal SLOs, i.e. internal agreements between teams that are on the critical path: support and R&D.
For the rest of this post we will use the term SLOs and internal SLOs interchangeably. In this guide we will cover: why internal SLOs are needed, SLO definition framework, enforcement, reporting, implementation example, and conclusive takeaways.
But why can’t I just apply the same SLAs across departments? Glad you asked 😬 It’s because SLAs are stricter customer facing commitments and we need to have separate internal agreements loosely tied to SLAs. Hence internal SLOs gave birth - Ta Da!!
Internal SLO (also called OLA) has been defined as an agreement that describes the responsibilities of each internal group toward support, including the process and timeframe for delivery, as per wikipedia.
But, an incredible 76% of SaaS support teams find it hard to manage SLOs between support and product teams, as per our survey below.
But it begs the question: why is it so hard? Well it is hard to enforce and automate the SLOs especially when support and R&D teams are using different tools. This clearly resonated with support community as per the survey below:
Summarizing the above results, it is clear that it is hard because of 3 reasons:
Now that we know why it is a problem, how do we go about solving it? Well, the answer lies in two things:
Coming up with great SLOs is an art and science, especially as it involves agreement across support and R&D teams. The solution is a 3 step framework: Defining, Enforcing, and Reporting.
The SLO rule definition consists of 3 entities: Condition, Trigger, and Action (CTA).
Condition: This is the condition upon which out of SLOs are triggered. This has 3 aspects: customer, support ticket, and engineering issue.
Trigger: This is the trigger that gates the condition. This has 3 aspects.
Action: This is the action to be taken based on the trigger and condition. This further has 3 aspects.
While crafting these SLO definitions, we’d need to ensure these rules work to support SLAs, such as time to resolution, first response time, etc. An example is shown below to provide a rough idea on making use of this framework.
Example
Well, how to define the severity of incoming support tickets? Defining severity on a support case majorly relies on the following:
The above examples might not be enough, we’ll be sharing more detailed templates on severity, conditions, and triggers soon. Stay tuned :)
Now onto the next step of enforcing these SLOs.
The action part of the SLO rule definition should help with enforcement. Let’s take a deeper dive into 3 ways of accomplishing it.
Digests
This a list of issues to send across support and R&D. Agree on a cadence and email groups across support and R&D teams. We’d recommend two lists, one for critical issues and another for non-critical issues.
Pings
Direct messaging is the best way to take action before it’s too late. Agree on an escalation process with R&D counterparts. This should include:
Live meetings
These are recurring meetings to keep support an R&D teams in sync on customer issues.
More on implementing these enforcements in the implementation section.
Regular reports on SLOs, ensure that cross functional teams and leadership are in the loop on ongoing issues. Here are 3 levels of reporting:
We’ll share a reporting template for you soon :) Now onto implementing this framework.
Ok, frameworks are fine, but how do we go about implementing them in our existing tools? There are so many support and R&D tools out there, so I’ll provide a high-level example with two popular tools: [1] Zendesk, [2] Jira, where Zendesk is used by support teams and Jira used by R&D teams.
We haven’t found a perfect solution (leave your ideas/suggestions in comments), but here are high level steps should you embark on this journey:
Step 1: Zendesk Jira integration
Step 2: Zendesk configuration
Step 3: Jira configuration
In addition, If your teams work in slack, you’d also need to install slack integrations.
Now, you might be asking: But Zendesk only monitors updates on the support side, how do I monitor Jira updates? How do I automate pings? How do I build reporting across support and R&D involving both SLAs and internal SLOs? How do I automate follow-ups based on our escalation process?
We hear you, unfortunately we didn’t find a seamless way to implement and automate SLOs across multiple tools. There are workarounds using Zapier integrations across Zendesk and Jira, but even that becomes a Frankenstein solution that doesn’t scale well.
At Rejoy, we are working on something new to make this truly seamless so that you can manage SLOs/SLAs efficiently and effectively. Sign up here to stay tuned for our pre-launch updates. It's going to be groundbreaking! :)
Brownie points to you for making this far. Here are the 3 key takeaways:
Ok, now, how do you manage your internal SLOs? What automations do you use? Feel free to provide feedback, I’d love to hear from you! In my next article, I’ll cover methods and frameworks to influence your R&D teams.
Special Thanks: Kat and GT for providing feedback on an early version of this post 🙏
Is this flowchart close or far away from the process at your organization? Let me know if you have questions or comments at sri@rejoy.io. I'd love to hear from you!
Once you have established a process across teams, the next hurdle is to automate this process especially when your teams and data are spread across several tools. In this blog post, I dive deeper into how to automate your process using internal SLOs across your cross functional teams.