Skip to content

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 @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. (this requirement has been removed pending identification of a new DRI for the handbook)

Relates to #11757 (closed)

Edited by Eric Johnson

Merge request reports