YouTube2Text

Spec-driven development: the AI engineering workflow at Notion | Ryan Nystrom — Transcript

by How I AI · 8,848 words · 1,337 segments · language en · Watch on YouTube

Full transcript

  1. 0:00One line that I've been putting in my
  2. 0:01prompts lately is I literally don't know
  3. 0:03what I'm doing here. You got to explain
  4. 0:05it like I'm a five-year-old. I didn't
  5. 0:06start with writing code. I didn't start
  6. 0:08with anything. I just started with an
  7. 0:10empty markdown document. I actually just
  8. 0:12opened up Whisper and just started
  9. 0:14yapping about how this feature should
  10. 0:16work. I gave the yap session to Codex
  11. 0:18and was like write us back. I then
  12. 0:20opened up Codex again, pointed it at
  13. 0:22this spec file, and I said build it. And
  14. 0:26basically one-shotted this. I've been in
  15. 0:28software engineering for 20-plus years.
  16. 0:30>> We were writing these documents and we
  17. 0:31were sitting in meetings with other
  18. 0:33engineers debating the merits of one
  19. 0:36implementation versus another. And now,
  20. 0:38no more waiting for the meeting, no more
  21. 0:40waiting for review.
  22. 0:41>> I'm not a CI expert, but I kind of know
  23. 0:44what I want. And so, other folks were
  24. 0:46kind of like, "Can you just bring some
  25. 0:48of your like puppy dog energy to like CI
  26. 0:51and just see what we can do?"
  27. 0:53>> Your AI, your agent is never going to
  28. 0:54complain when you ask it to do this five
  29. 0:57minutes before the meeting starts.
  30. 0:58>> It is more relaxing and it's more fun
  31. 1:01and I feel like I'm getting more done.
  32. 1:02It's weird to have this like
  33. 1:03win-win-win.
  34. 1:04>> They do the triangle and they're like
  35. 1:05pick two and you're like, "No, I want to
  36. 1:07pick all three."
  37. 1:07>> Give me the whole triangle.
  38. 1:08>> Give me the whole triangle.
  39. 1:13Welcome back to How I AI. I'm Clara
  40. 1:16Bell, product leader and AI obsessive
  41. 1:18here on a mission to help you build
  42. 1:19better with these new tools. Today we
  43. 1:21have Ryan Nystrom from Notion and he's
  44. 1:23going to show us as an engineering
  45. 1:25manager how you can never prep for a
  46. 1:28stand-up again. We're also going to see
  47. 1:29how you can get a background agent to
  48. 1:31write code for a fix your friend texted
  49. 1:33you and how spectrum and development
  50. 1:36really works in a code base at scale.
  51. 1:38Let's get to it. This episode is brought
  52. 1:41to you by WorkOS. AI has already changed
  53. 1:44how we work. Tools are helping teams
  54. 1:46write better code, analyze customer
  55. 1:48data, and even handle support tickets
  56. 1:50automatically. But there's a catch.
  57. 1:52These tools only work well when they
  58. 1:54have deep access to company systems.
  59. 1:57Your co-pilot needs to see your entire
  60. 1:59codebase. Your chatbot needs to search
  61. 2:01across internal docs. And for enterprise
  62. 2:04buyers, that raises serious security
  63. 2:06concerns.
  64. 2:07That's why these apps face intense IT
  65. 2:10scrutiny from day one. To pass, they
  66. 2:12need secure authentication, access
  67. 2:14controls, audit logs, the whole suite of
  68. 2:17enterprise features.
  69. 2:18Building all that from scratch, it's a
  70. 2:20massive lift. That's where WorkOS comes
  71. 2:23in.
  72. 2:24WorkOS gives you drop-in APIs for
  73. 2:26enterprise features, so your app can
  74. 2:28become enterprise-ready and scale
  75. 2:30upmarket faster. Think of it like Stripe
  76. 2:33for enterprise features.
  77. 2:35OpenAI, Perplexity, and Cursor are
  78. 2:37already using WorkOS to move faster and
  79. 2:40meet enterprise demands.
  80. 2:42Join them and hundreds of other industry
  81. 2:44leaders at workos.com.
  82. 2:47Start building today.
  83. 2:49Ryan, welcome to How I AI. I am really
  84. 2:53excited because you're going to show us,
  85. 2:56I think,
  86. 2:57start,
  87. 2:59medium, advanced mode on some AI coding
  88. 3:03stuff. And so, before we jump in, how
  89. 3:06has AI just changed how you live your
  90. 3:09life at work?
  91. 3:11>> I mean, it's it has completely upended
  92. 3:14the way I work. Like, I I've been doing
  93. 3:16this, I did a lot of like mobile iOS
  94. 3:19work in my past, and I worked the same
  95. 3:22way
  96. 3:23every day for like 12-plus years. And
  97. 3:26then, in the last year, I have changed
  98. 3:29IDEs, terminals,
  99. 3:32tools, like whatever, like
  100. 3:3510-plus times. Um
  101. 3:38so, it's like really weird and scary to
  102. 3:40be like changing this stuff so much, but
  103. 3:42it's also I feel that like
  104. 3:44I've been doing this for a while, and
  105. 3:45I'm feeling like so much like joy and
  106. 3:47freshness and like newness in this that
  107. 3:50like I wake up every day super excited
  108. 3:52to like tinker and build things.
  109. 3:55And I'm also like working faster and
  110. 3:57harder than I feel like I ever have, but
  111. 3:59like in a in a good way. I know people
  112. 4:01are like
  113. 4:02kind of freaked out about like
  114. 4:03everything's changing, the pace is up,
  115. 4:05but like it's it's really energizing for
  116. 4:07me.
  117. 4:08>> Well, you are not alone. I think every
  118. 4:09how I I guess has come on and said I'm
  119. 4:11having more fun. I'm working faster and
  120. 4:15everything is different. And what I love
  121. 4:16about what you're going to show us is
  122. 4:19it's not just the set of tools, which I
  123. 4:21think has changed or how we write code
  124. 4:23has changed. How you like run a team has
  125. 4:26changed. So, and I think for the better.
  126. 4:29You know, so I would love to see how
  127. 4:32you're using Notion AI to actually run
  128. 4:35teams differently.
  129. 4:36>> Yeah, for so for context, I I manage a
  130. 4:39team
  131. 4:40like six, seven people. I'm like an
  132. 4:43engineering manager
  133. 4:45technical engineering tech lead manager
  134. 4:49or whatever we call it. I manage people
  135. 4:51and I write code
  136. 4:52is like my role, which I love. And I've
  137. 4:56run a bunch of different projects here
  138. 4:57at Notion. The the one I'm going to show
  139. 4:59today we've we've nicknamed Afterburner.
  140. 5:03Like kind of a quick backstory is I've
  141. 5:06been kind of vocal about our like DevEx
  142. 5:09CI for a while. I've just
  143. 5:12I worked at places where it's really
  144. 5:13slow. I've worked at places where it's
  145. 5:15really fast. And I came here and I was
  146. 5:16like we're kind of like in between.
  147. 5:18But I feel like we're like slower than
  148. 5:21we need to be.
  149. 5:22And eventually this like caught up to me
  150. 5:24and somebody was like could you just
  151. 5:27come fix it and like come work on it?
  152. 5:29And I'm not like a infra expert. I'm not
  153. 5:31a CI expert. But I I kind of know what I
  154. 5:35want. And I think also most importantly
  155. 5:38the the group that I manage and the the
  156. 5:41org that I work in
  157. 5:42we're a little notorious for being like
  158. 5:45really fast and like very, very AI
  159. 5:47piled. And so, other folks were kind of
  160. 5:49like, "Can you just bring some of your
  161. 5:52like puppy dog energy to like CI and
  162. 5:54just like see what we can do?" And
  163. 5:57that's what we've That's what we've
  164. 5:58done. So, we had this really aggressive
  165. 5:59goal to cut our CI into like a quarter
  166. 6:01of what it is. Um we're on the path to
  167. 6:05to doing that, but so, I what I want to
  168. 6:07show you is a little bit about how we
  169. 6:09run projects in Notion and how I'm using
  170. 6:13um AI to kind of streamline
  171. 6:15those projects. So, what we're looking
  172. 6:17at here is like our like project hub
  173. 6:20called Afterburner. And so, in here,
  174. 6:23I've got all this documentation. I've
  175. 6:24got databases. Um we'll look at some
  176. 6:27meetings. I have like a automation that
  177. 6:29looks for any sort of like little wins
  178. 6:31if we knock off seconds from different
  179. 6:33jobs or whatever and we keep it we keep
  180. 6:35track of them in here.
  181. 6:37But, what I want to show you is
  182. 6:39basically how we run our meetings. Our
  183. 6:42small group, we run a stand-up every
  184. 6:44single day.
  185. 6:46And
  186. 6:47doing stand-ups where everyone just like
  187. 6:50is kind of like dead-eyed and going
  188. 6:52around being like,
  189. 6:54"I did this. I shipped this change." Or,
  190. 6:57you know, "No updates for me. Thanks."
  191. 6:59Is like
  192. 7:00painful. And in my opinion, like a huge
  193. 7:03waste of time. I want to like get to the
  194. 7:05the meat. So, we have this kind of like
  195. 7:08automated meeting template that shows up
  196. 7:11every single day that we run our
  197. 7:12meetings, which is basically every day.
  198. 7:14And it starts blank. And then, what I
  199. 7:17have set up behind the scenes uh is a um
  200. 7:21custom agent. So, we shipped this Notion
  201. 7:23AI custom agent stuff a little bit ago.
  202. 7:26And this runs right after the meeting
  203. 7:29template gets generated. And it looks
  204. 7:32through all of our like Slack
  205. 7:33conversation in the last 24 hours, any
  206. 7:37tasks in Notion that we close, any
  207. 7:40um
  208. 7:41pull requests that we've like merged,
  209. 7:43just like all sorts of contexts. Oh, and
  210. 7:46it looks at like yesterday's meeting
  211. 7:47transcript as well. And then it compiles
  212. 7:50a basically like a pre-read. And um this
  213. 7:53is a this is one from a week or so ago.
  214. 7:57And it Yeah, it shows it pulls metrics.
  215. 8:00It can show us like what our latest CI
  216. 8:02time is. Uh it shows some of the things
  217. 8:05we've decided. Shows like progress on
  218. 8:07different like projects or like
  219. 8:09different things that we're trying to
  220. 8:10like make faster.
  221. 8:12Bugs, feedback, open questions, ta- like
  222. 8:16anything that's like of concern. And
  223. 8:18like
  224. 8:19I
  225. 8:21can basically work up until like the
  226. 8:24minute of our meeting
  227. 8:27without having done a bunch of like
  228. 8:29prep. And then we all get on a video
  229. 8:31call and we look at the screen and we're
  230. 8:34like,
  231. 8:35"Okay, here's what we need to talk
  232. 8:36about."
  233. 8:37And we'll like hit each bullet. We have
  234. 8:41like meeting notes that we run down here
  235. 8:43um within Notion.
  236. 8:45And like all the context is basically
  237. 8:46like captured. All of the like agenda is
  238. 8:48like
  239. 8:49set up for me. So, we spend the entire
  240. 8:51time talking about like problems,
  241. 8:53decisions, wins, findings, like what are
  242. 8:56we going to work on next? And it's less
  243. 8:58the like
  244. 8:59"Oh, I did this thing."
  245. 9:00>> Yeah, what I want to call out for folks
  246. 9:02that are maybe listening and not
  247. 9:03watching is this is a very detailed
  248. 9:07meeting like kind of like pre-read /
  249. 9:10status update. Which if you're a you
  250. 9:13know, TLM or an EM
  251. 9:15running good meetings unfortunately is
  252. 9:17part of part of the job and there's a
  253. 9:20really big difference between a good
  254. 9:21stand-up and a bad stand-up. And I think
  255. 9:24the the ones you describe, these like
  256. 9:25wrote like, "I wrote this PR today. I'm
  257. 9:28going to start on this." And that
  258. 9:30basically like a notes document that's a
  259. 9:33very high-level because some human is
  260. 9:35putting it together, it stinks and
  261. 9:39you start to like do I the other thing
  262. 9:41that I found and maybe I'm I'm curious
  263. 9:43if this has impacted how you work or
  264. 9:45just made it easier, which is like you
  265. 9:47start to have those meetings less
  266. 9:48because the updates aren't super rich.
  267. 9:52People don't feel like it's a good use
  268. 9:53of their time and I think you lose
  269. 9:55something by reducing the frequency, but
  270. 9:57if you can have high bandwidth,
  271. 9:59high quality meetings
  272. 10:02with high frequency without the
  273. 10:04overhead, I think you can get better,
  274. 10:07more detailed work done collaboratively,
  275. 10:10especially if you're running like a
  276. 10:12remote team or not everybody's in the
  277. 10:14same same room.
  278. 10:16So, I'm curious, do you feel like just
  279. 10:18being able to get to this level of
  280. 10:19detail in your stand-up has improved how
  281. 10:21you can actually build this product and
  282. 10:23do these do this work, basically?
  283. 10:25>> I've been in way too many meetings where
  284. 10:27I can tell like everybody's eyes are
  285. 10:29glazed over, nobody's paying attention
  286. 10:32and I like I have
  287. 10:34run enough projects at this point where
  288. 10:37like to me that's like pretty dangerous
  289. 10:40cuz like everybody in that room has
  290. 10:42ideas, they have insight, but like
  291. 10:45because we've made it like so
  292. 10:47non-productive and like not engaging
  293. 10:49that like we're not we're just like we
  294. 10:51need the point of the meeting is to like
  295. 10:53exchange ideas and information and if
  296. 10:54we're like not doing that, like
  297. 10:56literally what's the point? The whole
  298. 10:57like this could have been an email, like
  299. 10:59that's what the meme is from. Um
  300. 11:01and so I I found that this is basically
  301. 11:05a good conversation starter.
  302. 11:08Um
  303. 11:08and
  304. 11:10a key thing to me that that tells me
  305. 11:13that this is working is when I'm like
  306. 11:16I'm running these meetings and kind of
  307. 11:18going through like bullet by bullet and
  308. 11:19then I see like oh, somebody like
  309. 11:22fixed our mock server environment and
  310. 11:24our our just tests and we're seeing a
  311. 11:26test improvement by like up to 13%. Like
  312. 11:29oh,
  313. 11:30I'd miss that, you know, Like
  314. 11:32that's super cool. Like tell like let's
  315. 11:34talk about it. And then from that maybe
  316. 11:36like oh, there's additional head room
  317. 11:38that we can make on this. And so all of
  318. 11:40a sudden like let's drill into it. And
  319. 11:43so just like
  320. 11:44I also think it sort of democratizes
  321. 11:46that like sharing so that you've got
  322. 11:48some people that um
  323. 11:51I I could talk for an entire 30 meeting
  324. 11:53without shutting up. And then other
  325. 11:55engineers are like you know, kept
  326. 11:57keeping to themselves but like brilliant
  327. 11:59and super talented. And I think it's
  328. 12:00great. This kind of like raises
  329. 12:03everything up to the top. Um it makes it
  330. 12:05very visible.
  331. 12:06>> I was I was thinking last night truly
  332. 12:08this is a little bit of a sidebar but I
  333. 12:09was thinking last night how people don't
  334. 12:11know this. It's very very confusing as
  335. 12:14Claire Bow the podcast host. I am such
  336. 12:16an introvert. I'm a crazy
  337. 12:19introvert. I will avoid humans with
  338. 12:21every fiber of my being.
  339. 12:23And I find like AI as a proxy for me to
  340. 12:27get over my own anxiety communicating
  341. 12:29with the
  342. 12:29It's so insane. But I really feel it.
  343. 12:33Whenever I like message my open claw and
  344. 12:36I'm like hey Polly, can you email
  345. 12:38so-and-so blah blah blah on my behalf?
  346. 12:41My anxiety is gone. But when I sit in
  347. 12:43front of my Gmail and start typing an
  348. 12:45email my introvert starts showing and
  349. 12:47I'm like I can't I can't do it. So I
  350. 12:49think this is a real point which is like
  351. 12:51you got to pull information out of
  352. 12:52everybody.
  353. 12:53>> Yeah.
  354. 12:54>> And there's like spikes and valleys of
  355. 12:56who is going to come and show off their
  356. 12:58work, how detailed they're going to be.
  357. 13:01It does not mean the work is not good.
  358. 13:02It does not mean they are not talented.
  359. 13:04They just have different skills in
  360. 13:06different environments. And so I love
  361. 13:08this call out of like we're going to
  362. 13:09pull equal amounts of information out of
  363. 13:12everybody because the playing field is
  364. 13:15is equal. I also want to go back to
  365. 13:17something you said which makes me think
  366. 13:18about burnout. Which you said I can like
  367. 13:20work up until this meeting starts. And I
  368. 13:24I know so many people who feel like
  369. 13:27they're in meeting after meeting after
  370. 13:29meeting one because when they're not in
  371. 13:32meetings they're preparing for meetings.
  372. 13:33So you're getting rid of that.
  373. 13:34>> Yeah.
  374. 13:35>> And then two I think managers being able
  375. 13:39to for example code
  376. 13:42up until the stand-up is such a burnout
  377. 13:45like protection mechanism which is you
  378. 13:48would much rather your managers hands-on
  379. 13:51the code hands-on doing work filling a
  380. 13:53creative impulse
  381. 13:55than prepping for meetings. Sure they're
  382. 13:57great at running the meetings but let's
  383. 13:58do that in like this just-in-time
  384. 14:01mechanism where they're supported um
  385. 14:04through these automations and so I just
  386. 14:06imagine and I used to feel so stressed
  387. 14:08as a leader and as a manager being like
  388. 14:11if I'm not in a meeting I'm prepping for
  389. 14:12a meeting and then I'm in a meeting and
  390. 14:14if I can carve back more of my time to
  391. 14:16just do real things
  392. 14:18that feels so much so much so much
  393. 14:21better. So I'm guessing you're having
  394. 14:23more fun just through the balance of the
  395. 14:25kind of work you're trying to do.
  396. 14:27>> I'm yeah I'm having so much more fun
  397. 14:30working this way. I I have done the like
  398. 14:33run a big engineering group where yes
  399. 14:35you're spending half of your time just
  400. 14:38compiling information synthesizing it
  401. 14:40writing reports like doing all this
  402. 14:43stuff and I I hated it. Like it's so
  403. 14:47draining. And now I feel like I'm in a
  404. 14:49sweet spot where I can support and work
  405. 14:52with a team of like very talented
  406. 14:55individuals
  407. 14:57but also not have to yeah be like doing
  408. 15:00like paperwork the entire time. Like I I
  409. 15:02don't want to do like the tedium. I get
  410. 15:04a lot of joy out of working with people.
  411. 15:06It's like why I like managing. I like
  412. 15:08talking with them having fun. I love
  413. 15:10like solving hard problems together.
  414. 15:13And then I like building stuff and
  415. 15:17yeah I think that we're maybe at an
  416. 15:20inflection point where
  417. 15:23like
  418. 15:24I I don't maybe this is controversial or
  419. 15:25not, but like if you're like a line
  420. 15:27manager, you like
  421. 15:30write write code, you know, get in there
  422. 15:32and like
  423. 15:33stay stay close. Maybe don't do the the
  424. 15:35the P0 hero projects, but like help your
  425. 15:38team fix bugs, like make optimizations,
  426. 15:40like whatever, you know, I it's just
  427. 15:42it's so easy now.
  428. 15:44>> I mean, I'm going to pull that thread
  429. 15:46all the way up, which is like directors
  430. 15:48of engineering, VPs of engineering, like
  431. 15:51CTOs.
  432. 15:52>> Yeah.
  433. 15:52>> CPOs, it write write some code. Now is
  434. 15:56the time. And I say this all the time on
  435. 15:58this podcast, this is the era of the
  436. 16:00hard skill. This is not how do I get
  437. 16:03better at my my soft skills and managing
  438. 16:05people? This is literally like how do
  439. 16:07you write code? How do you write
  440. 16:08automations? How do you learn these new
  441. 16:09tools? How do you understand what models
  442. 16:11do do what for your own skills?
  443. 16:14That I think is super important. Okay,
  444. 16:15we can go on forever on this topic. I do
  445. 16:17want to show folks how you built this.
  446. 16:20>> Yes.
  447. 16:21>> Because we haven't seen actually haven't
  448. 16:23seen we've had a couple of Notion folks
  449. 16:24on the podcast, we haven't seen Notion
  450. 16:26AI in action and I just want to see kind
  451. 16:29of your thought process on how you build
  452. 16:31something like this out.
  453. 16:32>> So I'm going to flip over to this is our
  454. 16:35custom agent. Don't ask me why we got
  455. 16:37this like potato theme for like the
  456. 16:38entire project. I think it was kind of
  457. 16:40something about like CI is just this
  458. 16:42like cobbled together like mess and so
  459. 16:44we're going to like make the potato like
  460. 16:46a rocket ship. I don't know. I don't
  461. 16:48even know if that makes any sense, but
  462. 16:50like now we're having fun with it and we
  463. 16:51have
  464. 16:52reactions and like agents and it has
  465. 16:56spun off into its own thing, which is
  466. 16:57fun.
  467. 16:58But this is our hot potato agent. So you
  468. 17:01can see I have this set up to run at
  469. 17:039:00 a.m. every single day. It's also
  470. 17:05set up for chat. It's set up if the
  471. 17:07agent's mentioned, but we never really
  472. 17:09use any of that. And probably the
  473. 17:11important part is the actual
  474. 17:13instructions. So in this instruction
  475. 17:16page
  476. 17:17giving context on like what the purpose
  477. 17:19of this agent is, I'm telling it to run
  478. 17:23Yeah, look back at 24 hours. So,
  479. 17:25basically telling it, "Your job is to
  480. 17:27run every single day, and I only want
  481. 17:29you to look back for the last like 24
  482. 17:31hours of activity." I'm explicitly
  483. 17:33telling it to use sub-agents, which is
  484. 17:35kind of a sleeper feature in Notion AI.
  485. 17:38Like, this exists, but we don't we don't
  486. 17:40really push it to use it very often yet,
  487. 17:43cuz it's one, it's very expensive, and
  488. 17:45two, it can be kind of finicky
  489. 17:47sometimes, but um
  490. 17:49I helped build it, so I'm I know how
  491. 17:51this works.
  492. 17:52Uh
  493. 17:53And then I ask it to kind of like fan
  494. 17:55out and do like a map reduce, where I'm
  495. 17:57saying, "Go use the honeycomb MCP to
  496. 17:59figure out what the latest metric is.
  497. 18:01Look in our project channel and like
  498. 18:04find updates, feedback, questions." I
  499. 18:07tell it where the task uh databases and
  500. 18:10how to look for tasks within this
  501. 18:12project, and then how to find
  502. 18:14yesterday's meeting.
  503. 18:15And then
  504. 18:17I give it a template in the
  505. 18:18instructions, where I'm like, "This is
  506. 18:20your format. I care about CI speed,
  507. 18:22decisions, progress, changes, bugs,
  508. 18:25questions, risks."
  509. 18:27A little bit of guidance on writing.
  510. 18:30And then when it's done, uh I have it
  511. 18:32post to Slack, and I like emphasize this
  512. 18:34like I want it to be brief and fun, and
  513. 18:36sometimes it's really corny, and then
  514. 18:38sometimes it's like
  515. 18:39really good, uh and it'll be very
  516. 18:42quirky, and just post this like link in
  517. 18:45our Slack channel, and it's like, "Hey,
  518. 18:46here's your your pre-read." Some little
  519. 18:48quibble about like whatever, you know,
  520. 18:51like, "Hey, you guys are not making
  521. 18:52enough progress." Uh and then that's it.
  522. 18:55And then it's we have our meeting note,
  523. 18:57it's updated.
  524. 18:59What I like the most about this one, you
  525. 19:01can show you some of our like internal
  526. 19:04settings. So, this is like I give it
  527. 19:06access to all of these things. I'm like,
  528. 19:07"You can only view all of this stuff,
  529. 19:09cuz I don't want it going and like
  530. 19:11modifying our task database, our project
  531. 19:13database. Like everybody at Notion uses
  532. 19:15those. But this meetings database in
  533. 19:18particular, I'm like, "Yo, you can edit
  534. 19:20content cuz this is the one you're going
  535. 19:21to like write and update the page."
  536. 19:24It can read from our Slack channels,
  537. 19:28respond to our project one.
  538. 19:31And then this was new to me actually
  539. 19:33when I set this agent up is our MCP. So,
  540. 19:37we've had MCP and
  541. 19:39>> They have this
  542. 19:40>> other thing called workers which is like
  543. 19:42kind of like writing code. I haven't
  544. 19:44used them very much within custom
  545. 19:46agents, but in this one in particular,
  546. 19:47I'm like, "I know exactly where this
  547. 19:49metric is. It's in Honeycomb."
  548. 19:52And so I like just configured the MCP in
  549. 19:55Notion.
  550. 19:56Uh by the way, I like I like used the
  551. 19:59agent like set itself up cuz I was like,
  552. 20:01"Here's the query." I literally gave it
  553. 20:03a screenshot of the Honeycomb query. I
  554. 20:04was like, "I don't know how this works.
  555. 20:06Can you just like update your
  556. 20:07instructions?" And
  557. 20:08>> that you screenshot it. You didn't even
  558. 20:10copy and paste it. You're like, "Please
  559. 20:12OCR this screenshot."
  560. 20:15>> Too lazy. I'm like, "Here it is. Just
  561. 20:17take it.
  562. 20:18Figure it out." And it it kind of it got
  563. 20:20it mostly. Like most of the way there. I
  564. 20:23had to fiddle it with it a little bit,
  565. 20:24but yeah.
  566. 20:26>> What what I appreciate about this, and
  567. 20:28again, for anybody trying to just
  568. 20:29brainstorm
  569. 20:31workflows where AI can actually have a
  570. 20:34huge impact on your productivity at work
  571. 20:35or life, I just feel like write down
  572. 20:38what you would do if you had time. If
  573. 20:40you had time every morning at 9:00, you
  574. 20:42would sit down and you with your
  575. 20:44eyebrows would go through Slack. You
  576. 20:45would go through Honeycomb. You would
  577. 20:47ask people what's going on. You would
  578. 20:49look at GitHub. And then you would
  579. 20:50compile it. And then you would try to be
  580. 20:52very fun in Slack. Like it's it's just a
  581. 20:55description of what you would do. And
  582. 20:59>> Yep.
  583. 21:00>> it's it doesn't have to be that
  584. 21:01complicated. You can iterate so quickly
  585. 21:03on it. What I appreciate about this,
  586. 21:06you know, versus
  587. 21:07old era of more deterministic like
  588. 21:10workflow style builders is the updates
  589. 21:13are so easy to make. Just change the
  590. 21:15natural language, redo the order, change
  591. 21:18the trigger, give it more
  592. 21:20access to data, and then it's it's ready
  593. 21:23ready to go.
  594. 21:24>> Yeah, and you know, I think the other
  595. 21:26thing I I've gotten hung up on when
  596. 21:29trying to think about like these
  597. 21:30automations and I I've seen others do is
  598. 21:32that like
  599. 21:33you get this like
  600. 21:35you start giga braining it and you're
  601. 21:37like, well, how am I going to save like
  602. 21:395 hours of work a day? And I what you
  603. 21:42just said made me realize too that like
  604. 21:46the tedium that this removes for me is
  605. 21:49not like
  606. 21:50world changing.
  607. 21:52But it's like 20 minutes a day.
  608. 21:56And that's like 20 minutes I can spend
  609. 21:57doing other stuff. And that like it's
  610. 21:59not even just about like saving that 20
  611. 22:01minutes, but it's like
  612. 22:03protecting my brain from like having to
  613. 22:05context shift about all this stuff and
  614. 22:07like ingest it. And instead yeah, it's
  615. 22:09just I know that the information will be
  616. 22:11there when I'm ready to like read it and
  617. 22:13I'm ready to like shift gears to this
  618. 22:14project. Um rather than yeah. I I hate
  619. 22:18doing the like read this update, copy
  620. 22:21all this information, like put it into a
  621. 22:23like an update board. Like it's soul
  622. 22:25sucking.
  623. 22:25>> I mean, you and I have been doing this
  624. 22:27for a while. That's like that was I feel
  625. 22:30like 70% of my job. At some point 70% of
  626. 22:33my job was just like what's going on?
  627. 22:36>> Mhm.
  628. 22:37>> And how do I massage it
  629. 22:39into a format appropriate for the
  630. 22:41audience at hand? And it's always the
  631. 22:43same information. It's just like, what's
  632. 22:46the executive version of it? And what's
  633. 22:48the team version of it? And what's the
  634. 22:49full team version of it? And like
  635. 22:52I don't know. Like my shoulders dropped
  636. 22:53out of my ears when I realized we don't
  637. 22:56have like we just don't have to do it
  638. 22:57anymore. And the other thing that I
  639. 22:58think people maybe underappreciate about
  640. 23:01AI and this like just-in-time delivery
  641. 23:03is
  642. 23:04your AI your agent is never going to
  643. 23:06complain when you ask it to do this 5
  644. 23:08minutes before the meeting starts.
  645. 23:10>> I know. It's so It's so great.
  646. 23:13>> It's so great. It's just like when you
  647. 23:14have it, drop it, get it done and out of
  648. 23:18your brain. I think is Again, I go back
  649. 23:21to like burnout and enjoying your work
  650. 23:24and reducing toil and it just feels like
  651. 23:27a more relaxed way to work.
  652. 23:30>> Yeah.
  653. 23:31>> Yeah, we're we're happy.
  654. 23:33>> It's so funny cuz it is more relaxing
  655. 23:35and it's more fun and I feel like I'm
  656. 23:37getting more done.
  657. 23:38It's weird to have like this like
  658. 23:40win-win-win.
  659. 23:41>> Yeah. You know, they they do the
  660. 23:43triangle and they're like pick two and
  661. 23:44you're like, "No, I want to pick all
  662. 23:45three."
  663. 23:45>> Yeah, and I'm like give me the whole
  664. 23:47triangle.
  665. 23:47>> Give me the whole triangle. That Stamp
  666. 23:50it for the YouTube thumbnail. Give me
  667. 23:51the whole triangle. All right.
  668. 23:53>> This episode is brought to you by Orkes,
  669. 23:56the company behind open source
  670. 23:57Conductor, which powers complex
  671. 24:00workflows and process orchestration for
  672. 24:02modern enterprise apps and agentic
  673. 24:03workflows. Legacy business process
  674. 24:05automation tools are breaking down.
  675. 24:08Siloed low-code platforms, outdated
  676. 24:10process management systems, and
  677. 24:11disconnected API management tools
  678. 24:13weren't built for today's AI-powered
  679. 24:15world. Orkes changes that. With Orkes
  680. 24:18Conductor, you get a modern
  681. 24:20orchestration layer that scales with
  682. 24:21high reliability and brings humans, AI,
  683. 24:24and systems together in real time. It's
  684. 24:26not just about tasks. It's about
  685. 24:28orchestrating everything. APIs,
  686. 24:31microservices, data pipelines,
  687. 24:33human-in-the-loop actions, and even
  688. 24:34autonomous agents. So, build, test, and
  689. 24:37debug complex workflows with ease, all
  690. 24:40while maintaining enterprise-grade
  691. 24:41security, compliance, and observability.
  692. 24:44Orkes, orchestrate the future of work.
  693. 24:47Learn more and start building at
  694. 24:49orkes.io.
  695. 24:51>> Let's talk about So, we're talking about
  696. 24:53how meetings happen. Love this. You do
  697. 24:55write code, though.
  698. 24:57>> I do write code.
  699. 24:58>> Sometimes sometimes with your fingers
  700. 24:59and sometimes with your my favorite
  701. 25:02harness of the moment. Um so let's go to
  702. 25:04how you get
  703. 25:06coded.
  704. 25:07>> Yeah, I I want to show the little bit of
  705. 25:10a new workflow that we have going on in
  706. 25:13Notion. Um
  707. 25:15I honestly don't think this is
  708. 25:17necessarily a big feature that we're
  709. 25:18going to ship or some we might ship some
  710. 25:21version of this feature. So this is all
  711. 25:22basically internal only at this point.
  712. 25:25But prior to this, the way one I love
  713. 25:29Codex. I've been a Codex stand for like
  714. 25:33I don't know, 6-7 months now. And we
  715. 25:37started we started building this like
  716. 25:38Codex integration into Notion. Prior to
  717. 25:41this, it was like I mean obviously
  718. 25:44you're using the CLI to like write your
  719. 25:46prompt and then they created the Codex
  720. 25:47app which is which is nice, but I'm
  721. 25:49still like writing my prompt in this
  722. 25:51thing.
  723. 25:52So I started actually writing prompts in
  724. 25:54Notion pages where I can be a little bit
  725. 25:56more like free form and structured and
  726. 25:59you know I'm in like the CLI I don't
  727. 26:01have to worry about like hitting enter
  728. 26:03and then like oh like I sent my
  729. 26:04prompt. I can actually like write a
  730. 26:07document in Notion.
  731. 26:10But then of course I'm like cop or like
  732. 26:12highlighting all of the text copying it
  733. 26:14going into my terminal hitting paste and
  734. 26:16like letting it go. It's like fine.
  735. 26:18Um there's like MCPs and other stuff
  736. 26:20that I could be using but I'm I'm a very
  737. 26:22simple person. It's like too much too
  738. 26:24much stuff.
  739. 26:25Um so we built this thing that
  740. 26:29we're kind of like calling it
  741. 26:31I think we're calling it both software
  742. 26:32factory but I like it's internal project
  743. 26:34name is Boxy
  744. 26:36cuz it's like all these little VMs that
  745. 26:38we install Codex and Cloud Code on. It's
  746. 26:41our little boxes.
  747. 26:42Where now we can actually invoke them
  748. 26:44from
  749. 26:46like tasks within Notion. And so
  750. 26:49literally happened this morning a friend
  751. 26:51of mine,
  752. 26:53um, who's a Notion fan, texted me. He's
  753. 26:55like, "Hey, I like the tab block that
  754. 26:57you built, um,
  755. 26:59which is this thing. He's like, "But I
  756. 27:01really wish I could like, you know, I
  757. 27:02can like copy." I'll show you now. If I
  758. 27:05click on the dot dot dot thing next to a
  759. 27:07block, there's like copy link to block.
  760. 27:10He's like, "Man, I really wish I could
  761. 27:12just like copy link to a tab and then
  762. 27:14like send it to somebody."
  763. 27:16I was like, "Oh, yeah, that That sounds
  764. 27:18really easy." So, I opened up this task
  765. 27:21and I just took some notes and I dropped
  766. 27:23in this screenshot showing them, uh,
  767. 27:26where it could live. You know, this is
  768. 27:28like on the the tab block. If I right
  769. 27:30click on it, you get this little flyover
  770. 27:32menu.
  771. 27:33And I just described the task. I was
  772. 27:35like, "Yeah, let's put a copy link
  773. 27:37button here." I also noticed that
  774. 27:39hovering over the delete button didn't
  775. 27:41change to red. So, I was like, "Yeah, we
  776. 27:42should fix that." And I was like, "I
  777. 27:44know one edge case is like
  778. 27:46you're going to have to like if you land
  779. 27:48on a URL where where like linking to
  780. 27:52this block
  781. 27:53and this tab, like it's got to like
  782. 27:55switch to the tab on like fresh
  783. 27:57refreshes. So, I like kind of outlined
  784. 27:59all the the cases." But, you can see
  785. 28:01here, this is one, two, three
  786. 28:04paragraphs, four like four sentences and
  787. 28:06a screenshot. It was like, "Not a Not a
  788. 28:08lot."
  789. 28:09And then, uh, this new thing that we
  790. 28:11built, I can actually mention Codex from
  791. 28:14within our comments.
  792. 28:16And this triggers are like boxy. Uh,
  793. 28:18this is all our like internal dev
  794. 28:20tooling stuff.
  795. 28:21And then, it got to work. And
  796. 28:24I was looking at the timestamps earlier
  797. 28:26and I think 10:40, 10:51
  798. 28:29started the implementation. And then,
  799. 28:33another 10 minutes later, it replies
  800. 28:35with a pull request link and a preview
  801. 28:37URL cuz we like we do the, um, like
  802. 28:40preview environment stuff.
  803. 28:42And
  804. 28:43uh, it had like built the entire thing.
  805. 28:45And if I switch actually over to
  806. 28:49here's the pull request.
  807. 28:50It built like the entire thing. And it
  808. 28:52was like, here's how I tested it. And
  809. 28:54then this this was actually the coolest
  810. 28:56part to me is like it actually uploaded
  811. 28:57screenshots of it doing its own like UI
  812. 28:59verification. And there was like a CI
  813. 29:03failure in it. So I was like, hey.
  814. 29:06Replied down here like
  815. 29:08Oh, yeah. This part of this code change
  816. 29:10I was like, I don't know what is going
  817. 29:12on here. This doesn't make sense.
  818. 29:14And there's some type check things. And
  819. 29:16it was like, cool. Here's why we did
  820. 29:18this change. And I fixed your types.
  821. 29:22And then there was a merge conflict.
  822. 29:24>> Let let's also talk about just all world
  823. 29:26do world.
  824. 29:29The emotions around code review.
  825. 29:31>> Uh-huh.
  826. 29:33>> Like I love that you're like, I don't
  827. 29:34get this. Not I'm going to try to get
  828. 29:37it. Or I've done my best to investigate
  829. 29:39and I'm pretty sure this is wrong. Like
  830. 29:41literally it just I don't get it.
  831. 29:43I don't get it.
  832. 29:43>> Yeah.
  833. 29:44>> Like I mean I can like send send that to
  834. 29:46somebody.
  835. 29:47>> Oh, yeah.
  836. 29:48>> it with teammates? They're like, no man.
  837. 29:50Look it up. It makes it So that's one of
  838. 29:52my one of my code review mechanisms as
  839. 29:55well. As I'm just like, I don't think
  840. 29:57this is right.
  841. 29:59>> I yeah. One one one uh line that I've
  842. 30:02been putting in my prompts lately is I'm
  843. 30:04like
  844. 30:05I literally don't know what I'm doing
  845. 30:06here.
  846. 30:07You need to explain this to me.
  847. 30:09Especially doing all this CI stuff. I'm
  848. 30:11like, I'm in over my head. And like you
  849. 30:13got to you got to like explain it like
  850. 30:15I'm a five-year-old. And sometimes it's
  851. 30:17like
  852. 30:18literally like caveman style. Like here
  853. 30:20are the things. And I'm like, I needed
  854. 30:22this.
  855. 30:23>> Well, what I appreciate about this and
  856. 30:24we'll talk about it in in a little bit
  857. 30:26later I think is we're not getting any
  858. 30:28of these Claude code warm fuzzies from
  859. 30:30Codex. I love it.
  860. 30:32But when it talks to me I'm like, I feel
  861. 30:34real dumb when you're talking to me
  862. 30:36Codex. Can you
  863. 30:38>> Like, okay. Okay, dumb guy. Here's
  864. 30:40what's going on.
  865. 30:42>> So I think that sort of like I don't
  866. 30:44understand what I'm doing, please
  867. 30:46explain it to me is I love it, but I
  868. 30:48think it is a a Codex specific
  869. 30:50experience.
  870. 30:53Claude Code shows up and is like, "Hey
  871. 30:55buddy, guess what I made for you."
  872. 30:59Okay, so stepping back before we go too
  873. 31:02deep on the personalities of all these
  874. 31:04coding models,
  875. 31:05you have built just at mention, and I
  876. 31:08think people miss this, but it's
  877. 31:09important for particularly our
  878. 31:11engineering team and engineering leader
  879. 31:13listeners to pay attention to, which is
  880. 31:15everybody that I know that's smart it
  881. 31:17has some background agent hooked up to a
  882. 31:20virtual machine that they kick off so
  883. 31:22that you're not spinning up your local
  884. 31:24environment and doing all this stuff on
  885. 31:26your machine. Um
  886. 31:28>> Yeah.
  887. 31:28>> And it just I think the velocity where
  888. 31:30we'll we'll talk about this, but the
  889. 31:31velocity plus your dev ex plus your CI I
  890. 31:34think is
  891. 31:35a huge piece of AI adoption in
  892. 31:38engineering. So, if you were not if you
  893. 31:40don't have a like VM strategy and
  894. 31:43background agent strategy in your large
  895. 31:44engineering org,
  896. 31:46time time to get one. Time to do it.
  897. 31:49>> And we'll just ask Codex to build it. Be
  898. 31:50like,
  899. 31:51I don't know what I'm talking about, but
  900. 31:53I think I think this is a Claire said
  901. 31:55this is a good idea. Please build. Make
  902. 31:56no Make no mistake.
  903. 31:58Um okay, last last one. We have a last
  904. 32:02use case you were going to you were
  905. 32:04going to walk us through.
  906. 32:06>> Yeah, so we recently rebuilt our entire
  907. 32:11agent harness. The quick TLDR is just
  908. 32:14like everybody else we reached like this
  909. 32:16point of tool and instruction fatigue
  910. 32:18where you had this bloated system
  911. 32:19prompts. We're like, "Okay, we need to
  912. 32:21dumb this down." And we borrowed the the
  913. 32:23kind of like skills and progressive
  914. 32:25disclosure concept from coding agents
  915. 32:27and brought that to Notion AI.
  916. 32:29And when we were doing this big rewrite,
  917. 32:31we were asking ourselves like,
  918. 32:33you know, it only been like 6 months
  919. 32:35since we shipped the last rewrite. And
  920. 32:39this time we were like, what would what
  921. 32:40would we do differently like seeing the
  922. 32:42state of the art with coding agents? And
  923. 32:44someone had this really great idea to
  924. 32:48like let's not start with code. Like
  925. 32:51let's just start with specs.
  926. 32:53And what we've ended up building
  927. 32:57is we have this like in our checked into
  928. 32:59our code base, you see this we have this
  929. 33:01we're looking at this is a notion repo,
  930. 33:03but we have this agent specs subfolder.
  931. 33:05And within this subfolder we have all of
  932. 33:08these markdown documents. This is one
  933. 33:10that that I worked on. We have this
  934. 33:12thing in our
  935. 33:13AI called ask mode where we basically
  936. 33:16ban all of the like mutating tools. So
  937. 33:19it can only just like read and answer
  938. 33:20questions. And so when I was building
  939. 33:23this, I didn't start with writing code,
  940. 33:25I didn't start with anything. I just
  941. 33:26started with an empty markdown document.
  942. 33:29And
  943. 33:30I mean I actually just opened up like
  944. 33:32whisper and just started yapping about
  945. 33:36how this feature should work. And then
  946. 33:38at the end of it, I gave that I gave the
  947. 33:41yap session to Codex and was like,
  948. 33:43here's our other like spec library,
  949. 33:46learn the format, take my information,
  950. 33:49write a spec.
  951. 33:51And then it spikes the first version. I
  952. 33:53did a couple revisions on it.
  953. 33:56And I ended up with this markdown
  954. 33:57document. Now the markdown document is
  955. 33:59like it's nice, but what we did with it
  956. 34:02next in my opinion is is I I kind of
  957. 34:05think that this is like the future of
  958. 34:06software engineering where I then opened
  959. 34:09up Codex again, pointed it at this spec
  960. 34:12file, and I said,
  961. 34:15build it.
  962. 34:16And it basically one shotted this
  963. 34:19because the entire spec file is so
  964. 34:21comprehensive with code pointers with
  965. 34:23down at the bottom we have verification.
  966. 34:27And it was like, here is how you're
  967. 34:29going to verify all of this stuff works.
  968. 34:31And we've even built our own CLI tools
  969. 34:34so that you can run Notion AI from the
  970. 34:36CLI and it could, once it's done seeing
  971. 34:39that all the tests pass, it can actually
  972. 34:40just spin up Notion AI
  973. 34:43itself, send it queries, send it
  974. 34:45questions, enable ask mode, disable ask
  975. 34:47mode, and then see the transcripts and
  976. 34:50like see what actually happens.
  977. 34:52And I think the first shot of this took
  978. 34:54a couple hours, but I came back to
  979. 34:56whatever, couple thousand lines, did
  980. 34:58some code review, played with it myself,
  981. 35:00and I was like, it's right. It's like
  982. 35:02done.
  983. 35:03And
  984. 35:05you know, since then, we've made I can
  985. 35:07the other beauty of this is like this is
  986. 35:09in version control.
  987. 35:10So, I can go to the past changes of the
  988. 35:13spec file and I can see how the the spec
  989. 35:16has evolved. And I it I could go look
  990. 35:19through all of the code changes, which
  991. 35:20also have their own like history, but
  992. 35:22this is now the sort of like source of
  993. 35:25truth for how this part of Notion AI
  994. 35:28works. And it's just in plain English
  995. 35:30that can then be verified and
  996. 35:32implemented by agents.
  997. 35:34>> Well, I think the other thing that
  998. 35:35people don't appreciate is, you know,
  999. 35:36taking this outside of the engineering
  1000. 35:38flow is this plain English can be
  1001. 35:41ingested by other parts of the business
  1002. 35:43that need this information. So, let's
  1003. 35:46say you need to then release this
  1004. 35:48feature via some sort of marketing. This
  1005. 35:51is actually like a pretty good asset
  1006. 35:54that explains how it works, that can be
  1007. 35:57translated into another another thing
  1008. 35:59that in a way that like code itself
  1009. 36:01>> Yeah.
  1010. 36:02>> is still a little intractable. And so,
  1011. 36:04this idea of spec-driven development,
  1012. 36:06but what I like about what you said, I
  1013. 36:07don't want people to miss is the way you
  1014. 36:09make these updates is you update the
  1015. 36:11spec and go go go look, make the make
  1016. 36:14the update, change the date.
  1017. 36:15>> Exactly.
  1018. 36:16>> Um and so, like the spec is the source
  1019. 36:17of truth, the spec as the the change
  1020. 36:20log, I think is a really interesting
  1021. 36:23model. And
  1022. 36:25for people that are watching, it's very
  1023. 36:28detailed. It's very technical. So, it's
  1024. 36:29not like there is not code
  1025. 36:32in the spec. There's just not all the
  1026. 36:35code in in the spec. And I think that's
  1027. 36:38uh a really kind of good hybrid model
  1028. 36:41for experienced engineers to start to
  1029. 36:44bridge into what would it look like to
  1030. 36:46have an agent do more of your coding
  1031. 36:49work while you still do architecture
  1032. 36:51work, while you still do design work,
  1033. 36:52while you still make sure that the thing
  1034. 36:54is going to scale.
  1035. 36:56>> Yeah, exactly. I
  1036. 36:58I view our job as like engineers
  1037. 37:01evolving into like systems thinkers and
  1038. 37:05architects. And not And not even just
  1039. 37:07necessarily writing like the spec and
  1040. 37:10thinking about the behaviors, but most
  1041. 37:12importantly is like the verification
  1042. 37:14loop. Like, is it a Like, how should it
  1043. 37:16verify correctness of this feature um or
  1044. 37:19this change? And honestly, it's like if
  1045. 37:22it can't or if like the verification's a
  1046. 37:24little hazy, it's like that's the first
  1047. 37:26thing you actually should be going and
  1048. 37:27doing. It's like, do you have a tool to
  1049. 37:30let the agent uh run itself? That's like
  1050. 37:32one of the first things we did with this
  1051. 37:33project was like, we we should actually
  1052. 37:35build a CLI so that I can tell Codex
  1053. 37:38like, send this prompt and like see what
  1054. 37:39happens. And now that we have that, then
  1055. 37:42we can take these specs and actually
  1056. 37:43just like go deeper and deeper and
  1057. 37:45deeper. And so, it's like we're still
  1058. 37:47doing engineering but I'm not doing the
  1059. 37:50like plumbing work of like wiring up
  1060. 37:52this ask mode feature.
  1061. 37:53>> Well, one thing is really funny is uh
  1062. 37:56me, I've been in software engineering
  1063. 37:57for 20 plus years. Like, we were writing
  1064. 38:00these documents anyways. We were writing
  1065. 38:03technical design documents, spec design
  1066. 38:05documents anyway. And we were sitting in
  1067. 38:07meetings with other engineers debating
  1068. 38:10the merits of one implementation versus
  1069. 38:12another.
  1070. 38:13And then we still had to go write the
  1071. 38:14code.
  1072. 38:15>> Yep.
  1073. 38:16>> It has like really It It hasn't added
  1074. 38:18work to to go into this model. It's
  1075. 38:20maybe like shifted the emphasis of where
  1076. 38:23the human attention goes, but these were
  1077. 38:25documents that at least I was in every
  1078. 38:28org that I've ever been in writing
  1079. 38:30before. And the other thing that I think
  1080. 38:32has changed so much is those meet those
  1081. 38:34docs
  1082. 38:35then waited for review.
  1083. 38:37And they waited for a meeting. And now,
  1084. 38:41no more waiting for the meeting, no more
  1085. 38:43waiting for review. Ship it, have a
  1086. 38:45verification loop,
  1087. 38:47debate it on the merits of it being live
  1088. 38:49and working versus the theoretical
  1089. 38:51merits of it sitting in a document
  1090. 38:54waiting for everybody's calendar to open
  1091. 38:55up for an you know, a live argument.
  1092. 38:59>> Yep. Yep. Couldn't agree more.
  1093. 39:01>> Let's let's do it.
  1094. 39:02This has been my I I just you and I
  1095. 39:05could talk all day about this. Just to
  1096. 39:06recap for everybody cuz I know I got to
  1097. 39:08get you out of here. Three use cases.
  1098. 39:10One, never prep for a meeting again.
  1099. 39:11Hook it up not only to your Slack, but
  1100. 39:14to your meeting notes, your GitHub, your
  1101. 39:15telemetry, and build the best stand-up
  1102. 39:18meeting. So, no one has to stand there
  1103. 39:20glassy-eyed being boring giving updates.
  1104. 39:23Second use case, background agents, at
  1105. 39:26mention from wherever you work, Notion
  1106. 39:28being a great place to do that, kicking
  1107. 39:30off virtual machines, getting PRs done,
  1108. 39:32just saying yes when your friend texts
  1109. 39:34you, can you ship this feature? And then
  1110. 39:37the last one,
  1111. 39:38putting all your specs in your repo,
  1112. 39:40using them as a source of truth for a
  1113. 39:43more autonomous coding agent like Codex.
  1114. 39:46Let it cook for a couple hours, review
  1115. 39:48the code, and then when you update,
  1116. 39:50update the specs, don't update the code.
  1117. 39:52Did I get it right?
  1118. 39:53>> Nailed it.
  1119. 39:54>> Uh okay, let's do a couple lightning
  1120. 39:55round questions and I'll get out you get
  1121. 39:56you out of here. You and I love Codex.
  1122. 39:59Why Why do you love Codex? I'll tell you
  1123. 40:00why I love Codex, but you go first.
  1124. 40:02>> Um okay. I Well, so I first I first fell
  1125. 40:06in love Oh my god, did I just say that?
  1126. 40:09>> You did.
  1127. 40:09>> I first I first fell in love with Codex
  1128. 40:12so because
  1129. 40:14when I was like evaluating both like
  1130. 40:16Cloud Code and Codex. Um
  1131. 40:18I found anytime Claude Code like
  1132. 40:22filled up its context when you window,
  1133. 40:23it would just kind of like lose the plot
  1134. 40:25really quickly. And Codex, I don't I
  1135. 40:28don't know exactly what it's doing, if
  1136. 40:31it's the model, if it's the compaction,
  1137. 40:33if it's like both, but it can it can
  1138. 40:35grind for like hours. Um and
  1139. 40:38with with the way that I work, both the
  1140. 40:41systems and things that I work on and
  1141. 40:43just like I like to be able to fire off
  1142. 40:45a bunch of them like at the same time
  1143. 40:48and then like go to a meeting or go do
  1144. 40:50something else or like
  1145. 40:52uh spend my time kind of like round
  1146. 40:54robin managing like all of these agents.
  1147. 40:56Like I I I don't necessarily want to I'm
  1148. 40:59not the person that is like sitting with
  1149. 41:00the browser open and like um some agent
  1150. 41:02next to it and like iterate, look at the
  1151. 41:04browser, iterate, look at the browser.
  1152. 41:06I'm like
  1153. 41:07the more the closer I can get to
  1154. 41:09one-shotting solutions, the better uh
  1155. 41:11cuz that frees me up to do other stuff.
  1156. 41:13Um and so I found that like Codex was
  1157. 41:16was pretty good about that. I also just
  1158. 41:18feel it's like
  1159. 41:19pretty simple. Like it's there's not a
  1160. 41:23lot of bells and whistles. It's not like
  1161. 41:25too fancy necessarily. Um I'm happy with
  1162. 41:29the addition of like MCP and skills um
  1163. 41:32and some like other stuff coming out. I
  1164. 41:34also really love GPT-5 for um I think
  1165. 41:38it's a great model. So I'm like all of
  1166. 41:39those things together, it's just
  1167. 41:42it really like matches my working style
  1168. 41:45uh and type of work a lot.
  1169. 41:47>> Yeah, I'll I'll tell you why I love
  1170. 41:48Codex and I sent this to somebody. I
  1171. 41:50said
  1172. 41:51work trees everywhere.
  1173. 41:53Port 3 3000 through 3009 spoken for.
  1174. 41:56Like we're just we're just going across
  1175. 41:59across the board. Um I do think it's
  1176. 42:01good at long running tasks. I like its
  1177. 42:03concept of projects cuz I run a lot of
  1178. 42:05different projects. I think this is like
  1179. 42:07a very helpful
  1180. 42:08mental model. And then it's great at
  1181. 42:11code review. Honestly,
  1182. 42:13it's just like a really good code
  1183. 42:15reviewer. It's a really good security
  1184. 42:17reviewer. Um tireless, uncomplaining, um
  1185. 42:21with the most tedious of things. And so
  1186. 42:24I I find it's one of my one of my daily
  1187. 42:27drivers. I just I really really like it.
  1188. 42:29It's good. Okay, second question because
  1189. 42:31you and I also agree on this.
  1190. 42:33Give people the reason. This isn't even
  1191. 42:35a question. This is a a demand for you
  1192. 42:37to share my point of view, which is why
  1193. 42:40bang on developer experience and CI
  1194. 42:43speed right now.
  1195. 42:45>> A couple a couple things. To me, CI was
  1196. 42:47like
  1197. 42:48super important prior to agents, um
  1198. 42:51because in my opinion
  1199. 42:53I mean, it's not even an opinion. It's
  1200. 42:54like fact. That like the faster your CI
  1201. 42:57completes, the faster you get signal,
  1202. 43:00um the faster your like the more
  1203. 43:03comfortable your engineers will feel
  1204. 43:05with like making changes and doing
  1205. 43:07things because they know like I can make
  1206. 43:09a change and get it pushed into dev or
  1207. 43:12into production really quick because I
  1208. 43:13know my CI is fast. If it's slower, then
  1209. 43:15you're building up these like monster
  1210. 43:17changes and you're going to be even
  1211. 43:19slower about like judiciously like
  1212. 43:22reviewing every little like tiny thing
  1213. 43:25when I I'm like a
  1214. 43:26learn-through-like-doing
  1215. 43:28sort of person. And if I can close the
  1216. 43:31iteration loop like even tighter, then
  1217. 43:34I'm going to be putting out a change.
  1218. 43:36People are going to be using it. I will
  1219. 43:37take that feedback. I will make another
  1220. 43:39change. And I won't have to worry about
  1221. 43:41um
  1222. 43:42you know, it taking another day before
  1223. 43:43like the deploy train is ready to go. I
  1224. 43:46just want to like I want to crank really
  1225. 43:47really fast. And that was all pre-agent.
  1226. 43:49And now that we're like in the agent
  1227. 43:51land it's it's that but like on steroids
  1228. 43:55because agents don't get tired. They can
  1229. 43:58work on a VM. They can work like while
  1230. 44:01I'm sleeping. And you know, if I'm take
  1231. 44:03if I've got a CI loop that takes an hour
  1232. 44:07to run,
  1233. 44:08that your agent is going to sit there
  1234. 44:10and spin for like an hour waiting for
  1235. 44:11results to like do something. If it
  1236. 44:13takes 3 minutes to run, like holy crap,
  1237. 44:15how much more stuff are you you as a
  1238. 44:18human and then especially as your like
  1239. 44:19little swarm of agents going to be able
  1240. 44:21to get done? Like so so much more. Um
  1241. 44:24and so I
  1242. 44:25super important.
  1243. 44:26>> I I agree and we just had Steve from
  1244. 44:28Stripe on and they're doing like 1,300
  1245. 44:32agent PRs a week. And you cannot do
  1246. 44:35>> Yeah.
  1247. 44:35>> Yeah. Yeah, you like cannot do that if
  1248. 44:37your CI is slow. It's just you might as
  1249. 44:40well be throwing all those PRs in the
  1250. 44:41trash. And so I do think there is just a
  1251. 44:45true mathematical limit
  1252. 44:47>> Yep.
  1253. 44:47>> on your capacity to ship code to
  1254. 44:49production
  1255. 44:50that is a reflection of how fast your CI
  1256. 44:53pipeline is. And so if you are again,
  1257. 44:55engineering leaders, if you are not
  1258. 44:56spending time on making that fast and
  1259. 44:59you are tolerating something slow there,
  1260. 45:01you're not going to get the the benefits
  1261. 45:03of AI that you could. And honestly, like
  1262. 45:04good for AI, good for humans.
  1263. 45:06No engineer wants to sit waiting for
  1264. 45:09their stuff to hit hit production. It's
  1265. 45:11miserable on the engineer side, lots of
  1266. 45:13downsides. So allocate time
  1267. 45:17to your pipeline, please.
  1268. 45:18>> Yep. Yep.
  1269. 45:19>> Ryan Ryan and Claire say so. All right,
  1270. 45:21last question.
  1271. 45:23When AI is not listening,
  1272. 45:27it's writing bad specs,
  1273. 45:29it's not being funny in Slack, what is
  1274. 45:31your prompting strategy? Do you yell?
  1275. 45:35>> Yeah. I can I can
  1276. 45:37>> I can be a little bit of a diva
  1277. 45:39sometimes if it like really goes off the
  1278. 45:41rails. The
  1279. 45:43the the other the other prompting
  1280. 45:45strategy that has like saved my ass
  1281. 45:47working on the CI stuff lately is
  1282. 45:50because like even the best models I feel
  1283. 45:52like can sometimes be a little
  1284. 45:53sycophantic.
  1285. 45:54I'll be like
  1286. 45:56I will just like be like you're wrong.
  1287. 45:58Like you need to defend your argument.
  1288. 46:01Because I like I want it to defend it in
  1289. 46:03the way that I like I want but I'm like
  1290. 46:05I just need
  1291. 46:07I just need to see the evidence that if
  1292. 46:09I push counter to what it has done that
  1293. 46:11it can like back up with like good
  1294. 46:14pointed reasons rather than just be like
  1295. 46:16are you know are you sure this like
  1296. 46:18change looks okay? It's like oh boy it's
  1297. 46:19like totally fine. I'm like no no no I
  1298. 46:22need like the cited hard argument
  1299. 46:25against it cuz like in a lot of times
  1300. 46:28like with the CI stuff I'm like I
  1301. 46:30don't know what I'm doing. I know
  1302. 46:32generally what I'm doing but like the
  1303. 46:34specifics are a lot more nuanced and I
  1304. 46:37like I need to get this right. Um and
  1305. 46:39that's been super helpful and then when
  1306. 46:40it goes off the rails I'm like
  1307. 46:42I can be such a diva too.
  1308. 46:46>> Escape all caps no.
  1309. 46:49That's what I do.
  1310. 46:51Interrupt and no. Steer the
  1311. 46:52conversation. Well arrow button has
  1312. 46:55never gotten so much work. Ryan this was
  1313. 46:57so much fun. Where can we find you and
  1314. 47:00how can we be helpful?
  1315. 47:02>> Uh you can find me on X. Um I'm out
  1316. 47:06there shilling for Notion right now a
  1317. 47:08lot. Um but that's that's basically
  1318. 47:11where I spend my time. Yeah I my DMs are
  1319. 47:13open so if you have Notion problems I
  1320. 47:15like to try and fix them. I
  1321. 47:17I'll send it to Boxy and we'll get it
  1322. 47:19done.
  1323. 47:20>> Perfect love it. Well thanks for joining
  1324. 47:21the podcast.
  1325. 47:22>> Thanks for having me Claire.
  1326. 47:25>> Thanks so much for watching. If you
  1327. 47:27enjoyed the show please like and
  1328. 47:29subscribe here on YouTube or even better
  1329. 47:31leave us a comment with your thoughts.
  1330. 47:33You can also find this podcast on Apple
  1331. 47:35Podcasts, Spotify, or your favorite
  1332. 47:37podcast app. Please consider leaving us
  1333. 47:40a rating and review which will help
  1334. 47:42others find the show. You can see all
  1335. 47:44our episodes and learn more about the
  1336. 47:46show at howiaipod.com.
  1337. 47:50See you next time.

About this transcript

This page contains the full transcript of Spec-driven development: the AI engineering workflow at Notion | Ryan Nystrom by How I AI, generated from the public captions YouTube serves with the video. The transcript has 8,848 words across 1,337 segments, with the original timestamps preserved so you can click any line to jump to that moment in the embedded player.

What you can do with it

Use the transcript to take notes, quote the speaker, build a study guide, generate a summary with ChatGPT or Claude via the YouTube Summary tool, or export it as a timed subtitle file with YouTube to SRT. You can also re-open it in the transcriber to translate the transcript into 100+ languages.

Free YouTube transcript tool

YouTube2Text is a free YouTube transcript generator — no signup, no daily limit. Paste any YouTube link and get the full transcript instantly, with timestamps, click-to-jump, translation to 100+ languages, AI prompts for ChatGPT, Claude, and Gemini, and exports to TXT, SRT, VTT, or Markdown.