Marketing Groups and Projects guidelines

Background

GitLab helps to organize teams and work through a hierarchy of Groups and Projects.

Key things to know

Groups can contain other groups (subgroups) and projects.

groups and subgroups

Groups and Projects are both similar and fundamentally different, which can be confusing when using GitLab

Feature Groups Projects Comments
Epics X Collection of related sub epics and issues in a strategic theme
Roadmaps X Graphical view of epics over time
Milestones X X Burndown charts of a time boxed period
Issue Insights X X Analytical view of issues and merge requests
Labels X X Flexible ability to tag issues, epics and Merge Requests
Issue Lists X X Lists of all issues, enables bulk updates
Issue Boards X X Visual boards of issues grouped in lists
Issues X An item of work, a deliverable, a request, a discussion
Repositories X A set of files that are under version control
Merge Requests X The discussion/management of change to files under version control
CI Pipelines X Automation of build and test of files / code that is being changed

Graphically, this illustrates the difference between groups and projects:

groups vs projects

Known limitations

  1. Epics can only be created at the group level, not at the project level.

Guidelines

Marketing GitLab Structure

In Marketing, we have diverse teams, where some need to develop demos and code, and others need to manage complex projects such as campaigns and large events. In order to support a variety of activities, we are using Sub-Groups to provide flexibility enable the teams to have an area to work and be productive.

graph LR
  A0(["GitLab.com 👥"]):::GRP
  A0 --> A(["Marketing 👥"]):::GRP
  A0 --> A1(["Sales 👥"]):::GRP_NMKTG
  A0 --> A2(["Engineering 👥"]):::GRP_NMKTG
  A0 --> A3(["... 👥"]):::GRP_NMKTG
  A --> B(["Corporate Marketing 👥"]):::GRP
  A --> C(["Growth Marketing 👥"]):::GRP
  A --> D(["Revenue Marketing 👥"]):::GRP
  A --> E(["Demand Generation 👥"]):::GRP
  A --> F(["Product and Solution Marketing 👥"]):::GRP

classDef GRP fill:#D8BFD8, stroke: #333
classDef GRP_NMKTG fill:#F7ECF7, stroke: #333, stroke-dasharray: 5, 5

Marketing Sub Groups and Projects

  • In order to work and manage issues, there must be at LEAST one project under EACH of the Marketing SubGroups.
graph LR
    A(["Marketing 👥"]):::GRP
  A --> B(["Corporate Marketing 👥"]):::GRP
  A --> C(["Growth Marketing 👥"]):::GRP
  A --> D(["Revenue Marketing 👥"]):::GRP
  A --> E(["Demand Generation 👥"]):::GRP
  A --> F(["Product and Solution Marketing 👥"]):::GRP
  B --> BA("Corporate Events ⚙"):::PRJ
  B --> BB("Developer Relations ⚙"):::PRJ
  B --> BC("Corporate Communications ⚙"):::PRJ
  B --> BD("Developer Relations ⚙"):::PRJ
  B --> BE("All-Remote ⚙"):::PRJ
  C --> CA("Global Content ⚙"):::PRJ
  C --> CB("Inbound Marketing ⚙"):::PRJ
  C --> CC("Brand & Digital Design ⚙"):::PRJ
  D --> DA("Sales Development ⚙"):::PRJ
  D --> DB("Field Marketing ⚙"):::PRJ
  D --> DC("Account Based Marketing ⚙"):::PRJ
  D --> DD("Marketing Operations ⚙"):::PRJ
  E --> EA("Marketing Programs ⚙"):::PRJ
  E --> EB("Digital Marketing ⚙"):::PRJ
  E --> EC("Partner & Channel Marketing ⚙"):::PRJ
  F --> FA("Product Marketing ⚙"):::PRJ
  F --> FB("Technical Marketing ⚙"):::PRJ
  F --> FC("Market Research and Customer Insights ⚙"):::PRJ
  F --> FD("Competitive Intelligence ⚙"):::PRJ

classDef GRP fill:#D8BFD8, stroke: #333
classDef PRJ fill:#c4d3d9, stroke: #333
graph LR
  subgraph legend["Legend"]
    GG(["Group 👥"]):::GRP -.- PP("Project ⚙"):::PRJ
  end
classDef GRP fill:#D8BFD8, stroke: #333
classDef PRJ fill:#c4d3d9, stroke: #333
style legend fill:#FBFBF2, stroke: #b0b0a9
  • As needed, the marketing teams can create additional SubGroups and projects to organize and manage their work.
    • For example of a Marketing SubGroups such as under the Corporate Marketing group
      • Contribute group and
      • Contribute-Workshops group
      • Tech. Evangelism group
      • both subgroups have projects and support management of corporate events.
graph LR
  A(["Marketing 👥"]):::GRP
  A --> B(["Corporate Marketing 👥"]):::GRP
  B --> BA("Corporate Marketing ⚙"):::PRJ
  B --> BB(["Contribute 👥"]):::GRP
  B --> BC(["Contribute Workshops 👥"]):::GRP
  B --> BD(["Tech Evangelism 👥"]):::GRP

classDef GRP fill:#D8BFD8, stroke: #333
classDef PRJ fill:#c4d3d9, stroke: #333
graph LR
  subgraph legend["Legend"]
    GG(["Group 👥"]):::GRP -.- PP("Project ⚙"):::PRJ
  end
classDef GRP fill:#D8BFD8, stroke: #333
classDef PRJ fill:#c4d3d9, stroke: #333
style legend fill:#FBFBF2, stroke: #b0b0a9