Gitlab hero border pattern left svg Gitlab hero border pattern right svg

Product stages, groups, and categories

On this page

Interfaces

We want intuitive interfaces both within the company and with the wider community. This makes it more efficient for everyone to contribute or to get a question answered. Therefore, the following interfaces are based on the product categories defined on this page:

Hierarchy

The categories form a hierarchy:

  1. Sub-departments: These map to sub-departments within the Development part of the Engineering function.
  2. Stages: Stages start with the 7 loop stages, then add Manage, Secure, and Defend to get the 10 (DevOps) value stages, and then add the Growth and Enablement team stages. Values stages are what we all talk about in our marketing.
  3. Group: A stage has one or more groups. Each of the groups has a dedicated backend engineering team. Within shared functions, like quality and product management, individuals are paired to one or more stages so that there are stable counterparts.
  4. Categories: A group has one or more categories. Categories are high-level capabilities that may be a standalone product at another company. e.g. Portfolio Management. To the extent possible we should map categories to vendor categories defined by analysts. There are a maximum of 8 high-level categories per stage to ensure we can display this on our website and pitch deck. (Categories that do not show up on marketing pages show up here in italics and do not count toward this limit.) There may need to be fewer categories, or shorter category names, if the aggregate number of lines when rendered would exceed 13 lines, when accounting for category names to word-wrap, which occurs at approximately 15 characters.
  5. Features: Small, discrete functionalities. e.g. Issue weights. Some common features are listed within parentheses to facilitate finding responsible PMs by keyword. Features are maintained in features.yml.

Groups may have scope as large as all categories in a stage, or as small as a single category within a stage, but most will form part of a stage and have a few categories in them. Only in the case where the group's scope is the same as a stage or category can they share the same name. For groups that have two or more categories, but not all categories in a stage, the group name can be a completely unique word or a summation of the categories they cover.

Every category listed on this page must have a link, determined by what exists in the following hierarchy:

Marketing product page > docs page > epic > label query > issue

E.g if there's no marketing page, link to the docs. If there's no docs, link to the Epic. etc.

Solutions can consist of multiple categories as defined on this page, but there are also other ones, for example industry verticals. Solutions typically represent a customer challenge, how GitLab capabilities come together to meet that challenge, and business benefits of using our solution.

Capabilities can refer to stages, categories, or features, but not solutions.

Adding more layers to the hierarchy would give it more fidelity but would hurt usability in the following ways:

  1. Harder to keep the interfaces up to date.
  2. Harder to automatically update things.
  3. Harder to train and test people.
  4. Harder to display more levels.
  5. Harder to reason, falsify, and talk about it.
  6. Harder to define what level something should be in.
  7. Harder to keep this page up to date.

We use this hierarchy to express our organizational structure within the Product and Engineering organizations. Doing so serves the goals of:

When designing the hierarchy, the number of sub-departments should be kept small and only grow as the company needs to re-organize for span-of-control reasons. i.e. each sub-department corresponds to a Director of Engineering and a Director of Product, so it's an expensive add. For stages, the DevOps loop stages should not be changed at all, as they're determined from an external source. At some point we may change to a different established bucketing, or create our own, but that will involve a serious cross-functional conversation. While the additional value stages are our own construct, the loop and value stages combined are the primary stages we talk about in our marketing, sales, etc. and they shouldn't be changed lightly. The other stages have more flexibility as they're not currently marketed in any way, however we should still strive to keep them as minimal as possible. Proliferation of a large number of stages makes the product surface area harder to reason about and communicate if/when we decide to market that surface area. As such, they're tied 1:1 with sub-departments so they're the minimal number of stages that fit within our organizational structure. e.g. Growth was a single group under Enablment until we decided to add a Director layer for Growth; then it was promoted to a sub-deparment with specialized groups under it. The various buckets under each of the non-DevOps stages are captured as different groups. Groups are also a non-marketing construct, so we expand the number of groups as needed for organizational purposes. Each group usually corresponds to a backend engineering manager and a product manager, so it's also an expensive add and we don't create groups just for a cleaner hierarchy; it has to be justified from a span-of-control perspective or limits to what one product manager can handle.

Changes

The impact of changes to stages and groups is felt across the company. Merge requests with changes to stages and groups and significant changes to categories need to be approved by:

  1. Head of Product
  2. VP of Engineering
  3. CEO needs to merge the change

DevOps Stages

DevOps Loop

Dev sub-department

Manage stage

Control group

Product Manager: Jeremy Watson | Product Marketing Manager: John Jeremiah | Support: Blair Lunceford | Backend Engineering Manager: Liam McAndrew | Frontend Engineering Manager: Dennis Tang | Test Automation Engineer: Sanad Liaquat | Product Designer: Chris Peressini | Content Marketing: Suri Patel | Technical Writer: Evan Read | Internal Customers: Engineering Department, Product Department, Quality Department

Framework group

Product Manager: Virjinia Alexieva | Product Marketing Manager: John Jeremiah | Support: Blair Lunceford | Backend Engineering Manager: Liam McAndrew | Frontend Engineering Manager: Dennis Tang | Test Automation Engineer: Désirée Chevalier | Product Designer: Chris Peressini | Content Marketing: Suri Patel | Technical Writer: Evan Read | Internal Customers: Engineering Department, Product Department, Quality Department

Plan stage

Team Planning group

Product Manager: Eric Brinkman (Interim) | Product Marketing Manager: John Jeremiah | Backend Engineering Manager: Sean McGivern | Frontend Engineering Manager: Donald Cook | Test Automation Engineer: Walmyr Lima e Silva Filho | Product Designers: Annabel Dunstone Gray, Alexis Ginsberg | Content Marketing: Suri Patel | Technical Writer: Mike Lewis | Internal Customers: Engineering Department, Product Department

Enterprise Planning group

Product Manager: Eric Brinkman (Interim) | Product Marketing Manager: John Jeremiah | Backend Engineering Manager: Sean McGivern | Frontend Engineering Manager: Donald Cook | Test Automation Engineer: Walmyr Lima e Silva Filho | Product Designers: Annabel Dunstone Gray, Alexis Ginsberg | Content Marketing: Suri Patel | Technical Writer: Mike Lewis | Internal Customers: Engineering Department, Product Department

Certify group

Product Manager: Eric Brinkman (Interim) | Product Marketing Manager: John Jeremiah | Backend Engineering Manager: Sean McGivern | Frontend Engineering Manager: Donald Cook | Test Automation Engineer: Walmyr Lima e Silva Filho | Product Designers: Annabel Dunstone Gray, Alexis Ginsberg | Content Marketing: Suri Patel | Technical Writer: Mike Lewis | Internal Customers: Quality Department, Support Department

Create stage

Source Code group

Product Manager: James Ramsay | Product Marketing Manager: John Jeremiah | Backend Engineering Manager: Douwe Maan | Frontend Engineering Manager: André Luís | Test Automation Engineer: Mark Lapierre | Product Designers: Pedro Moreira da Silva, Marcel van Remmerden, Jarek Ostrowski | Content Marketing: Suri Patel | Technical Writer: Marcia Ramos | Internal Customers: Engineering Department, Marketing Department, Product Department

Knowledge group

Product Manager: Kai Armstrong | Product Marketing Manager: John Jeremiah | Backend Engineering Manager: Douwe Maan | Frontend Engineering Manager: André Luís | Test Automation Engineer: Tomislav Nikić | Product Designers: Pedro Moreira da Silva, Marcel van Remmerden, Jarek Ostrowski | Content Marketing: Suri Patel | Technical Writer: Marcia Ramos | Internal Customer: UX Department

Editor group

Product Manager: Kai Armstrong | Product Marketing Manager: John Jeremiah | Backend Engineering Manager: Douwe Maan | Frontend Engineering Manager: André Luís | Test Automation Engineer: Tomislav Nikić | Product Designers: Pedro Moreira da Silva, Marcel van Remmerden, Jarek Ostrowski | Content Marketing: Suri Patel | Technical Writer: Marcia Ramos | Internal Customers: Marketing Department, Engineering Department, Finance Department, People Operations, Product Department

Gitaly group

Product Manager: James Ramsay | Backend Engineering Manager: ZJ (Interim) | Frontend Engineering Manager: Tim Z (Interim) | Test Automation Engineer: Mark Lapierre | Product Designer: Marcel van Remmerden | Technical Writer: Axil | Internal Customers: Quality Department, Infrastructure Department

Gitter group

Product Manager: James Ramsay | Backend Engineering Manager: ZJ (Interim) | Frontend Engineering Manager: Tim Z (Interim) | Test Automation Engineers: Mark Lapierre, Tomislav Nikić | Product Designer: Marcel van Remmerden | Technical Writer: Axil

CI/CD sub-department

Verify stage

CI & Runner group

Product Manager: Brendan O'Leary | Product Marketing Manager: William Chia | Backend Engineering Manager: Elliot Rushton | Frontend Engineering Manager: John Hampton (Interim) | Test Automation Engineer: Zeff Morgan | Product Designers: Dimitrie Hoekstra, Mike Nichols | Content Marketing: Aricka Flowers | Technical Writer: Evan Read | Internal Customers: Quality Department, UX Department, Infrastructure Department

Testing group

Product Manager: Brendan O'Leary (Interim) | Product Marketing Manager: William Chia | Backend Engineering Manager: Elliot Rushton | Frontend Engineering Manager: John Hampton (Interim) | Test Automation Engineer: Zeff Morgan | Product Designers: Dimitrie Hoekstra, Mike Nichols | Content Marketing: Aricka Flowers | Technical Writer: Evan Read | Internal Customers: Quality Department, UX Department, Infrastructure Department, Engineering Department

Package stage

Package group

Product Manager: Tim Rizzi | Product Marketing Manager: William Chia | Backend Engineering Manager: Darby Frey (Interim) | Frontend Engineering Manager: John Hampton | Product Designers: Amelia Bauerly, Sarah Voegeli | Content Marketing: Aricka Flowers | Technical Writer: Axil | Internal Customers: Distribution Team, Infrastructure Department

Release stage

Core Release group

Product Manager: Jason Lenny (Interim) | Product Marketing Manager: William Chia | Backend Engineering Manager: Darby Frey | Frontend Engineering Manager: John Hampton | Product Designers: Rayana Verissimo, Mike Nichols | Content Marketing: Aricka Flowers | Technical Writer: Marcia Ramos | Internal Customers: Delivery Team, Distribution Team, Gitter, Security Department, Tech Writers

Supporting Capabilities group

Product Manager: Corrina Stasik | Product Marketing Manager: William Chia | Backend Engineering Manager: Darby Frey | Frontend Engineering Manager: John Hampton | Product Designers: Rayana Verissimo, Mike Nichols | Content Marketing: Aricka Flowers | Technical Writer: Marcia Ramos | Internal Customers: Distribution Team, Gitter, Security Department, Tech Writers, Marketing Department, UX Department

Ops sub-department

Configure stage

Auto DevOps & Kubernetes group

Product Manager: Daniel Gruesso | Product Marketing Manager: William Chia | Backend Engineering Manager: Dylan Griffith | Frontend Engineering Manager: Tim Z (Interim) | Test Automation Engineer: Dan Davison | Product Designer: Taurie Davis | Content Marketing: Aricka Flowers | Technical Writer: Evan Read | Internal Customers: Quality Department, Site Availability Engineering, Site Reliability Engineering, Engineering Department

Serverless & PaaS group

Product Manager: Daniel Gruesso (Interim) | Product Marketing Manager: William Chia | Backend Engineering Manager: Dylan Griffith | Frontend Engineering Manager: Tim Z (Interim) | Test Automation Engineer: Dan Davison | Product Designer: Taurie Davis | Content Marketing: Aricka Flowers | Technical Writer: Evan Read | Internal Customers: Quality Department, Site Availability Engineering, Site Reliability Engineering

Monitor stage

APM group

Product Manager: Kenny Johnston (Life Support) | Product Marketing Manager: William Chia | Support: Cody West | Backend Engineering Manager: Seth Engelhard | Frontend Engineering Manager: Clement Ho | Product Designers: Amelia Bauerly, Sarah Voegeli | Content Marketing: Aricka Flowers | Technical Writer: Axil | Internal Customers: Infrastructure Department, Engineering Department

Debugging and Health group

Product Manager: Sarah Waldner | Product Marketing Manager: William Chia | Support: Cody West | Backend Engineering Manager: Seth Engelhard | Frontend Engineering Manager: Clement Ho | Product Designers: Amelia Bauerly, Sarah Voegeli | Content Marketing: Aricka Flowers | Technical Writer: Axil | Internal Customers: Infrastructure Department, Engineering Department

Secure sub-department

Secure stage

Static Analysis group

Product Manager: Kenny Johnston (Life Support) | Product Marketing Manager: Cindy Blake | Backend Engineering Manager: Thomas Woodham | Frontend Engineering Manager: Lukas Eipert (Interim) | Test Automation Engineer: Aleksandr Soborov | Product Designers: Andy Volpe, Tim Noah, Kyle Mann | Content Marketing: Erica Lindberg | Technical Writer: Axil | Internal Customers: Security Department, Engineering Department

Dynamic Analysis group

Product Manager: Kenny Johnston (Life Support) | Product Marketing Manager: Cindy Blake | Backend Engineering Manager: Thomas Woodham | Frontend Engineering Manager: Lukas Eipert (Interim) | Test Automation Engineer: Aleksandr Soborov | Product Designers: Andy Volpe, Tim Noah, Kyle Mann | Content Marketing: Erica Lindberg | Technical Writer: Axil | Internal Customers: Security Department, Engineering Department

Software Composition Analysis group

Product Manager: Kenny Johnston (Life Support) | Product Marketing Manager: Cindy Blake | Backend Engineering Manager: Olivier Gonzalez (Interim) | Frontend Engineering Manager: Lukas Eipert (Interim) | Test Automation Engineer: Aleksandr Soborov | Product Designers: Andy Volpe, Tim Noah, Kyle Mann | Content Marketing: Erica Lindberg | Technical Writer: Axil | Internal Customers: Security Department, Engineering Department

Defend sub-department

Defend stage

Runtime Application Security group

Product Manager: Kenny Johnston (Life Support) | Product Marketing Manager: Cindy Blake | Backend Engineering Manager: Thomas Woodham | Frontend Engineering Manager: Lukas Eipert (Interim) | Product Designers: Andy Volpe, Tim Noah, Kyle Mann | Content Marketing: Erica Lindberg | Technical Writer: Axil | Internal Customers: Security Department, Infrastructure Department

Threat Management group

Product Manager: Kenny Johnston (Life Support) | Product Marketing Manager: Cindy Blake | Backend Engineering Manager: Thomas Woodham | Frontend Engineering Manager: Lukas Eipert (Interim) | Product Designers: Andy Volpe, Tim Noah, Kyle Mann | Content Marketing: Erica Lindberg | Technical Writer: Axil | Internal Customer: Security Department

Application Infrastructure Security group

Product Manager: Kenny Johnston (Life Support) | Product Marketing Manager: Cindy Blake | Backend Engineering Manager: Thomas Woodham | Frontend Engineering Manager: Lukas Eipert (Interim) | Product Designers: Andy Volpe, Tim Noah, Kyle Mann | Content Marketing: Erica Lindberg | Technical Writer: Axil | Internal Customers: Security Department, Infrastructure Department

Growth sub-department

Growth stage

Internal Customers: Sales Department, Marketing Department, Product Department, Finance Department

Activation group

Product Manager: Jeremy Watson (Interim) | Engineering Manager: Bartek Marnane (Interim)

Adoption group

Product Manager: Jeremy Watson (Interim) | Engineering Manager: Bartek Marnane (Interim)

Upsell group

Product Manager: Jeremy Watson (Interim) | Engineering Manager: Bartek Marnane (Interim)

Retention group

Product Manager: Jeremy Watson (Interim) | Engineering Manager: Bartek Marnane (Interim)

Enablement sub-department

Enablement stage

Distribution group

Product Manager: Eric Brinkman (Interim) | Product Marketing Manager: William Chia | Support: Diana Stanley | Backend Engineering Manager: DJ Mountney (Interim) | Frontend Engineering Manager: Clement Ho | Technical Writer: Axil | Internal Customers: Quality Department, Infrastructure Department, Customer Success

Fulfillment group

Product Manager: Luca Williams | Product Marketing Manager: John Jeremiah | Backend Engineering Manager: James Lopez (Interim) | Frontend Engineering Manager: Dennis Tang (Interim) | Content Marketing: Suri Patel | Technical Writer: Evan Read | Internal Customers: Sales Department, Marketing Department, Product Department, Customer Success

Geo group

Product Manager: Fabian Zimmer | Product Marketing Manager: John Jeremiah | Backend Engineering Manager: Rachel Nienaber | Frontend Engineering Manager: André Luís (Interim) | Technical Writer: Evan Read | Internal Customer: Infrastructure Department

Memory group

Product Manager: Eric Brinkman (Interim) | Product Marketing Manager: Ashish Kuthiala (Interim) | Backend Engineering Manager: Chun Du (Interim) | Frontend Engineering Manager: Chun Du (Interim) | Content Marketing: Erica Lindberg | Technical Writer: Mike Lewis | Internal Customers: Quality Department, Infrastructure Department

Ecosystem group

Product Manager: Eric Brinkman (Interim) | Product Marketing Manager: Ashish Kuthiala (Interim) | Backend Engineering Manager: Chun Du (Interim) | Frontend Engineering Manager: Chun Du (Interim) | Content Marketing: Erica Lindberg | Technical Writer: Mike Lewis | Internal Customers: Alliances Department, Customer Success

Maturity

Not all categories are at the same level of maturity. Some are just minimal and some are lovable. See the category maturity page to see where each category stands.

Solutions

GitLab also does the things below that are composed of multiple categories.

  1. Software Composition Analysis (SCA) = Dependency Scanning + License Management
  2. Application Performance Monitoring (APM) = Metrics + Tracing + Real User Monitoring (RUM)

Other functionality

This list of other functionality so you can easily find the team that owns it. Maybe we should make our features easier to search to replace the section below.

Other functionality in Manage

Control group

Framework group

Other functionality in Plan

Other functionality in Create

Other functionality in Verify

Other functionality in Secure

Other functionality in Monitor