The GitLab Support Team may very well be unique among the many teams within the company in that its multiple sub-teams each have the same charter. Making decisions and managing change within this structure come with equally unique challenges not faced by the other teams. Specifically, managers must determine the appropriate scope - whether to act individually or in coordination with the other managers - when they want to make a decision or introduce a process change. And the worldwide support management team must agree that the scoping is correct. We define here our most current processes for determining scope, gathering data and feedback, choosing a path forward, rolling out a change, managing adoption, and reviewing results for future improvements.
If you have an idea but aren't ready to propose specific changes yet, you can start with the Request for Comments issue template. The template includes guidance on how to make your RFC.
One of the most important considerations when looking to make a change is what the scope of the change will be.
When thinking about whether a change should be local or global, you might be tempted to focus on the size of the change (number of lines of code changed, number of lines of text in a doc that changed, etc.). But that’s actually a different type of scope that isn’t relevant to this discussion.
Instead, begin with the idea that for the sake of consistency and simplicity, you should lean toward making your change globally unless it doesn't even make sense for, or apply to, other regions. If you're considering making the change locally, be sure that you can answer "no" to all of these questions about potential impacts of making a local change:
Whether you’re making a local change, based on the decision criteria above, or proposing a global one, it’s important to communicate your plans with the rest of the Support Leadership Team.
The first step toward making a change is to create a Requested Change issue in the support-team-meta project. Using the linked template (Requested Change), it will ensure you supply the required information (DRI, problem statement, ways to measure success, etc.), helping to speed the process along.
This issue is used for presenting the problem that you are working to solve, for hosting a discussion around that topic, and for documenting the testing phase.
As soon as possible, create the MR(s) to present the actual proposed changes.
Include at least the following in the MRs:
@gitlab-com/support/managers
to the issue to ensure that the support management team are informed about the proposed changeWe use the rollout issue template to get acknowledgement of awareness of a new workflow or process.
NOTE: If there's any part of the proposed changes that cannot be presented through a MR, place the information in the issue instead.
Inform the leadership team as an “inform” item in the agenda for the next leadership sync meeting. Why?
Engage the leadership team in a conversation through your issue and through a full agenda topic in the leadership sync meeting:
@gitlab-com/support/managers
to ensure that the support management team are informed about the proposed change
We make data driven decisions whenever possible. If your proposed change doesn't have any supporting data, you'll run one or more localized trials. Be frugal if there is a cost and always be sensitive to disrupting existing workflows:
For future iterations:
During the rollout, use these terms and their provided descriptions to communicate clearly about the different roles people can play in the change process.
Role | Description |
---|---|
Champion | Person who will advocate for the change due to their strong interest in, and possible responsibility for, the success of the change. Most of the time champions are managers. |
User | Person who use the processes, documents and resources that are being changed. |
Impacted Non-User | Person who is not an actual user of the processes, documents and resources that are being changed, yet who will experience changes in the behaviors of the users. E.g. Support Engineers may notice managers responding differently to escalations, though they themselves do not need to do anything new. |
When it's time at last to make the change, create a Process Change Rollout Plan issue. The process change rollout plan template contains instructions to guide you through filling in all the appropriate details. And the issue itself then describes your full action plan.