CEO Shadow Program

Introduction

The CEO Shadow Program at GitLab is not a job title but a temporary assignment to shadow the CEO. The shadows will be present at all meetings of the CEO. Like all meetings at GitLab, meetings will begin promptly regardless of shadow(s) attendance. GitLab is all remote but the CEO has in-person meetings with external organizations. Therefore, you will stay in San Francisco during the entire rotation and travel with the CEO.

Goal

The goal of the shadow program is to give current and future directors and senior leaders at GitLab an overview of all aspects of the company. This should enable leadership to better perform global optimizations. Achieving this overview will come from context gained in meetings attended and learning while performing short-term tasks from across the company. The program will also create opportunities for the CEO to develop relationships with team members across the company and to identify challenges and opportunities earlier. As an additional benefit, Shadows will often connect with one another, developing cross-functional relationships as a positive externality of the Program.

E-group offsite

Intro

The E-group offsite happens every quarter for four days.

Goal

The goal is to have 25 or 50 minute discussions around topics that benefit from in-person dialogue, require more context and where the E-Group is likely to disagree. The agenda should include discussions that are:

  1. Top of mind
  2. Actionable
  3. Impactful to the trajectory of the company
  4. Cross-functional

    KPIs

    What are KPIs

    Every part of GitLab has Key Performance Indicators (KPIs). Avoid the term metric where we can be more explicit. Use KPI instead. A function’s KPIs are owned by the respective member of e-group. A function may have many performance indicators (PIs) they track and not all of them will be KPIs. KPIs should be a subset of PIs and used to indicate the most important PIs to be surfaced to leadership.
    The KPI definition should be in the most relevant part of the handbook which is organized by function and results. In the definition, it should mention what the canonical source is for this indicator. Where there are formulas, include those as well. Goals related to KPIs should co-exist with the definition. For example, “Wider community contributions per release” should be in the Community Relations part of the handbook and “Average days to hire” should be in the Recruiting part of the handbook.

    List of KPIs

    The data team maintains a list of GitLab KPIs and links to where they are defined.

    Layers of KPIs

    We have KPIs at many different layers.
    KPIs can only exist at the Company (e.g. GitLab) layer if it exists at the functional layer. In other words, GitLab KPIs are duplicates of KPIs of the executives. Not all functional KPIs are GitLab KPIs but all GitLab KPIs are functional KPIs.
    As GitLab grows, this will also be true throughout the layers. Not all departmental KPIs will be functional KPIs but all functional KPIs will be department KPIs. This will cascade throughout the organization, as all job families will have performance indicators associated with them.
    The KPI Index captures the company, functional, and departmental KPIs since these are the three highest layers.
    The only exception to this is where the filter on a KPI may change. For example, the GitLab KPI may be “Hires vs Plan” but the Engineering KPI may be “Engineering Hires vs Plan”. The logic is the same, but the filter changes.

    Parts of a KPI

    A KPI or metric consists of multiple things:

  5. Definition: how we calculate it

  6. Target: What we strive to be above, e.g. IACV has a target
  7. Cap: What we strive to be below, e.g. Turnover has a cap
  8. Job family: link to job families with this as a performance indicator
  9. Plan: what we have in our yearly plan
  10. Commit: the most negative it will be
  11. 50/50: the median estimate, 50% chance of being lower and higher
  12. Best case: the most positive it will be
  13. Forecast: what we use in our rolling 4 quarter forecast
  14. Actual: what the number is

    What is public?

    In the doc ‘GitLab Metrics at IPO’ are the KPIs that we may share publicly. All KPIs have a public definition, goal, and job family links. The actual performance an various estimates can be:

  15. Live reported

  16. Quarterly reported
  17. Private

    OKRs

    What are OKRs?

    OKRs stand for Objective- Key Results and are our quarterly objectives. They lay out our plan to execute our strategy and help make sure our goals and how to achieve that are clearly defined and aligned throughout the organization. The Objectives help us understand what we’re aiming to do, and the Key Results help paint the picture of how we’ll measure success of the objective. You can use the phrase “We will achieve a certain OBJECTIVE as measured by the following KEY RESULTS…” to know if your OKR makes sense. The OKR methodology was pioneered by Andy Grove at Intel and has since helped align and transform companies around the world.
    OKRs have four superpowers:
  • Focus
  • Alignment
  • Tracking
  • Stretch

We do not use it to give performance feedback or as a compensation review.
The Chief of Staff initaties and guides the OKR process.
OKR resources:

  1. Title: Key result => Outcome
  2. Title: Key result => Outcome
  3. Title: Key result => Outcome

Keep in mind the following:

  1. The => Outcome part is only added after the quarter started.
  2. Each executive has a maximum of 3 objectives.
  3. While OKRs are known for being ambitious or committed, we only have ambitious OKRs.
  4. Each objective has between 1 and 3 key results; if you have less, you list less.
  5. Each key result has an outcome.
  6. The title is of person who is the directly responsible individual.
  7. We use four spaces to indent instead of tabs.
  8. The key result can link to an issue.
  9. The outcome can link to real time data about the current state.
  10. The three CEO objectives are level 3 headers to provide visual separation.
  11. We number them by starting with 1. we can more easily refer to them.

OKRs have numbers attached to them for ease of reference, not for ranking

Levels

We only list objectives prefaced with your role title. We do OKRs up to the team level, we don’t do individual OKRs. Although, an individual might have OKRs if they represent a unique function. For example, individual SDRs don’t have OKRs, the SDR team does. If Legal is one person but represents a unique function, Legal has OKRs. Part of the individual performance review is the answer to: how much did this person contribute to the team objectives? We have no more than six layers in our team structure. Because we go no further than the manager level we end up with a maximum 5 layers of OKRs, but we only include the top 3 levels on this page. The match of one “nested” key result with the “parent” key result doesn’t have to be perfect. The advantage of this format is that the OKRs of the whole company will fit on three pages, making it much easier to have an overview.

Updating

The key results are updated continually throughout the quarter. Every month before the Key Meeting, teams should create an MR to update their Key Results with their status, as well as present their status in the key meeting. In the first month of a new quarter, key results should be updated for the previous quarter. Everyone is welcome to a suggestion to improve any OKR. To update please make a merge request and post a link to the MR in the #okrs channel and at-mention the CEO. At the top of the OKRs is a link to the state of the OKRs at the start of the quarter so people can see a diff.

Replace with epics

When we have a tree view of epics we can use that instead of text.

Schedule

The EBA to the CEO is responsible for scheduling and coordination of the OKRs process detailed below. Scheduling should be completed at least 30 days in advance of the timeline detailed below.
The number is the weeks before or after the start of the fiscal quarter.

  • -5: CEO pushes top goals to this page
  • -4: E-group pushes updates to this page and discusses it in the e-group weekly meeting
  • -3: E-group 50 minute draft review meeting
  • -2: Discuss with the board and the teams
  • -1: CEO reports give a How to achieve presentation
  • +0: CoS updates OKR page for current quarter to be active
  • +2: Review previous and next quarter during the next board meeting

    E-group draft review meeting

    Every executive is expected to bring a draft of their OKRs to the Draft meeting that occurs three weeks prior to the start of the quarter. In this meeting, the e-group discusses any initial concerns, discusses alignment, and highlights any possible dependencies. OKRs will still change but this initaties the process early.

    How to achieve presentation

  1. Detail how you plan to achieve your Key Results. This is not a status update on the previous quarters OKRs but a meeting to detail how you plan to achieve your proposed OKRs for the upcoming quarter.
  2. CEO EBA to schedule 25 minute meeting with the E-group (CEO and functional counterpart required, everyone else optional) 1 week before the new quarter begins.
  3. Have your updated OKRs on the handbook page 24 hours in advance. Use the handbook to drive the conversation.
  4. CEO EBA to link agenda and notes doc to the calendar invite 24 hours in advance. We’ll use this to track questions and action items.
  5. The meeting is fully interactive with questions being asked by other team members.
  6. The meeting will be streamed to YouTube. A private or public stream will be indicated by the presenter to the EBA prior to their scheduled presentation.

    Coordination

    The OKRs are a way to coordinate across the company. For efficient coordination, it is important that you can see an overview early. So please iterate and put your best guess for OKRs in on-time instead of delaying. We can always change an OKR; it is much harder to catch up on coordination time.

    Scoring

    It’s important to score OKRs after the fiscal quarter ends to make sure we celebrate what went well and learn from what didn’t in order to set more effective goals and/or execute better next quarter.

  7. Move the current OKRs on this page to an archive page e.g. 2017 Q3 OKRs

  8. Add in-line comments for each key result briefly summarizing how much was achievede.g.
    • “=> Done”
    • “=> 30% complete”
  9. Add a section to the archived page entitled “Retrospective”
  10. OKR owners should add a subsection for their role outlining…
    • GOOD
    • BAD
    • TRY
  11. Promote the draft OKRs on this page to be the current OKRs

    Critical acclaim

    Spontaneous chat messages from team members after introducing this format:

    As the worlds biggest OKR critic, This is such a step in the right direction :heart: 10 million thumbs up I like it too, especially the fact that it is in one page, and that it stops at the team level. I like: stopping at the team level, clear reporting structure that isn’t weekly, limiting KRs to 9 per team vs 3 per team and 3 per each IC. I’ve been working on a satirical blog post called called “HOT NEW MANAGEMENT TREND ALERT: RJGs: Really Just Goals” and this is basically that. :wink: Most of these are currently just KPIs but I won’t say that too loudly :wink: It also embodies my point from that OKR hit piece: “As team lead, it’s your job to know your team, to keep them accountable to you, and themselves, and to be accountable for your department to the greater company. Other departments shouldn’t care about how you measure internal success or work as a team, as long as the larger agreed upon KPIs are aligned and being met.” I always felt like OKRs really force every person to limit freedom to prioritize and limit flexibility. These ones fix that!

OKRs are stretch goals by default

OKRs should be ambitious but achievable. If you achieve less than 70% of your KR, it may have not been achievable. If you are regularly achieving 100% of your KRs, your goals may not be ambitious enough.
Some KRs will measure new approaches or processes in a quarter. When this happens, it can be difficult to determine what is ambitious and achievable because we lack experience with this kind of measurement. For these first iterations, we prefer to set goals that seem ambitious and expect a normal distribution of high, medium, and low achievement across teams with this KR.

OKRs are what is different

The OKRs are what initiatives we are focusing on this quarter specifically. Our most important work are things that happen every quarter. Things that happen every quarter are measured with Key Performance Indicators. Part of the OKRs will be or cause changes in KPIs.