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

Professional Services

Professional Services Handbook

The Professional Services team at GitLab is a part of the Customer Success department. Professional Services team members ensure solution success by accelerating time to value to drive adoption and support product revenue growth. We do this through deivering product services, operational consulting services, and strategy consulting services.


Accelerate our customers' DevOps transformation by delivering successful customer outcomes with tangible business value


Why GitLab Professional Services?

We have chosen to have a Professional Services offering at GitLab for several reasons, including benefits to both GitLab and our customers.

Benefits to our customers

Having a Professional Services team benefits our customers in the following ways:

Benefits to GitLab

Having a Professional Services team benefits GitLab and our business model and strategy in the following ways:

How will we deliver?

We deliver on our Mission and Goals through two methods:

  1. Direct to customers delivered via GitLab team-members as described in our professional services offerings
  2. Partner delivered to allow us to leverage partners in order to:
    • Ensure we have local coverage globally
    • Complete services offerings
    • Create a partner revenue stream
    • Partner delivered services
    • Contracted delivery resources
    • Allow us to deliver and develop IP

Roles and Responsibilities

Name Role
Arani Bhavadeep Professional Services Engineer
Robert Clark Public Sector Manager, Customer Success
Syeda Firdaus Professional Services Engineer
Adriano Fonseca Sr. Professional Services Engineer
Michael Leopard Federal Professional Services Engineer
Mike Lindsey Professional Services Engineer
Michael Lutz Sr. Director, Global Professional Services
Kendra Marquard Sr. Technical Instructional Designer, Customer Education
Jo Marquez Professional Services Engineer
Glenn Miller Professional Services Engineer
Jordan Ng Professional Services Engineer
Dan Peric Sr. Professional Services Engineer
Nicki Peric Professional Services Engineer
Petar Prokic Professional Services Engineer
Ed Slatt Sr. Professional Services Engineer
David Tacheny Manager, Professional Services
Chris Timberlake Sr. Professional Services Engineer
Laci Videmsky Sr. Professional Services Engineer
Kevin Vogt Professional Services Engineer
Allison Walker Sr. Project Manager (PMO)
Christine Yoshida Practice Manager, Education Services


Long Term Profitability Targets

The long term gross margin target for Professional Services is 35%.

Services Attach Rate for Large Accounts

The percent of Large Parent Accounts that have Professional Services associated with it or any linked SFDC Accounts. GitLab's target is above 80%.

How to order Professional Services

There are two methods for ordering professional services depending on whether the service is standard or custom.


graph LR; a["Standard offering?"]-- Yes ---b["Add SKU to quote"]; a-- No ---c["SA starts SOW w/Calculator"]; c-->d["SA works w/PSE to finalize SOW"]; z["Send customer proposal"]; d-->z; b-->z;

For more details on selling professional services, see Selling Professional Services.

For information on how to position professional services to your customer, see Positioning Professional Services.

Lead time for starting

Often we are asked "what is your lead time for getting started with a project" or a customer may have a specific timeframe in which they want a project delivered.

As there may be many projects and proposals in flight at any time, there are a few rules we use when prioritizing and scheduling engagements:

SOW creation and approval

When scoping custom SOWs, the Professional Services team partners with the SA to create a custom engagement that will help meet the customer's needs. Custom offerings must be reviewed and approved by the Director of Professional Services.

SOW creation

The GitLab Professional Services team is responsible for maintaining the GitLab SOW Calculator. The production of new statements of work for customer proposals is owned by the Solutions Architects.

To obtain a statement of work, start with an SOW from the Services Calculator which will open a new SOW issue on the SOW Proposal Approval board. Follow the specific SOW process for a complete explanation.

We prefer customers to mark up our agreement and SOW template if they request changes. If they require the use of their services terms or SOW, please contact the Professional Services Engineering group.

SOW Proposal Approval Board

SOW proposal board screenshot

The SOW Proposal Approval Board is used to approve all SOWs before sending them to a customer.

The labels are (from left to right):

NOTE: Issues that have not been updated by a Solutions Architect in the last 30 days will be automatically closed.

Services Delivery

Implementation Plan

Each services engagement will include an Implementation Plan compiled based on the Statement of Work and other discussions the Professional Services team has with the customer. The Professional Services team also maintains the SOW template located at this internal link.

Each services engagement will have a google sheet that shows the contracted revenue and the estimated cost measured in hours or days of effort required to complete the engagement. The cost estimate must be completed prior to SoW signature and attached to the opportunity in SFDC.

Professional Services Workflows

For details on the specific Professional Services plays, see Professional Services workflows.

Professional Services Offerings


  1. Levels: There are three levels of service that represent the different services buyer personas.
  2. Categories: Each level has one or many categories of service that define a set of related services either by type or product area.
  3. Offering: Each category has one or many offerings that is a single consumable unit that has all of the required pieces to make a complete service offering.
  4. Offering Variants: Each offering may have one or many variants that allow it to be deployed in different ways.

Each offering at least has a variant called “standard” or “custom” to define if it can be delivered with a standard SKU / out of the box SOW. For example, enterprise versus commercial or remote versus on-site or one-time versus with an embedded engineer.

Levels of Service

There are three levels of service we talk about when it comes to classifying our service offerings.

Product Services

Installing, scaling & using the tool(s)

Product services comprise services geared toward GitLab the software itself. Getting a customer up and running with GitLab in a secure, highly-available environment to ensure their success with the application.

For example:

See Professional Services Offerings for a detailed listing of offerings.

Planned Offering Maturity

product services slide 1

product services slide 2

Note: Some offerings here represent future plans. They will be turned into dynamic items using services.yml to remove the need for a screenshot.

Operational Consulting Services

Processes aligned with value-added changes

Operational Consulting Services help teams on the path towards full DevOps maturity adopt industry best-practices and advanced use cases of GitLab to accelerate their time to market. These services live one level above Product Services in the sense that they are less focused on the tool. Operational Consulting Services are more focused on the processes in place that helps make the tool a success across a large enterprise.

For example:

See professional services offerings for a detailed listing of offerings.

Planned Offering Maturity

operational consulting services slide 1

operational consulting services slide 2

Note - some offerings here represent future plans. They will be turned into dynamic items using services.yml to remove the need for a screenshot.

Strategic Consulting Services

Adapt people’s way of thinking to the new paradigm

Strategic Consulting Services live one level above Operational Consulting Services as they focus on organization changes and changes to the people and their behavior. These changes are required to get the full value from a DevOps transformation. We will provide some services in this area though the complete offering will be provided in collaboration with our partner ecosystem.

For example:

See professional services offerings for a detailed listing of offerings.

Planned Offering Maturity

strategic consulting services slide 1

Note - some offerings here represent future plans. They will be turned into dynamic items using services.yml to remove the need for a screenshot.

Offering Maturity Model

The services maturity framework provides for 5 maturity levels for offerings: planned, minimal, viable, complete and lovable.

Complete Offering

Required Items for Complete maturity:

Professional Services SKUs

Some services, such as training, quick-start implementation, and other out-of-the-box implementation packages can be sold as a SKU which has a fixed price and fixed SOW associated.

Current SKUs

Currently, the following services can be sold as a SKU standard offering. These offerings can be added to any quote, and reference a standard SOW. There is no need for the customer to sign a custom SOW in order to purchase these services. These offerings can be delivered remotely or onsite with the customer. One class SKU is considered a "session". The sessions will generally be a minimum of 6 including breaks, Question & Answers, and Labs. In the case of onsite delivery, travel and expenses (T&E) is passed on to the customer based on our Professional Services terms and sponsored travel policy

Creating a new Professional Services SKU

To create a new SKU, the following are the requirements:

After those requirements are met, the process to create a new SKU is:

  1. Create an issue in the Finance issue tracker referencing the above requirements
  2. Review with the Finance Business Partner for Sales
  3. Make any require changes
  4. Submit to VP of Customer Success for approval
  5. Submit to CFO, CRO and CEO for approval
  6. Once approved, submit to Accounting to create SKU in Zoura (note: Accounting does not create a SKU number but does add the offering to the product catalog)
  7. Once it is added to the catelog, make up a new SKU number for the offering and add it to the Current SKUs listing above by editing the services.yaml file and creating a merge request.

Professional Services team engagement and communication

Contacting Professional Services

At GitLab, Professional Services is part of the Customer Success department. As such, you can engage with Professional Services by following the guidelines for engaging with any Solutions Architect. This process ensures that the Customer Success department as a whole can understand the inbound needs of the account executive and our customers.

You can also reach the group via the #professional-services Slack Channel.

Scheduling Professional Services

For scheduling specific customer engagements, we currently are slotting implementations while our group grows to support the demand for services. If you have a concern about scheduling the engagement, this should be discussed at the Discovery phase. If you want to check availability, ask in the #professional-services Slack Channel. In no case should you commit to dates before receipt of agreements, P.O., etc.

As a Professional Services Engineer, if an engagement has been approved, follow this process to get the engagement scheduled.

  1. When a new issue comes in, create an event on the "Professional Services Engagement" calendar.
  2. In the calendar event, invite the team email address.
  3. Include a link to the issue in the Calendar event.
  4. Change the calendar event coloring to be red. This will help show no resource has been assigned to it yet.
  5. When a team member accepts the engagement, the team member should replace the team email address with their individual email on the invite list.
  6. Add the customers email to the invite list.
  7. Change the red calendar coloring to green.

It is recommended to Professional Services Engineers to integrate their PTO Ninja to "Professional Services Engagement" calendar because this improves the Resource Management View over the Engineers availability. You can set up this integration following the steps below:

  1. On PTO Ninja type /ninja settings;
  2. From the Profile Settings dropbox select Calendar; Selecting Calendar
  3. On PTO Ninja Settings click in Add to add the calendar; Selecting Calendar
  4. Input the Calendar ID

On PTO Ninja it is possible to classify ooo (Out of Office) in the following categories:

Obs: Classifying the ooo accordingly, you won't be messing up with your vacation days counter.

If the engagement needs to be rescheduled, work with the team to find the next available time, and move the Calendar event to the newly selected time.

Instructor Communications with Customers

Professional Services Engineers who will be delivering GitLab Education Services courses can use the following instructor planning and communication tools to ensure smooth interactions with customers:

Professional Services Engineering Issue Board

The Professional Services Issue Board is available here. This board contains everything that the group is working on - from strategic initiatives to SOW writing, all group activity is available here.

Issues are created for all work by Professional Services.

Epic Categories

3 types of project tracking Labels

Time Tracking

The Professional Services team will track all hours. Detailed and accurate time tracking records of hours is essential to ensure revenue can be recognized based upon percentage completion of a project scope as outlined in a Statement of Work ("SOW"), and this data is used in the calculation of gross margin.

Billable hours represent work hours that a staff member reports as being aligned to a specific SOW. The format for daily time tracking for each team member is shown below, and should be reviewed by the professional services leadership for approval and sign-off before being submitted each Monday (for the week prior) to the Finance Business Partner for Sales. Rounding to the nearest hour is acceptable, and please ensure data is recorded in numeric format without the use of text strings such as "hrs".

Manager Approved Y/N Finance Accepted Y/N        
Name SOW 1 SOW 2 SOW 3 SOW 4 (etc…) Total Billable Hrs
PSE 1 hours spent X.X X.X X.X X.X
PSE 2 hours spent X.X X.X X.X X.X
PSE 3 hours spent X.X X.X X.X X.X
Time Tracking workflow

Project Completion

At the conclusion of the Statement of Work the Professional Services Engineer will prepare a cost vs actual analysis. This analysis will be filed in SFDC. When filed in SFDC the Professional Services Engineer will @mention the Controller and Finance Business Partner, Sales in SFDC Chatter.

SOW Issues

When requesting an SOW, Account Executives or Professional Services team members should use the SOW issue template, which automatically shows the required information as well as labels the issue appropriately.

Strategic Initiatives

Strategic Initiatives are undertaken by the Professional Services team to leverage team member time in a given area of the Customer Success Department. This can include increased documentation, better training resources or program development.