Discover the Jobs a Solution Supports
That’s the wrong question to ask. People have Jobs, and the products enable those jobs along a number of dimensions like speed, accuracy, effort, etc. If we ask instead “What jobs does this product enable?” that’s much closer to what we want to know, especially if we already have a product.
When AI started to get hyped up, I was already deeply into it building models that I’ve always felt took too much time and money…and where there was scarce experience. Because I was immersed in this investigative process I never really went through stages of grief. I saw it as an enabler to help find better ways to work with my clients. Here’s a piece I wrote about finding Jobs with AI in response to someone that was somewhere in the 5 stages of grief. I look at the jobs of…
- a Q-Tip Cotton Swab
- a Pedicle Screw
The Prompt
I sure hope you’re not too upset when you see how simple this is. But don’t worry, my other topics are much more complicated, but this is still crucial because it will help you begin to learn the prompt engineering process.
Find the Job(s) a Product (or Solution) Enables
I am a heavy user of variables. This allows me to reuse the prompt with different inputs, and I can do this within the same chat by simply changing one variable and hitting Enter. I wrap the variable within the prompt in double curly brackets. The variables being used in this prompt are basic:
- {{end user}} - by providing this instruction, we are giving the AI context as to who is performing the job.
- {{product}} - this is the product we are investigating. In the essay I linked to above, I used Q-Tips and Pedicle Screws for the two separate outputs. Obviously, the end user for the latter was a spinal surgeon.
- {{n}} - this allows me to instruct the AI to generate the exact number of outputs that I’m looking for. AI has no way to prioritize data like this (although there are some interesting experiments) so it’s up to us to generate the coverage we need. We can then refine it as needed as it’s always easier to refine than it is to define.
Below I’m going to itemize the points I use in the prompt and explain them. Then I’ll give you a cut and paste version since I don’t generally write them in separate lines
BEGIN!
Act as {{end user}} who is using a(n) {{product}}.
Assigning Roles: this is a technique that can be used style the output or improve accuracy. In this case, I’m injecting the {{end user}} as a variable as well as the {{product}}. So, “Act as a spinal surgeon who is using a pedicle screw”
I do not want to know what they are doing with the product.
I want to know what they could be ultimately trying to accomplish with the product.
For example, if the product is a hammer I don't want to know that they are pounding a nail, I want to know what they are building.
Information: This was my initial approach to helping the AI to make the distinction between what and why? We don’t want to know what an end user is doing “hammering a nail” we want to elevate the focus to why “building a deck”
If the product is a banana, I don't want to know that they are going to eat it, I want to know if they are planning a meal, or need a snack to tide them over until their next meal.
If they purchase a car, I want to know all of the possible things they might be trying to accomplish with it. We're going to call these things they are trying to accomplish Jobs-to-be-Done.
Instruction: We eventually move from information to instruction. We give it that last example and then instruct it to consider the accomplishments a Job to be Done.
I'd like you to generate a list of {{n}} of these jobs.
Instruction: This is where I tell it what to output
Explain each job step, step by step, while adhering to the following explanation format. Make the explanations as rich as possible.
Precede each explanation with the text "The ability to". Append the complete explanation to the job step, separated by a dash.
A job should begin with a verb ending in "ing".
Do not use general terms like "Managing" at the beginning because they are not discrete. Output the job name in bold.
Instruction and Formatting: Telling the AI to think though things step-by-step is a trick to get it to think sequentially and logically. A rich explanation, what to append on the front of the explanation, a job should begin with a verb in the gerund form (ing), and instruct it not to use mushy words that don’t have a discrete output, e.g., what does it mean when something is managed? Output the Job name in bold. Much of these can be described using the following example 👇 as AI can run into issues interpreting textual instructions
Example Format:
- Searing Meat - The ability to create a caramelized crust on the exterior of a meat cut by applying high heat quickly. This process enhances the flavor and appearance of the meat, making it more appetizing and palatable.
Examples: this is a very simply example of what I want the outputted list to look like. I’ve found this to be far more powerful than text in situations where you can describe something visually.
Always output in markdown
Instruction: I always use this instruction because I’m cutting and pasting my results into a platform that uses markdown for formatting
End user: Product: n: 10
Variables: The AI is intelligent enough to match these statements and values to the bracketed variables I used within the prompt.
Putting it all together
You can take the following text, paste it into ChatGPT, update the variables as desired, and then hit Enter
Act as {{end user}} who is using a(n) {{product}}. I do not want to know what they are doing with the product. I want to know what they could be ultimately trying to accomplish with the product. For example, if the product is a hammer I don't want to know that they are pounding a nail, I want to know what they are building. If the product is a banana, I don't want to know that they are going to eat it, I want to know if they are planning a meal, or need a snack to tide them over until their next meal. If they purchase a car, I want to know all of the possible things they might be trying to accomplish with it. We're going to call these things they are trying to accomplish Jobs-to-be-Done. I'd like you to generate a list of {{n}} of these jobs.
Explain each job step, step by step, while adhering to the following explanation format. Make the explanations as rich as possible. Precede each explanation with the text "The ability to". Append the complete explanation to the job step, separated by a dash. A job should begin with a verb ending in "ing". Do not use general terms like "Managing" at the beginning because they are not discrete. Output the job name in bold.
Example Format:
1. ************************Searing Meat************************ - The ability to create a caramelized crust on the exterior of a meat cut by applying high heat quickly. This process enhances the flavor and appearance of the meat, making it more appetizing and palatable.
Always output in markdown
End user:
Product:
n: 10