Defines Engineering Management role naming standards
Why is this change being made?
Overview
The convention at GitLab is to display Manager titles as:
Manager, Division
This has led to many - but not all - Engineering job families and individual team.yml entries listing these roles as (for example):
Manager, Engineering
Senior Manager, Engineering, Create
In the spirit of handbook first this MR adds a section to the Engineering Management handbook page outlining that the Engineering division uses Engineering Manager
, covers the different types of EM roles, lists a few other exceptions, and provides examples of some of the management titles for use in handbook pages, team.yml entries, and job families.
Why would Engineering need to document a different approach? Good question.
We need to be able to reference a place where we have defined how Engineering management job titles are defined because
- Changes to job families need to go through an approval process, and when we make changes we get asked why we aren't following the standard naming convention (example: !78099 (comment 551932461)).
- Within Engineering we want to be consistent in how we refer to manager titles, and the best way to do that is to document it in the engineering section of the handbook.
Right now we have team.yml entries that follow the 'GitLab convention' as seen on the current org chart (Senior Manager, Engineering, [Specialty]), and many more that ignore this convention (Backend Engineering Manager
) that don't match the job family (Backend Manager, Engineering
, https://about.gitlab.com/job-families/engineering/development/backend/manager/).
By documenting in the handbook first, we can work to update job families, handbook references, and team.yml entries in #11757 (closed)
Background
Following discussions !84271 (comment 600128310) and #11757 (closed) this MR looks to define an Engineering Management role naming convention in the handbook.
Examples
Some examples as they would appear on the org-chart:
Senior Engineering Manager, Create
Senior Engineering Manager, Continuous Delivery
Interim Senior Engineering Manager, Fulfillment
Frontend Engineering Manager, Plan
Frontend Engineering Manager, Manage:Access, Manage:Compliance & Manage:Import
Backend Engineering Manager, Gitaly
Backend Engineering Manager, Plan:Project Management
Backend Engineering Manager, Verify:Pipeline Execution & Verify:Pipeline Authoring
Fullstack Engineering Manager, Growth:Activation, Adoption, Conversion & Expansion
Fullstack Engineering Manager, Ecosystem
Acting Fullstack Engineering Manager, Verify:Testing
Product Design Manager, Growth & Enablement
Support Engineering Manager, EMEA
Senior Support Engineering Manager
Interim Support Engineering Manager, AMER
Next steps
Once this is established (with any modifications), updating job families, handbook pages, and team.yml entries can be addressed in follow up MRs tracked against #11757 (closed)
Author Checklist
-
Provided a concise title for the MR -
Added a description to this MR explaining the reasons for the proposed change, per say-why-not-just-what -
Assign this change to the correct DRI - If the DRI for the page/s being updated isn’t immediately clear, then assign it to one of the people listed in the "Maintained by" section in on the page being edited.
- If your manager does not have merge rights, please ask someone to merge it AFTER it has been approved by your manager in #mr-buddies.
-
If the changes relate to any part of the project other than updates to content and/or data files please make sure to ping(this requirement has been removed pending identification of a new DRI for the handbook)@gl-static-site-editor
in a comment for a review and merge. For example changes to.gitlab-ci.yml
, JavaScript/CSS/Ruby code or the layout files.
Relates to #11757 (closed)