Software engineers' new job isn't writing code — it's designing the boundaries AI agents can't break

Software engineers' new role: Designing AI boundaries

VentureBeat | The Independent Voice on AI

Ananth Packkildurai | 11:52 am, PT, August 31, 2026

Made by VentureBeat with Gemini

If you examine the commit histories of modern data platforms, a significant shift has occurred over the last two years. The traditional friction of writing syntax has virtually disappeared. With tools like Cursor, Claude Code, and agentic workflows now integrated into our Docker containers and IDEs, creating the initial implementation of a distributed streaming pipeline or a complex API integration is no longer the primary challenge.

Agents can now navigate repositories, write test coverage, analyze stack traces, and even propose code refactors. Simply describe a Kafka-to-Iceberg sink mapping in plain English, and an agent can generate a credible starting point before the engineer has even opened the relevant files.

This shift raises an important question: if agents are becoming the primary authors of local system logic, what role is left for software engineers? Will we move towards a future where engineers primarily review pull requests generated by AI? Or has the focus shifted to more abstract tasks?

Understanding this requires borrowing concepts from thermodynamics, which provides a framework for directed work, feedback, loss, and maintaining coherence within complex systems.

The Agent as a Heat Engine

AI, when stripped of its anthropomorphization, is essentially a computational engine that transforms direction into action. An LLM, for instance, has immense potential but requires intent to perform useful tasks. A prompt, a business requirement, or a system instruction provides the necessary direction, enabling the agent to generate code, tool calls, queries, tests, and modifications to live systems.

Every engine experiences losses, and AI agents are no exception. This loss can manifest as stale assumptions, branching contexts, and unresolved dependencies within the agent's loop, causing it to drift from the correct outcome over time. Human intervention is beneficial as it introduces new information, helping to steer the agent back on track.

Infinite Monkey and Accelerating Search Space

The infinite monkey theorem offers a relevant perspective: repeated attempts, finite constraints, and feedback. The theorem posits that a monkey hitting keys at random for an infinite amount of time will eventually type the complete works of Shakespeare. Modern AI agents are much smarter monkeys; they have access to compilers, tools, repositories, test suites, and feedback loops. Their attempts are not random but guided by feedback.

In a bounded task, this loop proves highly effective. Provide an agent with a known input schema, a desired output schema, a small codebase, and tests that capture relevant failures, and it can inspect the code, make changes, run tests, learn from results, and try again. This definition of "don" is crucial for successful AI integration in software development.

Leave a Reply