How GitLab Applies The "Jobs-to-be-Done" Framework
A Framework for Customer Needs & Business Strategy
GitLab has its entire ICP (Ideal Customer Profile) & personas outlined and defined in public. It’s a beautiful piece of work and an example of how to align the entire company & empower sales & marketing teams with the “Jobs-to-be-Done” (JTBD) framework.
It can also be used be used to define company strategy, which Jack Dorsey, Founder of Twitter, did when he returned to the company in 2015:
Jack Dorsey, Founder of Twitter, explains why he used it in 2015 when he returned to the company:
“It cleared something up that was missing for me, which was how do we plan and build around a customer-centric framework that would focus the organization on why our customers are coming to us in the first place” - Jack Dorsey
The result of this is what he described as the company's strategy in Twitter's second-quarter earnings call of 2015:
We intent to build an ecosystem of connected features and services focused on serving three core jobs: news, which is happening now; discussion, conversation, and helping people get paid." - Jack Dorsey
He developed this strategy by following these steps:
Understand the full set of jobs for which Twitter was already being "hired."
Prioritize the jobs Twitter wanted to focus on.
Communicate the results and use them to allocate resources.
In this post, we’ll go into greater detail and go over:
The framework
Why it matters
JTBD applied at GitLab
ChatGPT prompt you can steal
The Framework
Clayton Christensen, who wrote “Crossing the Chasm”, defines the framework at his institute as the following:
It’s a framework to think about customer behavior and priorities, breaking them down by framing consumption as “jobs” to be accomplished. The job architecture is made up of three levels: the job itself, the experiences in purchase, and the integration of resources.
A framework for categorizing, defining, capturing, and organizing the inputs that are required to make innovation predictable.
Before diving into these “jobs”, you first need to define who your customer is. There are generally 3 types:
The job executor - the person who ‘hires’ the product to the ‘job’ done.
The buyer - the person responsible for the financial purchase & decision.
The product lifecycle support team - the groups of people who support the operations of the product such as installation, integration, maintenance, etc.
These people have 5 types of jobs that need to get done:
Job Executor:
The core functional job
Related jobs
Emotional jobs
The Buyer:
Purchase decision job
The Support Team:
Consumption chain jobs
We then finally add the outcomes for each section:
From a sales perspective, the framework helps sellers understand how to tailor value propositions and metrics to the users, buyers, and supporting teams.
Why it Matters
People don’t buy products or services; they hire them to do a job.
The JTBD framework helps align the entire company:
Product - what to build & what matters most
Marketing - how to position & message to each type of job
Sales - how to talk about value prop, metrics, outcomes
Understanding the “job” helps allocate resources to what matters most.
Consistent messaging to the right people can reduce customer acquisition costs and help to build stronger champions.
The approach often leads to new insights such as risks, opportunities, and competitive environment through a wider aperture.
Let’s dive into #4 with an example:
How GitLab uses JTBD:
The structure of their personas and incorporation of JTBD is the following:
Each persona in GitLab’s persona page should have the following traits:
Job Summary - Should include major focus areas and a general description of skills and responsibilities
Alternative Titles
Motivations - It’s suggested to keep to this format: When [situation], I want [feature] so that I can [task]
Frustrations - A frustration should focus around a common blocker to their responsibilities
Jobs to be Done
(Optional)
Personal Skills & Traits - Positive attributes that give life and empathy to your user persona
Key Tools - Important software that helps the user complete their tasks
Workflows - A series of steps the user will normally take to complete their tasks
Collaborative Teams - Teams in their organization that they may have overlap in responsibilities with or are dependent on in their workflow
The following are some examples:
GitLab takes the framework further by then mapping the personas and their jobs to the different stages of the software development lifecycle. This gives the right context so you can talk to a person about how their specific job is accomplished within their role in the software development process.
ChatGPT Prompt to Steal: Persona Buildout
Instructions: Copy and paste the full text below into ChatGPT and replace the [ ] to specify your directions.
I'm a [Your Title (ex. Product Marketer] and I'm using the "Jobs to be done" framework to build out user personas to [Purpose (ex. educate the sales team)]. Each user persona should include the following as the output:
1. Job summary
2. Titles of who this persona typically reports to
3. Alternative titles of the persona
4. Motivations of the persona
5. Frustrations of the persona
6. The jobs that the persona needs to get done
7. Typical tools or software that is used by the persona
For #6, include 3-5 examples. Each example should have the following:
1. The job
2. Description of the job
3. Metrics for measuring the success of that job
4. The challenges to achieve the job or improve the metric Do this for the persona [Persona (ex. “Cloud Architect”)]
Then create a table that summarizes all of the information.
What I’m Reading
How Twitter Applied the “Jobs to Be Done” Approach to Strategy - HBR
Jobs-to-be-Done: A Framework for Customer Needs - Tony Ulwick
What is an Ideal Customer Profile; 5 Benefits of Clearly Defining ICP & Personas - Unusual Ventures
Success is Hiding in Your Customers Untold Stories - Christensen Institute
Enjoy the post? Subscribe to learn more about frameworks, strategies, and how new technologies are brought to market.
You can find me on: