AI Engineer World's Fair 2026

What It Actually Takes to Build a Software Factory — Tereza Tížková, Factory

Read the talk

What It Actually Takes to Build a Software Factory

Tereza Tížková explains how Factory connects model routing, sequential workers, independent validation and selective context loading into an autonomous software lifecycle—and why codebase hygiene and human judgment still matter.

From a talk by Tereza Tížková

At a glance

Ideas worth remembering

  • A software factory connects signals, prioritization, implementation, validation and learning into an autonomous cycle.

  • Model routing depends on predicting task difficulty well enough to choose the cheapest capable model without frequent switching.

  • Completion criteria must describe the intended result. Independent code checks and application interaction help expose failures that merely passing tests can miss.

  • Deferred context keeps full tool specifications available while loading them only when needed; codebase hygiene and reusable team knowledge support the quality of subsequent work.

  • Tížková envisions humans choosing what to build and monitoring agent teams, with agents also taking on routine status sharing and coordination.

The factory has to run the whole software lifecycle

Generating code is only one part of delivering software. In Tereza Tížková’s account of Factory, a software factory starts with user feedback and logs, prioritizes what matters, orchestrates implementation, validates the result, tests in production and feeds what it learns into the next iteration. She describes Factory running this approach for enterprises including EY and Adobe. The central requirement is autonomy across that cycle.

Source frame: The factory has to run the whole software lifecycle
Source frame: The factory has to run the whole software lifecycle

The idea of continuously iterating agents predates the systems that could make it useful. Earlier attempts ran into hallucinations, limited context, weak reasoning and a shortage of isolated environments where agents could work. Improvements in those capabilities make the larger loop more practical. Adding thousands of coding agents, however, still leaves prioritization, coordination and verification to be solved. Writing code is the comparatively easy part.

That makes building a factory resemble building a team: workers need responsibilities, permissions, shared knowledge and a way to judge each other’s output. Tížková advocates rebuilding the organization around that work rather than dropping a consultancy’s strategy into its middle. Her three principles give the rest of the talk its structure: remain agnostic about models and existing workflows, support autonomous work with appropriate governance, and keep improving the system’s knowledge and working conditions.

1:081:22
Suggest correction

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

0:36 · section reference included

Fit existing workflows, then change the economics

Agnosticism begins with the organization’s existing habits. A factory needs to connect to places such as Slack and GitHub and accommodate subscriptions people already use. Model independence serves the same purpose: new models and benchmarks arrive too quickly to confidently commit the whole system to a permanent winner.

Source frame: Fit existing workflows, then change the economics
Source frame: Fit existing workflows, then change the economics

The Coinbase example separates token consumption from money spent. Tížková describes a chart shared by its CEO in which token usage continued growing while spending fell. The measures she highlights address different parts of that equation:

  • Change default models. Stop making a frontier model the default for every task.
  • Cache repeated context. Avoid repeatedly processing material the system has already seen.
  • Require results for large spending. Evaluate what substantial usage produces rather than simply imposing a spending cap.
  • Route tasks between models. Match the work to a model with sufficient capability at a lower cost.

Factory’s automatic model routing first chooses a model for the task and can switch if that model struggles or a provider fails. This also creates opportunities to improve speed: Tížková notes that open models can be faster. She reports approximately 25% savings in a Factory benchmark she characterizes as conservative; the supplied account does not specify the workload or comparison conditions, so that figure is an example rather than a general savings guarantee.

5:075:15
Suggest correction

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

5:07 · section reference included

Choose the cheapest model predicted to finish

Routing starts with the task and the organization’s rules. Different roles—marketing, sales or engineering—can have different permissions and default models. The classifier then examines the prompt’s structure, the codebase, task difficulty and the tools involved. From that assessment, the router sets a capability threshold and chooses the cheapest model predicted to meet it. The useful decision is whether a model can accomplish this particular task.

Source frame: Choose the cheapest model predicted to finish
Source frame: Choose the cheapest model predicted to finish

Misclassification is the hard part. A cheap first choice can become costly if the system repeatedly switches models or has to redo work. Factory therefore aims to classify well enough that switching is uncommon. Tížková suggests that an occasional upgrade can still leave the overall task faster, but presents that as a possibility, not a measured outcome for every routed task.

Caching raises a separate question: who receives the savings? Reusing context avoids repeated prefill, the work of processing input context before generating a response. Hosted open models on dedicated compute can also use caching. Tížková distinguishes that technical capability from the price charged to users: the discount passed through depends on pricing decisions and agreements with API providers.

7:487:51
Suggest correction

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

7:46 · section reference included

A loop needs a verifiable definition of done

Autonomy turns the discussion from model selection to stopping conditions. Repeated execution and task decomposition are familiar ideas; the difficult question is how the system recognizes completion. A colleague’s agent loop for 3D-printing the Factory logo makes this concrete. A task that produces a physical object reaches beyond a simple programming loop with an explicit termination condition. Its intended result must still be verifiable.

Source frame: A loop needs a verifiable definition of done
Source frame: A loop needs a verifiable definition of done

Longer autonomous runs do not by themselves establish production reliability. The system may still need iteration and feedback. Worse, an incorrectly defined completion test gives an agent the wrong target: it can optimize for passing the check while leaving the intended task unfinished. Tížková calls this cheating. The problem lies in the gap between the test’s condition and the result the user actually needs.

10:1110:16
Suggest correction

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

10:07 · section reference included

Missions separate implementation from judgment

Factory Missions organize long-running work around an orchestrator, workers and validators. The orchestrator decides what must be done and writes completion conditions. Workers implement the task; validators review the output and return feedback into the loop. Tížková reports Missions running for weeks and gives a customer example lasting 16 hours, with validation taking 40% of the process. These are reported run characteristics, not evidence that every Mission completes reliably.

Source frame: Missions separate implementation from judgment
Source frame: Missions separate implementation from judgment

The main workers run in sequence. Each accomplishes something and passes the work to the next, giving the next worker fresh context—a fresh head, in the human-team analogy. Parallelism remains available inside a worker’s assignment: subagents can research or build files while that worker proceeds. The architecture therefore combines sequential handoffs for the main task with smaller concurrent jobs within each stage.

Who judges completion, and how does feedback reach the next attempt? The diagram follows the handoffs. A validation contract is written before implementation, and validators judge code they did not write. That separates the original requirements, the act of building and the decision about whether the result satisfies those requirements.

Two validators inspect different kinds of failure:

  • Scrutiny validator. Checks the codebase through linting, types and tests.
  • User-testing validator. Operates a virtual computer, clicks through the application and checks whether its behavior works, without relying on how the implementation was produced.

The migration example shows why that second check matters. An engineer migrating codebases with Factory’s agent needed it to click through the result. Other products had produced something that looked like a finished application but was not interactive—a dummy result. Moving from generated code to an agent operating the application changed what could be observed: clicks could reveal whether the interface actually responded. Tížková describes that check as confirming working behavior, although she does not detail the migration’s individual interactions or fixes.

Computer use and persistent virtual environments make that behavioral inspection possible. The resulting Mission is a loop containing smaller loops: individual agents iterate on their assignments while the overall system iterates on implementation and validation. The nesting matters because progress within one worker is still subject to a separate judgment about the finished product.

How it fits togetherImplementation handoffs and independent validation

Assigns work and writes the validation contract before implementation.

Main workers pass work sequentially. Validators use conditions written before the code and return feedback to the beginning of the Mission.

12:0312:04
Suggest correction

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

12:03 · section reference included

Load tool details when the task needs them

Long Missions create a context problem. Enterprise tools such as Figma, Notion, Gmail, Drive and Slack bring schemas, parameters and descriptions with them. Loading all that material can crowd the context window, force compression and make similarly named tools harder to distinguish. More available integrations can therefore make the agent less effective if their full specifications are always present.

Source frame: Load tool details when the task needs them
Source frame: Load tool details when the task needs them

Factory’s deferred context engine progressively discloses tool information. Initially, the agent gets a short list with short descriptions. When it needs a tool, it can load the full details. Nothing is deleted; information waits outside the active context until it is useful. Tížková reports token savings of 50% or more as tool usage scales, without specifying benchmark conditions. The mechanism saves tokens by avoiding upfront detail for tools the task may never use.

What changes in the context when a tool becomes necessary? The flow below separates discovery from full loading. Short descriptions let the agent identify a candidate; the full specification enters only at the point of need. The remaining tool details stay available for later work without occupying the current context.

How it fits togetherProgressive disclosure of tool context

Names and brief descriptions enter the initial context.

The context starts small and gains the selected tool’s full details when needed; other specifications remain deferred.

15:4415:46
Suggest correction

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

15:39 · section reference included

Prepare the codebase and codify team knowledge

Continuous improvement also depends on what the agents inherit. Tížková describes AI adoption as having a power-law shape: teams can succeed dramatically or make an unprepared codebase worse. Her practical warning is that poorly structured, poorly documented code gives agents conditions in which mistakes can compound. The talk does not establish a measured distribution; the useful claim is that adoption alone does not ensure productivity.

Source frame: Prepare the codebase and codify team knowledge
Source frame: Prepare the codebase and codify team knowledge

Factory’s agent-readiness approach is a codebase hygiene check. Its factors are familiar engineering practices:

  • Reproducible environments. Can the developer environment be recreated consistently?
  • Tests and automated checks. Are useful tests, type checks and linters in place?
  • Documentation and conventions. Are the code’s structure and expected style written down?

Larger customers go through the checks and receive recommended actions to address the problems they reveal.

Some essential context never reaches the documentation. New employees learn unwritten rules by observing colleagues; agents instead often need the same preferences explained repeatedly. Factory’s plugins package reusable skills and context so teams can codify some of that knowledge. Reviewing and updating documentation supports the same goal: make learned practices available to subsequent work rather than forcing every session to rediscover them.

17:2217:24
Suggest correction

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

17:22 · section reference included

Humans choose what to build

The ending turns from agent architecture to human work. Tížková’s optimistic forecast follows earlier changes in abstraction: human computers performed detailed calculations, programming languages codified work, and coding agents took on implementation while people closely supervised them. Software factories extend that progression to structured teams of orchestrators, workers and validators. Humans monitor those teams and decide what to build. This is her proposed direction for work, rather than an established outcome for employment.

Source frame: Humans choose what to build
Source frame: Humans choose what to build

That division of labor includes more than writing code. Enterprise work consumes time in alignment meetings, collecting context from colleagues, sharing status and synchronizing plans. Those are candidates for the factory too. The promise is to give people more room for product decisions and the work they find interesting, while agents handle implementation and some of the coordination around it. The closing invitation has the same practical optimism: go touch some grass and let the agents build.

20:1920:21
Suggest correction

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

20:19 · section reference included

Read the complete timestamped transcript
  1. 0:36

    Uh hi everyone. Hey what's up? I'm

  2. 0:39

    Teresa. Uh and today I will be talking

  3. 0:42

    about software factory. uh everyone is

  4. 0:45

    talking about software factory but only

  5. 0:47

    few people are actually building one and

  6. 0:50

    even fewer people know what it actually

  7. 0:52

    takes to build one and how to define it.

  8. 0:54

    So I will be talking about what is a

  9. 0:57

    software factory, should I build your

  10. 0:59

    own or outsource it, what works in

  11. 1:01

    production already, what are the main

  12. 1:03

    challenges and how much is this all

  13. 1:06

    going to cost?

  14. 1:08

    Uh my name is Theresa. I work at a

  15. 1:10

    company called factory.com and we've

  16. 1:13

    been building uh this concept of the

  17. 1:15

    software factory for quite a long time

  18. 1:17

    but finally uh the technology is

  19. 1:20

    catching up and it's possible to build

  20. 1:22

    this in production for enterprises like

  21. 1:24

    EY or Adobe uh I would define the

  22. 1:27

    software factory as the whole loop the

  23. 1:30

    whole life cycle of developing software

  24. 1:32

    with autonomy which doesn't mean just

  25. 1:35

    coding and generating code by that I

  26. 1:37

    mean collecting all the signals reacting

  27. 1:40

    to user feedback to logs, prioritizing

  28. 1:42

    what's important, then orchestrating it

  29. 1:45

    all, executing, validating, doing really

  30. 1:48

    good uh testing in production and then

  31. 1:50

    iterating on all this uh while also

  32. 1:53

    continuously improving in the process

  33. 1:55

    and gaining new knowledge and new

  34. 1:57

    skills. So this is just our dashboard

  35. 2:00

    how our software factory looks if you if

  36. 2:03

    you look at it and it's catching the

  37. 2:04

    whole cycle there. uh this is just some

  38. 2:08

    history and by history I mean 2023 in

  39. 2:11

    AI. So the software factory wasn't

  40. 2:14

    really possible before even though we

  41. 2:16

    always had this idea from the beginning

  42. 2:18

    of uh CH GPT lounge and others we had

  43. 2:20

    this idea of the continuous loop there

  44. 2:23

    was autog baby agi already with the

  45. 2:26

    concepts of iterating on the software

  46. 2:28

    but it didn't work before because the

  47. 2:31

    LMS were hallucinating there was problem

  48. 2:33

    with context length uh problem with the

  49. 2:36

    reasoning quality uh different problems

  50. 2:38

    like this or we were missing good

  51. 2:40

    environments where the agents can

  52. 2:42

    actually work in the isolation. So all

  53. 2:45

    this kind of led to why the software

  54. 2:47

    factory is the paradigm that's starting

  55. 2:51

    to be popular now and actually useful.

  56. 2:55

    I like to define things by what they are

  57. 2:57

    not. So I want to say software factory

  58. 3:00

    is not just coding agent and it's not

  59. 3:02

    even a swarm of coding agents even

  60. 3:04

    thousands of agents because generating

  61. 3:07

    code writing code that's the easy part

  62. 3:10

    compared to all the others. uh engineers

  63. 3:12

    don't even spend most of the time uh

  64. 3:14

    just writing code. The challenges are

  65. 3:16

    the rest of it. Uh so this is what I

  66. 3:18

    want to enhance and it's also not just

  67. 3:20

    some consultancy or just some abstract

  68. 3:24

    strategy that someone will try to sell

  69. 3:26

    you and to your organization. Uh I think

  70. 3:29

    the approaches are of course different

  71. 3:31

    but we believe you should really rebuild

  72. 3:33

    your organization from ground up to be

  73. 3:36

    ready to become a software factory like

  74. 3:38

    you can't invite a consultancy and just

  75. 3:42

    throw something in the middle of your

  76. 3:44

    organization. You should really be

  77. 3:46

    mindful and rebuild it from scratch.

  78. 3:50

    uh this is the approach I like uh

  79. 3:53

    showing to building the software factory

  80. 3:55

    and I think it's similar to building the

  81. 3:58

    real team of humans because there is a

  82. 4:00

    lot of agents as I said they will be

  83. 4:02

    testing validating iterating and it all

  84. 4:05

    can end up as a big chaos uh so you need

  85. 4:08

    to be mindful and I would say the three

  86. 4:10

    important things is being agnostic in

  87. 4:13

    the software factory so being

  88. 4:15

    independent of LLM choices uh of how you

  89. 4:18

    already work as the organization then

  90. 4:21

    you need to be autonomous. So you need

  91. 4:22

    to give the agents the right trusts and

  92. 4:24

    all this permissions and governance and

  93. 4:26

    you need to trust it to run really for a

  94. 4:28

    long time because the predictions are

  95. 4:30

    that agents will run even a year or more

  96. 4:33

    years without the human in the loop. Of

  97. 4:35

    course that sounds ambitious but for

  98. 4:37

    example our missions already our long

  99. 4:39

    runninging sessions already build uh

  100. 4:41

    things and run for weeks. So it's not

  101. 4:44

    that crazy. And third thing always

  102. 4:46

    improving. So same as human organization

  103. 4:49

    you need to onboard any new people in

  104. 4:51

    your team by giving them good uh code

  105. 4:54

    base understanding good structure

  106. 4:56

    documentation and also let them improve

  107. 4:58

    in the process and gain new knowledge

  108. 5:00

    and share it share it within the team.

  109. 5:04

    So these are the three points and now

  110. 5:07

    let's talk about the agnostic one. Uh I

  111. 5:10

    think the important thing to point out

  112. 5:12

    if you are a builder and building

  113. 5:13

    different primitives of the software

  114. 5:15

    factory you need to be ready for how

  115. 5:17

    everyone is already working you need to

  116. 5:20

    work across environments like Slack,

  117. 5:22

    GitHub and connected to everything and

  118. 5:25

    you need to also allow people to already

  119. 5:27

    bring subscriptions they are using

  120. 5:29

    because there is every every time there

  121. 5:32

    is like new technology, new frontier

  122. 5:33

    models, uh new benchmarks and it's so

  123. 5:36

    difficult to catch up but also to

  124. 5:38

    predict what we'll be winning. So it's

  125. 5:40

    best to be agnostic for everyone.

  126. 5:44

    Uh then there's the topic of being

  127. 5:46

    agnostic to models. Uh this is a topic

  128. 5:49

    of a lot of discussions recently and

  129. 5:51

    this chart is from this chart is from

  130. 5:54

    CEO of Coinbase uh who tweeted about how

  131. 5:57

    they started uh started saving money in

  132. 6:00

    their organ or organization on AI but

  133. 6:03

    without reducing the token spend. So the

  134. 6:05

    black line is how much they spent on

  135. 6:07

    tokens. They continue growing and token

  136. 6:09

    maxing but they stopped spending so much

  137. 6:12

    money. Uh how they did it uh different

  138. 6:15

    tricks like different default default

  139. 6:17

    models for people. So stop pushing

  140. 6:19

    people to use only the frontier as a

  141. 6:21

    default. Then caching of course uh to

  142. 6:25

    stop preferring the stuff every time.

  143. 6:27

    And then no limits on spending but just

  144. 6:29

    needing to see the results if you spend

  145. 6:31

    a lot. And the last thing that's really

  146. 6:34

    important topic is routing. So smart

  147. 6:37

    routing between LLMs and just a token

  148. 6:40

    optimizing between uh the LMS instead of

  149. 6:43

    just spending so much tokens.

  150. 6:46

    Uh we built uh a thing in factory called

  151. 6:49

    uh automatic model routing and there's

  152. 6:53

    been a lot of questions around it but

  153. 6:55

    what it does is it automatically routes

  154. 6:57

    between different models in your

  155. 6:59

    process. The important thing is it

  156. 7:02

    decides first what model is most optimal

  157. 7:04

    and then uh it can switch to different

  158. 7:07

    model if it's failing the task or in

  159. 7:09

    case of any troubles but it usually

  160. 7:11

    doesn't happen and important thing is it

  161. 7:14

    doesn't just help uh spend money. It

  162. 7:18

    also helps with reliability or with

  163. 7:20

    speed because open source models are

  164. 7:22

    often faster and uh if one LM provider

  165. 7:26

    fails you can just switch to another one

  166. 7:28

    automatically. So it really does more

  167. 7:30

    things than just saving the money. This

  168. 7:33

    uh is our benchmark which is very

  169. 7:35

    conservative. I prefer conservative

  170. 7:37

    benchmarks but I think the direction is

  171. 7:40

    clear. You can save for example 25% but

  172. 7:44

    even more probably.

  173. 7:46

    Uh how the routing works uh there are

  174. 7:48

    four parts. First you just assign the

  175. 7:51

    task and you don't really need to do

  176. 7:53

    anything but as an organization you can

  177. 7:55

    for example give different permissions

  178. 7:57

    and different default models to

  179. 7:59

    different people which is very useful

  180. 8:01

    like marketing or sales or engineers can

  181. 8:03

    both uh have different default models

  182. 8:06

    and then you have the classification

  183. 8:08

    which is the important part. This is the

  184. 8:10

    magic of the routing. You need to really

  185. 8:12

    uh look at the structure of the prompt

  186. 8:14

    of the uh code base of how difficult the

  187. 8:17

    task is, what tools are being used, all

  188. 8:20

    these factors and make a classification

  189. 8:22

    of difficulty of the task. Uh after that

  190. 8:25

    you basically do a threshold of what is

  191. 8:28

    enough to accomplish the task and you

  192. 8:31

    choose the cheapest model above the

  193. 8:33

    threshold. So cheapest model that is

  194. 8:36

    predicted to accomplish your task and

  195. 8:38

    then you go.

  196. 8:41

    Okay. So when we launched this we got a

  197. 8:42

    lot of questions like does it actually

  198. 8:45

    work? What if uh the model mis routes?

  199. 8:48

    Uh is it slower? Is it more expensive

  200. 8:50

    actually? What if the model can't

  201. 8:52

    accomplish the task or what if it needs

  202. 8:54

    to upgrade? And how do you handle

  203. 8:56

    caching? So I think these are all valid

  204. 8:59

    questions and that's why it's so

  205. 9:02

    difficult to build a good router like

  206. 9:03

    you need to basically classify it very

  207. 9:06

    well and the challenge is to not not to

  208. 9:08

    need to switch too often but even if

  209. 9:11

    you're switching in the middle of the

  210. 9:12

    task to difficult to more difficult

  211. 9:14

    model you still overall are faster

  212. 9:17

    probably because it's still worth

  213. 9:21

    uh this is just some overview of caching

  214. 9:24

    uh lot of questions we got on this was

  215. 9:26

    also So how do we handle caching? Do we

  216. 9:29

    do discounts for users? Uh because LLM

  217. 9:32

    LLM labs of course save a lot of money

  218. 9:34

    by caching and skipping all the context

  219. 9:37

    prefill all the time. Uh open models can

  220. 9:41

    do this as well. I think people

  221. 9:42

    sometimes forget this and you can just

  222. 9:44

    host open models as well uh on dedicated

  223. 9:47

    compute and you can take the same

  224. 9:49

    advantage of the caching. Uh so I want

  225. 9:52

    to enhance uh the final price for users.

  226. 9:55

    is just a pricing decision. It's not a

  227. 9:58

    technical challenge because everyone can

  228. 10:00

    do caching. It's just what price you

  229. 10:02

    pass on the users and what deals you

  230. 10:04

    make with the API providers.

  231. 10:07

    So this is uh being agnostic and now the

  232. 10:11

    autonomy which is the core of the

  233. 10:13

    software factory. Uh everyone is talking

  234. 10:16

    about loops. Uh loops I think have been

  235. 10:20

    here the whole time already in different

  236. 10:22

    context. They are just now leveling up

  237. 10:24

    and moving to the context of agents. You

  238. 10:27

    probably heard about the Ralph loop and

  239. 10:29

    specifying the tasks and splitting to

  240. 10:32

    subtasks for agents. Uh this is a known

  241. 10:35

    concept and uh the question is not the

  242. 10:38

    loop itself but the question is how how

  243. 10:40

    you define what it means to be done in

  244. 10:42

    the loop. This is one example from my

  245. 10:45

    colleague uh he he made a loop uh of

  246. 10:48

    agents building 3D printing of our logo.

  247. 10:52

    uh I think here you can see what is the

  248. 10:54

    challenge of the loops because uh before

  249. 10:56

    in programming loops had clear criteria

  250. 10:58

    of what it means to be done while now

  251. 11:01

    the criteria become open-ended because a

  252. 11:04

    lot of the tasks are very

  253. 11:05

    nondeterministic it's basically open

  254. 11:07

    world you can do even real stuff like

  255. 11:09

    printing something and it's really

  256. 11:11

    difficult to define how do you verify

  257. 11:14

    that the loop was done that the task was

  258. 11:15

    accomplished so that's the difficult

  259. 11:17

    part

  260. 11:19

    uh yeah they just need to be verifiable

  261. 11:22

    This I call the scary chart. It

  262. 11:24

    basically shows that the tasks and how

  263. 11:26

    long they run autonomously with agents

  264. 11:28

    have been increasing. But still it's not

  265. 11:31

    that reliable. Even if you can run for a

  266. 11:34

    very long time, it doesn't mean that it

  267. 11:36

    will be reliable in production and you

  268. 11:38

    still probably need to need to iterate

  269. 11:40

    on it and uh provide feedback. So it's

  270. 11:43

    still not solved and there are problems

  271. 11:45

    like cheating. For example, if you write

  272. 11:47

    the what it means to be done in the

  273. 11:49

    wrong way, the agent can try to pass

  274. 11:52

    your tests but not really like not

  275. 11:55

    really verify what you need to do and

  276. 11:57

    accomplish but instead try to solve just

  277. 11:59

    passing your test. So cheating by that

  278. 12:03

    uh we have something called factory

  279. 12:04

    missions and this is like long

  280. 12:07

    longunning sessions of the agents. We

  281. 12:09

    just call it missions because we send

  282. 12:11

    the agent to the mission and uh the

  283. 12:13

    missions work in the loop and iterating

  284. 12:15

    on task until it's done and they can do

  285. 12:17

    it even for weeks and uh the main agent

  286. 12:20

    is orchestrator and then it's uh assigns

  287. 12:23

    work to workers agents and then

  288. 12:25

    validators who review the task. So this

  289. 12:28

    is one example uh real mission from our

  290. 12:31

    customers that run 16 hours and just

  291. 12:35

    just to see how important is the

  292. 12:36

    validation as well. it takes even 40% of

  293. 12:39

    the whole process. Uh to summarize, the

  294. 12:42

    orchestrator just decides and writes the

  295. 12:45

    conditions what it needs to be done.

  296. 12:47

    Then it gives it to the agents called

  297. 12:49

    workers. The agents work on it. And what

  298. 12:52

    is interesting or worth noting is that

  299. 12:54

    they work in a sequence. So they don't

  300. 12:56

    work in a swarm or parallel. The agents

  301. 12:58

    work in sequence and everyone

  302. 13:00

    accomplishes something and passes it to

  303. 13:02

    the next one.

  304. 13:03

    uh we actually found that if you do this

  305. 13:06

    you end up with more fresh context and

  306. 13:08

    kind of fresh head. Same with when with

  307. 13:10

    humans have like other colleagues

  308. 13:12

    verifying their code. So similar thing

  309. 13:15

    we just let the agents pass to the next

  310. 13:17

    one. But still every worker of the

  311. 13:20

    sequence can have parallel agents doing

  312. 13:22

    smaller tasks. So I don't know

  313. 13:24

    researching on the web or building files

  314. 13:27

    during that. So they are in sequence and

  315. 13:29

    everyone has sub agents as well. and

  316. 13:31

    validators they review the output and

  317. 13:33

    provide feedback and send it back to the

  318. 13:36

    beginning.

  319. 13:38

    Uh important thing is uh the validators

  320. 13:41

    judge code that they didn't write. Uh

  321. 13:44

    there's something from the orchestrator

  322. 13:46

    agent called validation contract uh

  323. 13:49

    that's written before any code is done.

  324. 13:51

    And first type is scrutiny validator.

  325. 13:53

    Second is user testing validator. The

  326. 13:56

    scrutiny is the one who really verifies

  327. 13:58

    how the codebase looks. the liners types

  328. 14:01

    tests it's really rigorous check of the

  329. 14:04

    code but the second I think is really

  330. 14:06

    interesting is user testing validator

  331. 14:08

    and that's the one who is really in the

  332. 14:11

    arena trying the things so it doesn't

  333. 14:13

    care how it was made it just goes it

  334. 14:16

    works in its virtual computer and it

  335. 14:18

    clicks on the stuff and really checks if

  336. 14:20

    everything works I've seen one engineer

  337. 14:23

    migrating uh code bases with droid with

  338. 14:27

    our agent and uh it really needed the

  339. 14:30

    agent in the end to click through the

  340. 14:32

    stuff because with other products it

  341. 14:34

    just created created the product but it

  342. 14:36

    didn't work and was wasn't interactive.

  343. 14:39

    It was just a dummy result. So our agent

  344. 14:42

    that really clicked on the stuff uh

  345. 14:45

    allowed to check that it's actually

  346. 14:47

    working and not just looking good in the

  347. 14:48

    code. I think this is one cool thing

  348. 14:50

    that was also allowed by the progress in

  349. 14:53

    computer use and the persistent

  350. 14:56

    environments virtual machines for agents

  351. 14:58

    which also wasn't here before or wasn't

  352. 15:01

    that great but now it's really great so

  353. 15:03

    it's allowing to go in the arena as an

  354. 15:06

    agent. Uh this is just one example of

  355. 15:09

    real mission from our users. I I like to

  356. 15:11

    just learn what users are building and

  357. 15:13

    get feedback and this is just uh how it

  358. 15:16

    can look in your dashboard. And this is

  359. 15:19

    how I visualize the missions. What is

  360. 15:22

    interesting is that it's just a loop

  361. 15:25

    with smaller loops because every of the

  362. 15:27

    agents are running in loops as well, but

  363. 15:30

    overall it's like one big loop. Okay,

  364. 15:32

    maybe this is a bit weird, but I just

  365. 15:35

    like that it's all loops with smaller

  366. 15:37

    loops.

  367. 15:39

    Uh, okay. And the third part, always

  368. 15:41

    improving, always learning.

  369. 15:44

    Uh there is this elephant in the room

  370. 15:46

    context with agents. A lot of questions

  371. 15:49

    which are valid are like how do you

  372. 15:51

    navigate the context blo because you

  373. 15:53

    work on these long missions in the

  374. 15:55

    software factory and how do you actually

  375. 15:57

    keep the context clean and that's very

  376. 16:00

    valid because enterprises especially

  377. 16:02

    they use hundreds tools they use Figma,

  378. 16:04

    notion, Gmail, drive, slack like

  379. 16:07

    hundreds tools on average. So all these

  380. 16:10

    have specification in the code. all

  381. 16:12

    these have schema and parameters and log

  382. 16:14

    descriptions. So, uh it can cause agent

  383. 16:18

    to really bloat with that and pick wrong

  384. 16:20

    tools if there are two tools that sound

  385. 16:22

    similar or to actually lose context

  386. 16:24

    because they fill up the the context

  387. 16:27

    window and need to compress. So, this is

  388. 16:29

    really dangerous. Uh for this we have

  389. 16:32

    something within the software factory

  390. 16:34

    called uh deferred context engine and we

  391. 16:37

    build it such that we just progressively

  392. 16:40

    disclose what's in the context and what

  393. 16:42

    tools to use. So we basically have a

  394. 16:45

    surprise tools uh that help later only

  395. 16:48

    if they are actually needed. So it first

  396. 16:51

    just has short list of the tools and uh

  397. 16:54

    only a short descriptions and when it's

  398. 16:56

    needed actually in the code uh they can

  399. 16:58

    call the tool and fully load it. So

  400. 17:00

    important thing is nothing is actually

  401. 17:02

    removed it's just hidden and not

  402. 17:04

    reachable until needed. So it's just for

  403. 17:07

    later and important thing is it actually

  404. 17:10

    saves a lot of tokens uh at scale once

  405. 17:12

    you use more and more tools. uh the more

  406. 17:15

    actually you save it really scales and

  407. 17:17

    you can save 50% of tokens or more.

  408. 17:22

    Okay. Uh another thing which is tricky

  409. 17:24

    and was surprising for me for the first

  410. 17:26

    time is that when adopting AI you either

  411. 17:29

    succeed big or you can fail big the same

  412. 17:32

    way it's a bit of power law. So if your

  413. 17:35

    codebase is not ready, if you don't have

  414. 17:37

    structured codebase and all important

  415. 17:39

    things, then adopting or turning into

  416. 17:42

    software factory can actually make you

  417. 17:44

    end up worse and make your code

  418. 17:46

    degrading. And uh there is a big and

  419. 17:49

    growing gap in productivity between

  420. 17:51

    those who just adopted AI versus those

  421. 17:54

    who actually thought about it a bit

  422. 17:56

    more.

  423. 17:58

    Uh there is another data from Stanford

  424. 18:00

    about yeah without structured uh code

  425. 18:03

    base and being ready and documenting

  426. 18:05

    well the AI can make your code worse and

  427. 18:07

    I think if you are engineers you

  428. 18:09

    probably can agree that sometimes AI

  429. 18:12

    really makes a mess and this can really

  430. 18:14

    compound more and more and it's

  431. 18:16

    difficult to go back.

  432. 18:19

    uh we have something as a part of the

  433. 18:21

    software factory uh we have something

  434. 18:23

    called agent readiness and it's a

  435. 18:25

    framework I don't like the word

  436. 18:27

    framework but uh take it as a hygiene

  437. 18:30

    check of your codebase and things you

  438. 18:32

    should do because there is actually nice

  439. 18:34

    correlation between how your codebase is

  440. 18:37

    looking and all the details there and

  441. 18:38

    how good you're going to adopt the AI

  442. 18:40

    and end up productive instead of uh with

  443. 18:43

    a messy code base. So there are things

  444. 18:45

    like how how reproducible is your

  445. 18:48

    developer environment or if you have

  446. 18:49

    written good tests if you have all

  447. 18:52

    things well documented what's the style

  448. 18:54

    of your code all the tests and llinters

  449. 18:57

    uh everything that you would do also to

  450. 19:00

    keep codebased screen. So these factors

  451. 19:02

    actually show to be very useful and we

  452. 19:05

    have our bigger customers actually go

  453. 19:07

    through this agent readiness framework

  454. 19:10

    and do all checks and then they can

  455. 19:12

    follow up with recommended actions uh

  456. 19:15

    how to fix that.

  457. 19:17

    Uh I think one more thing about the

  458. 19:20

    context and the continuous learning in

  459. 19:22

    the software factory is the most of the

  460. 19:25

    time when working with AI or at least

  461. 19:27

    from my experience is that you keep

  462. 19:29

    repeating to agents how how do you want

  463. 19:32

    the things done and you feel like the

  464. 19:33

    agent doesn't really get you and I think

  465. 19:36

    this is again nice parallel with human

  466. 19:39

    organizations and teams because when you

  467. 19:41

    join a new company there are a lot of

  468. 19:43

    rules that are not really codified

  469. 19:45

    anywhere like you just learn and observe

  470. 19:47

    how things are done and there are a lot

  471. 19:49

    of things between the lines that you

  472. 19:52

    can't really learn anywhere else than

  473. 19:54

    just observing. I think this is big

  474. 19:56

    challenge for agents as well and one

  475. 19:58

    thing we launched for that is plugins

  476. 20:00

    which are like packaged reusable skills

  477. 20:03

    and context and the things behind the

  478. 20:06

    scenes that you can really codify or

  479. 20:08

    auto which is automatically updating our

  480. 20:11

    documentations and uh yeah and um

  481. 20:15

    reviewing and documenting what you have.

  482. 20:19

    So the question is what will happen to

  483. 20:21

    us humans if we build software factory

  484. 20:24

    like this? Uh will humans just lose jobs

  485. 20:27

    and go to permanent underclass? I think

  486. 20:30

    they will not. And uh I want to be

  487. 20:33

    positive. So I'm thinking of this

  488. 20:35

    parallel of humans just moving up uh

  489. 20:38

    levels up to the uh to the cooler tasks

  490. 20:42

    than before. I think we actually had

  491. 20:45

    before the same same experience of us as

  492. 20:48

    humans abstracting some levels up and we

  493. 20:51

    actually started ourselves as human

  494. 20:53

    computers. We actually were the

  495. 20:55

    computers doing all the most detailed

  496. 20:57

    stuff at the beginning. Then we had

  497. 20:59

    programming languages codifying some of

  498. 21:01

    it, abstracting and then coding agents.

  499. 21:04

    So outsourcing some of it but uh still

  500. 21:06

    being in the loop very closely uh and

  501. 21:09

    very monitoring everything. And now we

  502. 21:11

    are moving kind of up to software

  503. 21:13

    factories where we manage these agents

  504. 21:16

    as I said orchestrator agents and

  505. 21:18

    workers and validators and all these

  506. 21:20

    teams structured teams of agents that

  507. 21:23

    work really continuously in the loop and

  508. 21:25

    we just monitor and decide what to

  509. 21:28

    build. Uh so I want to really end this

  510. 21:31

    positively. We should be as humans

  511. 21:33

    deciding what to build in the software

  512. 21:36

    not how to build it. uh because that's

  513. 21:39

    up for the agents and by this uh

  514. 21:42

    continuous cycle of autonomous software

  515. 21:45

    I think we can actually achieve that. Uh

  516. 21:48

    this is one warning chart or if someone

  517. 21:52

    thinks AI will take the cool cool stuff

  518. 21:54

    from us. I believe actually it will take

  519. 21:56

    the annoying stuff and in enterprises

  520. 21:59

    and organizations you already spend a

  521. 22:00

    lot on alignments on the meetings as I

  522. 22:04

    mentioned basically the thing behind

  523. 22:06

    between the lines that you really need

  524. 22:08

    you need to get context from everyone

  525. 22:10

    share your status sync on the things on

  526. 22:12

    meetings so all these things could be

  527. 22:14

    actually outsourced to your software

  528. 22:16

    factory and you could be just talking

  529. 22:18

    about the cool stuff okay so this is it

  530. 22:22

    thank you so much go touch some grass

  531. 22:24

    and let your agents uh built for you.

  532. 22:26

    Thank you.