Since the advent of modern computing, we’ve witnessed several evolutionary phases, driven by advances in processing power, interfaces, techniques, and processes. We are now entering the latest phase: agentic engineering.
In the early days of computing, during the 1950s and 60s, hardware was prohibitively expensive. Computers filled entire rooms, and programming was done using punch cards. As a result, software was simple, and data was sparse. Testing was incredibly costly, and much of the logic and evaluation was performed manually.
As computing became more affordable in the 1970s and 80s, software development grew more empirical and iterative. You could write and test code rapidly. This era gave rise to a variety of tools to aid in development and testing. With these tools came a proliferation of languages and abstractions. Mastery of these became essential.
Computer science gave way to software engineering. Engineers no longer needed deep hardware knowledge or mathematical theory. Instead, they relied on ingenuity, systems thinking, and the ability to interface with external hardware.
Advancements in hardware during this period enabled graphical interfaces and new input methods like mice, touchscreens, joysticks, and speech recognition. These innovations sparked entire fields such as Human-Computer Interaction (HCI) and graphical design.
At the same time, the rise of networking and the internet created new roles like network engineering and security engineering. Cryptography, once confined to theoretical mathematics, became a practical necessity. Entire industries emerged around these specializations.
In the 1990s and 2000s, the explosion of data brought about a need for analytics, giving rise to data science. We also had to figure out how to store and move large volumes of data, leading to data engineering. Meanwhile, the dominance of web and mobile platforms elevated UI/UX design to a formal discipline.
With the rapid maturation of large language models (LLMs), a new paradigm has emerged: agentic engineering.
Agents form an interface between LLMs and external systems, where the models are empowered to ingest data, make decisions, and provide outputs sometimes in coordination with other models, or iteratively within themselves.
Put another way: agents free language models from the traditional “one prompt, one completion” pattern. They can drive conversations, make decisions, take actions, plan, and more.
At their core, agents are still LLMs, which means they inherit all the eccentricities of working with them.
Non-Determinism
LLMs are inherently chaotic systems. A small input variation can lead to large, unpredictable output changes. In other words, they are non-deterministic. Even two semantically equivalent (or sometimes identical) inputs may produce different results. This makes it difficult, often impossible, to prove reliability by testing input/output pairs.
Hallucinations
An often discussed quirk of LLMs is that they “hallucinate”, or give an answer that does not come from a ground truth on which they were trained. Another way to think about this is that an LLM does not deal in truth, it deals in probability distributions of streams of tokens. A token being likely does not necessarily mean that it is true. The implication of this is you cannot predict how an LLM will respond to a particular input.
If I wrote a calculator program, I would make sure to test each feature: addition, subtraction, multiplication, division. I would make sure each button produces the correct number. I would make sure the display clears when you need it to clear. Then I would be very confident it was an accurate calculator. In an LLM, just because it says 1 + 1 = 2, does not mean it will say 1 + 2 = 3. This makes testing extra fun.
High Latency
Latency is rarely a major issue in most software systems outside of batch processing. With LLMs, however, every feature can introduce substantial latency. In some “deep-thinking” models, responses can take tens of seconds — which has significant implications for product design.
Infinite State Space
While some agents operate in structured environments, many of the most powerful ones deal in natural language. When human language is your input space, it becomes effectively infinite. Combined with non-determinism and hallucinations, this makes testing and validation incredibly challenging. You can’t enumerate all possible inputs or rely on induction to ensure robust performance. You have to employ robust sampling, monte-carlo techniques, chaos engineering, and more.
Agentic engineering introduces new challenges and calls for a different approach and mindset than traditional software engineering.
It blends software development, evaluations, prompt engineering, conversational design, and product management. An agentic engineer is as distinct from a backend engineer as a network or frontend engineer is. It’s still engineering, building novel systems to solve problems, but the skill mix is different.
Agent architects are like software architects in that they are responsible for high level design and need to consider interactions across the system, but the system they think about is an agent system with LLMs interacting with each other, with conversation history, and with external context and tools. They need to think about how to stitch these pieces together, and what are the correct pieces and techniques to use for a given problem. Anthropic has a great writeup of some of the techniques and thought processes here.
Some Traits of Agent Engineers:
Agent Architect
Owns:
Responsibilities:
Senior Agent Engineer
Owns:
Responsibilities:
Agent Deployment Engineer
Owns:
Responsibilities:
Agent Deployment Architect
Owns:
Responsibilities:
Agent Product Manager
Owns:
Responsibilities:
I’m incredibly excited about the agentic era of software development. This is how AI becomes practical and integrated into our daily lives in meaningful ways.
While LLMs may simplify some tasks, they also demand new skills and roles. Agentic Engineers are similar, but not the same as Software Engineers. Just as data scientists and data engineers are distinct but related roles. Expect to see many more job postings for Agentic Engineers and Agentic PMs in the near future.