AI Engineer World's Fair 2026

AI in GTM at Notion — Flora Liu

Flora Liu· Notion21:14

Read the talk

AI in GTM at Notion

Flora Liu explains how Notion joins customer context, shared eligibility rules, durable agent workflows, and human judgment into one go-to-market system—and why the notes that change a sales decision belong in its architecture.

From a talk by Flora Liu

At a glance

Ideas worth remembering

  • Customer context must include the notes that change a decision, such as a lost champion, a legal blockage, or a request to stop contact.

  • Snowflake computes modeled customer entities; DynamoDB serves denormalized profiles and associated artifacts by shared IDs; Notion makes that context usable by reps and agents.

  • Shared eligibility and routing coordinate the next action across channels. Sales-assist agents prepare work for human approval, while prospect form input remains untrusted.

  • Temporal handles workflow retries, deduplication, and resumption. LLM traces help evaluate output quality, and linked engagement outcomes inform subsequent decisions.

  • Start with a strong, repeated human workflow and preserve customer-specific context you can debug. Rent general infrastructure where vendors already do the job well.

From marketing operations to a systems problem

Go-to-market work at Notion ran through a “spider web” of tools, stitched together by customer notes, proposals, and contracts. Flora Liu, an engineer moving from Product Growth to GTM Engineering, describes a small team’s effort to turn that environment into a unified system. A year earlier, she would have called it a marketing operations problem. Now it looked like one of the most interesting distributed systems problems she had worked on. 0:12

The pieces were familiar: lifecycle messaging, product recommendations, sales automation, customer data, and onboarding. What changed was the team’s sense of what it could build. A winter-break video-game project convinced Notion’s CEO that engineering could reach previously unwieldy or expensive problems. Agentic technology also expanded the small team’s ability to execute. Work that had been approached as separate automations became a candidate for a coordinated system.

Notion customers move between self-serve adoption and sales assistance. They experience one journey, while internally that journey crossed disconnected systems. After a call, a rep might switch tools to research the customer and draft a follow-up. Each switch consumed attention that could have gone toward understanding the customer’s problem. The rep’s strength was reading human signals during the buying process; managing the surrounding software imposed another job.

Marketing, sales, and customer operations used different tools and made separate decisions about the same customer. The intended replacement was a programmable, proactive, continuous decisioning system spanning self-serve growth and sales assistance: one place to decide the next step as the customer’s circumstances changed.

Customer records were spread across Salesforce, Gong, Outreach, and other vendors. Product usage lived in Snowflake; years of important context lived in documents and meeting notes. Employees already used MCPs and their own agents, but largely within their departments—“single-player mode.” Automating a small slice of the journey helped locally while leaving cross-department coordination unresolved.

Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

0:12 · section reference included

The facts that make automation dangerous

Connecting the tools exposed three different failure mechanisms:

  • Incorrect identity: Conflicting records could attach a contact to the wrong account. One bad mapping was enough to cost a rep’s trust.
  • Stale context: Every vendor added another hop. Delayed updates meant an automation could act on a customer situation that had already changed.
  • Unread notes: A buying champion leaving, a request to stop contact, or a legal blockage could sit in free-form text while the structured record still looked actionable. 4:34

The last problem changes what counts as useful customer data. Product activity alone cannot tell an automation whether outreach is appropriate. A note about legal or a lost champion can alter the next decision even when the account’s usage remains promising. If the system cannot read and process that note, scaling the workflow also scales the chance of a consequential mistake.

The project brought CX, RevOps, Product, Engineering, and Sales together to find the repeated structure beneath these workflows. The customer journey crossed all of their systems; a department-specific agent could only see part of the job.

Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

4:34 · section reference included

Four questions, with humans and agents in the same loop

Every workflow reduced to four questions, which became four architectural layers:

  • Know: What do we know about the customer? Assemble context the system can trust.
  • Decide: What should happen next? Choose a single next best step.
  • Act: How do we execute safely? Produce a concrete action, such as a lifecycle email, an in-app nudge, or a task for a rep.
  • Learn: Did it work? Observe the outcome and feed it back into decisioning. 5:43

Humans and agents use that same loop and read the same context. Agents gather information, research, draft recommendations, and write artifacts at scale. Humans judge whether a recommendation makes sense, add nuance, choose the next move, and own the customer relationship. An agent becomes another operator in the business system, with a different role from the person reviewing its work.

For sales-assist workflows, the team deliberately kept agents from speaking directly to customers. Humans approve their work by default. A contact-sales form remains untrusted user input even when an agent processes it; inserting a model into the workflow does not grant a prospect’s text permission to control customer-facing actions. 7:23

Eligibility and routing also moved into shared code. Previously, an email tool could have one eligibility check while sales used another. Central definitions for segmentation and signals let product, sales, and engineering consume the same rules. A single classifier routes the customer’s next step, with the intended effect of preventing double sends and keeping communication cohesive.

The ownership decision followed the same reasoning: keep control of customer context and rent general-purpose services. A lean team did not need to build an email vendor or an enrichment service; Notion uses Clay for enrichment. Its understanding of its own customers was the part the team wanted to keep.

Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

5:43 · section reference included

Snowflake computes context; DynamoDB serves it

Snowflake gathers data from the GTM vendors and computes a consolidated customer view. Daily transforms, with real-time processing in some cases, produce modeled, versioned entities: accounts, contacts, workspaces, eligibility, and facts. Ownership and timestamps identify where the information comes from and when it was recorded. 9:01

DynamoDB handles the fast lookup path. The system publishes a denormalized profile that an agent can retrieve by key in milliseconds without joins. Research snippets, summarized notes, and rolling summaries use the same IDs. A downstream reader can fetch structured customer information and generated context together, rather than reconstructing the account across several services.

How does one customer view reach both an agent and a rep? The diagram separates computing the modeled data, serving a profile, and making the context usable in Notion. The shared IDs connect structured records with research and summaries. Fast profile retrieval addresses query latency; freshness still depends on upstream processing, including transforms that run daily.

Notion brings product usage, vendor activity, research reports, and notes into the familiar workspace where GTM teams already work. Reps can investigate an account, ask questions, and initiate actions such as sending to Outreach without opening seven tabs. Humans, workflows, and agents can use the same customer context. In Liu’s phrase, the team is “using Notion to grow Notion.”

How it fits togetherFrom vendor records to a shared customer view

Customer records and activity from the GTM stack.

Snowflake models customer data, DynamoDB provides key-based reads, and Notion makes structured and unstructured context available to the people doing the work.

Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

9:01 · section reference included

A signal turns a customer event into a task

A signal is a customer event important enough to change what should happen next. The examples fall into two groups:

  • Customer-driven signals: A customer hits an AI limit or contacts sales.
  • External signals: A company raises funding, changes its hiring activity, or shifts its technology stack. These let the system identify a possible next step before the customer asks for help. 11:20

The signal service watches the customer profile, checks whether an action is available, assigns its owner, and emits a concrete task. That owner can be a human or an agent. A rep’s task lands in a Notion database, turning an event into work someone can inspect and act on.

A customer without a signal still has a path through the system. A predictive marketing engine recommends relevant product features and automatically sends lifecycle emails, in-app nudges, or other multichannel messages to encourage adoption. This distinguishes the human-approved sales-assist workflow from automated lifecycle communication.

Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

11:20 · section reference included

Research and drafting run inside a durable workflow

The team shadowed its strongest reps and encoded repetitive sales work as a durable multi-agent workflow. Every signal becomes a workflow on Temporal. Enrichment, web search, and draft generation involve network calls that can fail or hit rate limits. Temporal handles retries, deduplication, and resuming where a failure left off, while the team writes the sequential sales logic. One malformed transcript need not take down the whole batch. 12:55

Follow the cold-outbound example from event to reviewable work. A research sub-agent runs web research concurrently. The workflow then generates three email drafts and scores them. A review agent chooses the highest-scoring draft and revises it if needed; the drafting and review process loops to improve the result. When ready, the selected email appears inside the sales task. The observable change for the rep is concrete: the task now contains researched copy to review instead of an empty starting point.

Where does the email become customer-facing? The diagram separates the automated preparation loop from human review. Scoring chooses among drafts; it does not authorize a send. The sales rep still adds judgment and approves the work.

A reactive follow-up uses a different input. A Gong transcript arrives after a call; an agent parses it, extracts sales information such as metrics, the economic buyer, decision criteria, the plan, and the champion, then drafts a grounded follow-up. Every LLM step is traced so the team can evaluate quality and improve the workflow. Durable execution keeps the process running; tracing supplies a way to inspect what it produces.

How it fits togetherCold outbound: prepare, compare, then hand off

Starts a durable workflow on Temporal.

Temporal contains the retryable workflow. Agents research and improve drafts; the resulting task waits for the rep’s judgment.

Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

12:55 · section reference included

Outcomes change the next decision—and the rep’s next morning

Each action has a decision log, and its outcome links back to the decision that caused it. Engagement history returns to the decision layer, where the system can choose to continue a thread, advance to another step, or pivot. Lifecycle-message performance feeds the same kind of loop. The mechanism is feedback into future choices: completing an automation leaves information for the next decision. 14:53

In the customer view, a rep sees usage and recent activity, then asks an agent questions against that same context. Notion custom agents can also access the data for recurring workflows. In the task view, the rep begins the day with prioritized work and pre-researched email drafts. Preparation happens before the rep opens the task, leaving room for the human’s judgment and “sales secret sauce.” 16:14

The ambition extends beyond helping an experienced rep move faster. The tasks and drafts expose which signals matter, which playbooks the team uses, and what good follow-up looks like. A new rep can learn from patterns captured from the strongest reps without requiring every lesson to be passed down manually. The workflow becomes part of how the team raises its floor.

Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

14:53 · section reference included

Own the context, rent the general parts, and start with good human work

Build versus buy is a decision at each layer. The team builds the customer-specific data model and internal agent behavior while renting general services such as orchestration, email, and CRM. Liu’s judgment is that internal agents can be cheaper and faster to build than people assume, especially when the team already understands the data they need. That does not make rebuilding every vendor a useful investment. 17:16

Control of context also preserves the ability to debug unusual customer models and workflows. Notion provides Markdown, databases, and hierarchies that agents can navigate, together with a workspace humans can use. Shared access to synced information lets engineers, agents, and GTM teams work from the same account understanding.

The early business signs were promising. Over thirteen weeks, Liu reports an increase in enterprise reps’ qualified opportunities. On the lifecycle-marketing side, users receiving context-aware recommendations were 63% more likely to take the next step. These are preliminary results from a system still being built; the talk does not define that next step, describe the comparison design, or quantify the opportunity increase, so the figures do not establish an equivalent gain in closed deals. 18:48

The closing implementation advice begins before the first agent:

  • Shadow your best human: The tabs and tools reveal both the chaos and the specification. Copying a mediocre process produces a mediocre agent.
  • Start with a legible workflow: Choose work that is documented and repeated, and retain human involvement where mistakes carry risk.
  • Model the primitives: Entities, context, triggers, actions, and eligibility rules turn an unfamiliar GTM process into something engineers can reason about. 19:18

The final advice is to be headless by default: make the underlying context available to agents as operators, rather than requiring every operation to pass through a human interface. Both people and agents need to read the same information; otherwise, their views become two systems that drift apart. At the time of the talk, humans remained the primary consumers of Notion’s GTM data, with agents helping around the edges. Moving agents from drafting to acting within guardrails was the direction Liu anticipated. Shared context prepares for that change while today’s sales-assist workflow keeps customer contact under human control. Liu closes with an invitation to ask questions about the work.

Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

17:16 · section reference included

Resources

Read the complete timestamped transcript
  1. 0:01

    [music]

  2. 0:12

    Well, first of all, hi everyone. I'm an

  3. 0:15

    engineer on the product growth team at

  4. 0:17

    Notion and now working on the GTM

  5. 0:20

    engineering team. A year ago, I would

  6. 0:22

    have told you that building a GTM system

  7. 0:25

    was a marketing ops problem. And today,

  8. 0:27

    I think it's one of the most interesting

  9. 0:29

    distributed systems problems that I've

  10. 0:31

    worked on.

  11. 0:33

    GTM at most companies involve a

  12. 0:35

    spiderweb of tools like what you see

  13. 0:38

    here, and they're stitched together by

  14. 0:40

    customer notes, proposals, contracts

  15. 0:44

    that are passed back and forth. Over the

  16. 0:46

    last few months, a small team and

  17. 0:48

    myself, um, we've been trying to turn

  18. 0:51

    this spider web into a unified GTM

  19. 0:53

    system. We're still in the midst of it,

  20. 0:56

    but we've learned a ton that I'd like to

  21. 0:57

    share with you today.

  22. 1:01

    So, this isn't really a new problem.

  23. 1:03

    We've been wrestling with pieces of it

  24. 1:05

    for years. Life cycle messaging, product

  25. 1:08

    recommendations,

  26. 1:10

    sales automations, customer data, and

  27. 1:13

    onboarding. But the solutions were

  28. 1:15

    fragmented because the underlying

  29. 1:17

    technology forced them to be.

  30. 1:20

    Then over the winter break, our CEO Ivan

  31. 1:23

    built spent it building a video game and

  32. 1:26

    he came back convinced that software

  33. 1:28

    engineering could be applied to many

  34. 1:30

    problems that were previously unwieldy

  35. 1:32

    or too costly. At the same time, our

  36. 1:36

    ability to execute skyrocketed with

  37. 1:39

    agentic technology and the breath of

  38. 1:41

    problems we could solve did too.

  39. 1:44

    the costly, time-consuming, and

  40. 1:47

    previously unsolvable spaghetti could

  41. 1:49

    now be sorted. So, what we found is that

  42. 1:52

    GTM had become a systems problem. That

  43. 1:56

    made us realize we could chip away at

  44. 1:58

    this holistically.

  45. 2:00

    In case you don't know, notion's

  46. 2:02

    platform is a collaborative brain for

  47. 2:04

    human and agents to think together. Over

  48. 2:07

    the years, we've evolved into a context

  49. 2:09

    layer for your company and AI agents can

  50. 2:12

    act on it. Notion's business moves

  51. 2:15

    between self-s serve growth and sales

  52. 2:17

    assist. Um, and customers move between

  53. 2:20

    these two motions all the time.

  54. 2:23

    The problem is that customers experience

  55. 2:26

    one journey, but internally it is

  56. 2:29

    supported by disconnected systems that

  57. 2:31

    don't actually talk to each other very

  58. 2:33

    well. These processes were rife with

  59. 2:36

    human error and put a lot of cognitive

  60. 2:39

    burden on our teams. For example, sales

  61. 2:42

    reps are probably not the strongest at

  62. 2:44

    managing systems, but their strength is

  63. 2:46

    in sussing out human signals during the

  64. 2:49

    buying process. So, every time they had

  65. 2:52

    to context switch between after a call,

  66. 2:55

    doing research, drafting follow-up, they

  67. 2:57

    were spending less time with our

  68. 2:59

    customers and customer problems.

  69. 3:02

    Most companies have separate systems for

  70. 3:04

    sales assist and productled growth. And

  71. 3:07

    this is actually also true for us.

  72. 3:09

    Marketing run runs on one set of tools,

  73. 3:12

    sales on another, customer ops on a

  74. 3:15

    third. But all of them are looking at a

  75. 3:17

    customer independently and making

  76. 3:20

    decisions separately. So what we set out

  77. 3:23

    to build is a single decisioning system

  78. 3:26

    that spans self-s serve growth and sales

  79. 3:28

    assist. and it can help the customer

  80. 3:31

    decide the next step so that everything

  81. 3:34

    is cohesive.

  82. 3:36

    Our vision is for this system to be

  83. 3:38

    programmable,

  84. 3:39

    proactive and continuous.

  85. 3:43

    When we started, we were faced with some

  86. 3:46

    challenges. There was so no single

  87. 3:48

    source of truth. So customer data was

  88. 3:50

    spread across Salesforce, Gong,

  89. 3:53

    Outreach, Zoom Info and many more.

  90. 3:56

    Product usage lived in Snowflake and a

  91. 3:58

    decade of the most important context

  92. 4:00

    lived in notes and meeting docs. Yes,

  93. 4:02

    our sales reps do use notion for that

  94. 4:04

    too. Notion employees were actively

  95. 4:08

    using MCPs and their own agents to solve

  96. 4:10

    problems already, but they were

  97. 4:13

    innovating within their own departments.

  98. 4:15

    So it was single player mode or you

  99. 4:17

    could say here single department mode.

  100. 4:20

    Marketing built tools for tool uh

  101. 4:21

    marketing sales built tools for sales

  102. 4:24

    and each tool served a tiny slice of

  103. 4:27

    that customer journey and it would make

  104. 4:29

    it really hard to create something that

  105. 4:31

    was more holistic.

  106. 4:34

    When we tried to automate across all of

  107. 4:36

    that we hit some roadblocks. First data

  108. 4:39

    quality conflicting systems of records

  109. 4:42

    wrong contacts tied to different

  110. 4:43

    accounts. One bad mapping was enough to

  111. 4:46

    lose trust for sales rep.

  112. 4:49

    Secondly, data latency. Every vendor

  113. 4:51

    added a hop and this lag was causing us

  114. 4:54

    to act on stale data and that meant we

  115. 4:57

    were automating on yesterday's world.

  116. 5:00

    Third, and this is a big one, structured

  117. 5:02

    and unstructured data. The most

  118. 5:05

    important facts about a customer were

  119. 5:07

    left in notes like the champion just

  120. 5:10

    left or don't contact this customer

  121. 5:12

    again. Um or they're blocked illegal.

  122. 5:15

    And so these are exactly the types of

  123. 5:17

    notes that help sales rep move forward

  124. 5:19

    and decide what to do next. And if an

  125. 5:22

    automation couldn't see it or process

  126. 5:24

    it, it could do something

  127. 5:26

    catastrophically wrong.

  128. 5:29

    So our project team consisted of CX,

  129. 5:32

    RevOps, product, engineering, sales. And

  130. 5:36

    after brainstorming together, we all

  131. 5:38

    kept finding the same patterns

  132. 5:40

    underneath that complexity.

  133. 5:43

    Whoops. Oh. Every workflow could be

  134. 5:46

    reduced to four questions. What do we

  135. 5:48

    know about the customer? What should

  136. 5:50

    happen next? How do we execute that

  137. 5:53

    safely? And did it work? That became our

  138. 5:57

    architecture.

  139. 5:59

    So the system has four layers. Know a

  140. 6:02

    context layer we can trust about every

  141. 6:04

    customer. Decide, choose the single next

  142. 6:08

    best step for them. Third, fire act and

  143. 6:11

    fire a concrete action that could be a

  144. 6:14

    life cycle email um an inapp nudge or a

  145. 6:17

    task handed to a rep and then learn

  146. 6:20

    watch what happened and feed it back

  147. 6:22

    into the decisioning so that it's a

  148. 6:24

    loop.

  149. 6:25

    But this architecture is missing

  150. 6:27

    something important.

  151. 6:31

    The most important part is that humans

  152. 6:33

    and agents are operating on the same

  153. 6:36

    loop. Concretely, this means that the

  154. 6:39

    context needs to be displayed so that

  155. 6:41

    humans and agents can read and operate

  156. 6:43

    on it together.

  157. 6:46

    So you can see that they're working in

  158. 6:47

    the same system, but they might have

  159. 6:49

    different roles. Agents do the

  160. 6:51

    repetitive work at scale like gathering

  161. 6:54

    context, researching, drafting

  162. 6:56

    recommendations, and writing artifacts.

  163. 6:59

    Humans provide the judgment, adding

  164. 7:01

    nuance, deciding what to do next, and if

  165. 7:04

    a recommendation is correct. and owning

  166. 7:07

    the customer relationship.

  167. 7:09

    We found that instead of building an AI

  168. 7:12

    layer on top of our business, we

  169. 7:14

    designed our architecture so that the

  170. 7:16

    agent can operate as another operator

  171. 7:18

    within the same system as humans.

  172. 7:23

    Before we built the system, we made some

  173. 7:25

    choices about how we were going to

  174. 7:26

    implement this. Firstly, we deliberately

  175. 7:29

    chose not to let an agent talk directly

  176. 7:31

    to a customer. For sales assist

  177. 7:34

    workflows, humans stay in the loop by

  178. 7:37

    default and approve anything the agents

  179. 7:39

    do. The agents do the busy work. That

  180. 7:43

    decision that decision also has a

  181. 7:45

    security dimension too. If a prospect

  182. 7:48

    fills out a contact sales form online,

  183. 7:50

    we treat that as untrusted user input.

  184. 7:53

    And so trust boundaries don't break

  185. 7:55

    down, especially because there is an

  186. 7:57

    agent in the middle.

  187. 7:59

    Secondly, routing and eligibility became

  188. 8:02

    a first class primitive. Eligibility

  189. 8:05

    used to be scattered in all over the

  190. 8:07

    place. We had one check or rule in an

  191. 8:09

    email tool, another in sales and we

  192. 8:12

    pulled that all into one place so that

  193. 8:15

    these rules can be consumed across our

  194. 8:17

    codebase uh product sales engineering

  195. 8:21

    and these are like customer

  196. 8:22

    segmentations or signal signal

  197. 8:24

    definitions and then a single classifier

  198. 8:28

    will route what the customer should do

  199. 8:30

    and this will actually prevent double

  200. 8:32

    sends from our system and create very

  201. 8:34

    cohesive communication across

  202. 8:37

    And last but not least, we decided that

  203. 8:39

    it was very important to own the contact

  204. 8:41

    layer and we decided to rent everything

  205. 8:44

    else. Since we are a lean team, we will

  206. 8:47

    not build our own email vendor or

  207. 8:49

    enrichment services like Clay. We use

  208. 8:52

    Clay and we believe that we understood

  209. 8:54

    our customers the best. So we will not

  210. 8:58

    um give that away.

  211. 9:01

    So let's get into what we built.

  212. 9:04

    The first step was to gather a

  213. 9:05

    consolidated view of all of our

  214. 9:07

    customers.

  215. 9:09

    Snowflake, which is our data warehouse,

  216. 9:11

    is where we compute this truth. We

  217. 9:13

    ingest data from all the vendors in our

  218. 9:15

    GTM stack to Snowflake. We run daily

  219. 9:18

    transforms and in some cases real time

  220. 9:21

    to produce a small set of modeled

  221. 9:23

    versioned entities and these are

  222. 9:25

    accounts, contacts, workspaces,

  223. 9:28

    eligibility, and facts. And this also

  224. 9:31

    has clear ownership of what teams or uh

  225. 9:33

    tools they come from and like

  226. 9:35

    timestamps.

  227. 9:36

    Dynamob is our key value store and it's

  228. 9:39

    where we compute our truth or serve our

  229. 9:41

    truth. We publish a denormalized key

  230. 9:44

    addressable profile that agents can

  231. 9:47

    quickly query in milliseconds with no

  232. 9:49

    joins. We also persist agent uh

  233. 9:53

    persisted uh or generated artifacts and

  234. 9:55

    these are research snippets, summarized

  235. 9:57

    notes, rolling summaries and these

  236. 10:00

    unstructured data are also keyed by the

  237. 10:03

    same ids so that downstream systems can

  238. 10:05

    read all of this in one shot.

  239. 10:10

    So this data was normalized and of

  240. 10:12

    course we brought it into notion so that

  241. 10:14

    we could work with structured and

  242. 10:16

    unstructured data at the same time. So

  243. 10:19

    some of the data I showed you in the

  244. 10:20

    boxes earlier, there's like product

  245. 10:22

    usage data, there's activity log from

  246. 10:24

    across our vendor stack, and then we

  247. 10:27

    also have like unstructured data that

  248. 10:29

    like I mentioned that is most important

  249. 10:31

    for sales context with research reports

  250. 10:34

    and notes.

  251. 10:36

    And this turned out to be powerful for

  252. 10:38

    two reasons. First, our internal GTM

  253. 10:42

    teams didn't need to jump between many

  254. 10:44

    tools anymore. They could use notion

  255. 10:46

    itself, a tool they were already using

  256. 10:48

    to explore context, investigate

  257. 10:51

    investigate accounts, answer questions,

  258. 10:54

    and they could even take actions like

  259. 10:56

    sending to Nooks or um sending to

  260. 10:58

    outreach. This is a tool that they were

  261. 11:01

    very familiar with, and they didn't need

  262. 11:03

    to open seven tabs anymore. Secondly,

  263. 11:06

    because we weren't building an AI layer,

  264. 11:08

    um humans, workflows, and agents could

  265. 11:11

    all operate on the same source of truth.

  266. 11:13

    In a very literal sense, we are using

  267. 11:15

    notion to grow notion.

  268. 11:20

    The next primitive we decided that we

  269. 11:22

    needed was a way to turn customer events

  270. 11:25

    into actions. The unit here is a signal.

  271. 11:29

    A signal is a single customer event

  272. 11:31

    that's important enough to change what

  273. 11:33

    should happen next for a customer. Some

  274. 11:36

    are userdriven like a customer hitting

  275. 11:38

    their a AI limit or maybe they reached

  276. 11:41

    out to contact contact sales. But some

  277. 11:44

    of them are not user initiated at all

  278. 11:46

    which are these external signal examples

  279. 11:48

    I listed here like company raising

  280. 11:50

    funding, hiring signals or shift in

  281. 11:53

    their tech stack. Those external signals

  282. 11:55

    are what allowed us to be proactive

  283. 11:57

    instead of reactive.

  284. 12:00

    So this is the signal service that

  285. 12:03

    watches the customer profile, decides

  286. 12:06

    whether a single action is available,

  287. 12:09

    decides who should own that action, and

  288. 12:12

    then it emits a concrete task following

  289. 12:14

    the architecture I described before. And

  290. 12:17

    this task could be for a human or an

  291. 12:19

    agent. If there's a task for sales rep,

  292. 12:22

    that actually just lands in their notion

  293. 12:24

    database and they can quickly view it

  294. 12:26

    and act on it.

  295. 12:29

    What's what's interesting about the way

  296. 12:30

    we built our GTM systems is that if

  297. 12:33

    there is no signal about a customer, the

  298. 12:35

    marketing component of our system kicks

  299. 12:37

    in. We have a predictive engine that

  300. 12:40

    will recommend product features most

  301. 12:42

    relevant for that customer and it will

  302. 12:44

    send out life cycle emails and inapp

  303. 12:46

    nudges or multi-channel communication to

  304. 12:50

    drive a customer towards adoption

  305. 12:51

    automatically.

  306. 12:55

    So diving deep into a small slice of

  307. 12:58

    what happens when we decide what action

  308. 13:01

    should be emitted. Um this is for like

  309. 13:04

    the sales workflow and we shadowed our

  310. 13:07

    best reps to capture something that was

  311. 13:09

    the most repetitive part of our job and

  312. 13:11

    encoded it as a durable multi- aent

  313. 13:14

    workflow. Every signal becomes a

  314. 13:17

    workflow on temporal which is something

  315. 13:19

    we rent and a single run will touch

  316. 13:22

    enrichment web search draft generation

  317. 13:25

    and more. Each of these is a network

  318. 13:28

    call that could fail or rate limit. And

  319. 13:30

    so temporal lets us focus on writing the

  320. 13:33

    sequential logic for our GTM use cases

  321. 13:37

    while it will handle the retries, ddupes

  322. 13:40

    um and handling and going back to

  323. 13:42

    exactly where failures left off. and one

  324. 13:45

    malformed transcript can't take down the

  325. 13:48

    whole batch which was really important

  326. 13:50

    to us. So an example of a cold outbound

  327. 13:53

    signal for us will have a research sub

  328. 13:56

    agent do concurrent researches then

  329. 13:59

    it'll draft like an email and those

  330. 14:02

    emails uh there should be three of them

  331. 14:04

    so they're scored and then a review

  332. 14:07

    agent will pick the highest scoring one

  333. 14:09

    and make any updates if necessary. And

  334. 14:11

    this also operates on a loop um so that

  335. 14:14

    the email drafts are improved. And then

  336. 14:16

    when it's ready, this email draft will

  337. 14:18

    land in the sales task that is available

  338. 14:21

    for for them to act on. Um for more

  339. 14:24

    reactive signals after a follow-up call,

  340. 14:27

    the Gong transcript will come in. Our

  341. 14:29

    agent will parse the transcript and then

  342. 14:32

    um again it will extract the critical

  343. 14:35

    sales medpic data uh metrics economic

  344. 14:38

    buyer decision criteria plan and

  345. 14:42

    champion and draft a grounded followup

  346. 14:44

    for that. Every LLM step is traced so

  347. 14:48

    that we can evaluate quality and improve

  348. 14:50

    over time.

  349. 14:53

    The third layer is what turns this

  350. 14:55

    automation into a system that

  351. 14:57

    self-improves. Every action is a

  352. 15:00

    decision log and every outcome threads

  353. 15:03

    back to the decision that caused it. So

  354. 15:06

    the naive version of this is a data

  355. 15:08

    analyst coming in and trying to

  356. 15:10

    understand if the output of this could

  357. 15:12

    be better. The rebuilt version of this

  358. 15:14

    is wiring our engagement history back

  359. 15:16

    into the decision layer so that the

  360. 15:19

    system decides whether or not to

  361. 15:21

    continue a thread, advance to the next

  362. 15:23

    step or pivot. The system will continue

  363. 15:27

    to do that with the life cycle message

  364. 15:29

    performance history as well. So these

  365. 15:31

    verification loops are really critical

  366. 15:34

    so that the system can self-heal and

  367. 15:36

    continuously improve.

  368. 15:38

    Let's see how an agent and human work

  369. 15:40

    together in this shared customer view.

  370. 15:43

    In the customer view, a rep can come

  371. 15:45

    here and see the product usage, the

  372. 15:47

    recent activity and get an answer using

  373. 15:50

    that same data. They used to find all of

  374. 15:52

    this across many different tabs and now

  375. 15:55

    they can just come here each day. The

  376. 15:57

    rep can ask an agent and the agent will

  377. 16:00

    reply uh querying our context layer. We

  378. 16:04

    can also use notion custom agents which

  379. 16:06

    are sharable across companies to access

  380. 16:09

    this data context for recurring

  381. 16:11

    automated workflows.

  382. 16:14

    In the task view, a rep starts their day

  383. 16:17

    with an already prioritized task box and

  384. 16:20

    they already know how to move forward

  385. 16:22

    with accounts and contacts. And the

  386. 16:25

    email draft for an outreach task is

  387. 16:27

    already pre-ressearched and available

  388. 16:29

    for them to review. The human is still

  389. 16:32

    in the loop and actually adds their own

  390. 16:34

    judgment and taste um and sales secret

  391. 16:37

    sauce, but they're no longer starting

  392. 16:39

    from a blank sta slate. And this does

  393. 16:42

    more than one help one rep be

  394. 16:45

    productive. Um our goal is actually to

  395. 16:48

    raise the floor for the entire team. So

  396. 16:51

    a Neil sales rep coming in, they can

  397. 16:53

    learn the notion sales process,

  398. 16:56

    understand what signals are important to

  399. 16:58

    look for, um, understand which playbooks

  400. 17:01

    are effective, and basically know what

  401. 17:04

    good followup looks like. Reps who can

  402. 17:07

    are ramping can still learn from the

  403. 17:09

    patterns of the strongest reps without

  404. 17:11

    needing every lesson to be passed down

  405. 17:13

    manually.

  406. 17:16

    So, one of the questions that we came

  407. 17:18

    across along every step of the way is a

  408. 17:21

    classic question. Do we build or buy?

  409. 17:25

    And it's very tempting and trendy to say

  410. 17:27

    build everything. But what we found is

  411. 17:30

    that there are still key areas to build

  412. 17:32

    and rent access to at every single

  413. 17:35

    layer. Internal agents are actually

  414. 17:38

    cheaper and faster to build than most

  415. 17:40

    people assume. And so since we have the

  416. 17:43

    most data on our con on our data model

  417. 17:46

    um we build it there first and then we

  418. 17:48

    uh rented the generalizable parts later.

  419. 17:51

    So for us the build versus buy as a per

  420. 17:53

    layer decision. We will not build a lot

  421. 17:56

    of these tools like orchestration,

  422. 17:58

    email, CRM. Um vendors do that really

  423. 18:02

    well. We refuse to outsource the context

  424. 18:04

    layer because that's where our edge is.

  425. 18:07

    a generic tool can't capture all of our

  426. 18:09

    esoteric data models or workflows and we

  427. 18:12

    do not want that context layer to be

  428. 18:14

    something we can't um debug

  429. 18:18

    and so as I mentioned before that

  430. 18:21

    context layer is a notion it's built off

  431. 18:24

    of plain markdown a language that agents

  432. 18:26

    are fluent in and we have databases and

  433. 18:30

    hierarchies that they can navigate

  434. 18:31

    easily at the same time this is well

  435. 18:34

    designed for human um so this is what

  436. 18:37

    lets our engineers, agents, and GTM work

  437. 18:40

    off the same context. And this has all

  438. 18:42

    the data synced across sources.

  439. 18:48

    Ultimately, the reason to see if we can

  440. 18:50

    do all of this is to see if we could get

  441. 18:52

    a better throughput on deals. It's very

  442. 18:55

    early for us. We're still building this

  443. 18:56

    out, but the initial signs are

  444. 18:58

    promising. In the last 13 weeks, we are

  445. 19:00

    already seeing enterprise reps have

  446. 19:03

    increased qualification or qualified

  447. 19:05

    opportunities. And on the life cycle

  448. 19:07

    marketing side, users who received

  449. 19:09

    contextaware recommendations were 63%

  450. 19:12

    more likely to take the next step. This

  451. 19:15

    is the early days with a lot more

  452. 19:16

    features we want to build, but our

  453. 19:18

    thesis that us building a single system

  454. 19:20

    on no, decide, act, and learn seems to

  455. 19:24

    be right so far.

  456. 19:26

    A few key takeaways. um from entering

  457. 19:29

    entering this world as an engineer in

  458. 19:31

    the last six months is that before you

  459. 19:34

    build shadow your best human. I talked

  460. 19:37

    to many sales reps and when I opened uh

  461. 19:39

    when they opened their computers I saw

  462. 19:41

    how many tabs and tools they were

  463. 19:43

    navigating between and that was a chaos

  464. 19:45

    but it was also the spec and so if you

  465. 19:48

    encode a mediocre process you get a

  466. 19:50

    mediocre agent. Start with the most

  467. 19:53

    legible workflow. That's the one that's

  468. 19:55

    documented and repeated. And let humans

  469. 19:58

    stay in the loop on where there are

  470. 19:59

    risky possibilities.

  471. 20:02

    Model GTM as primitives, entities,

  472. 20:05

    context, triggers, actions, eligibility

  473. 20:08

    rules, and the alien world becomes a

  474. 20:10

    system you can engineer. Last but not

  475. 20:13

    least, be headless by default and design

  476. 20:16

    for agents as operators and not just

  477. 20:18

    co-pilots. If humans and agents can't

  478. 20:21

    read from the same substrate, you're

  479. 20:23

    basically building two systems that will

  480. 20:25

    eventually drift apart. For us, that

  481. 20:28

    layer is notion.

  482. 20:30

    Right now, humans are the primary

  483. 20:32

    consumer of GTM data and agents are

  484. 20:34

    helping at the edges. Soon, agents will

  485. 20:37

    become primary first class consumers

  486. 20:39

    within the system, moving from drafting

  487. 20:42

    to acting within guard rails by creating

  488. 20:45

    the best context and substrate for

  489. 20:47

    humans and agents to collaborate

  490. 20:49

    together. Now, you're setting up your

  491. 20:51

    team to sprint faster.

  492. 20:53

    Um, yeah, and feel free to contact me if

  493. 20:56

    you guys want to ask more questions.

  494. 21:12

    >> [music]