Adopting the Forward Deployed Engineer
RACE Programming has renamed one of its roles. The engineer in the Pit Wall, the client-facing half of the framework, was the ACE Software Engineer. It is now the Forward Deployed Engineer.
The role has not changed. The name has, and the reason is worth stating, because it says something about what a framework is for.
Why it was not the name to begin with
When RACE Programming was designed, “Forward Deployed Engineer” was not yet a settled term. It existed, but at the edges. Palantir had used it for years to describe engineers embedded with a customer, turning that customer’s messy real problem into working software. Outside that lineage, the phrase was unfamiliar, and its meaning was not fixed.
That made it risky to borrow. The most literal reading of “forward deployed” is physical: an engineer on site, in the building, most of the week. RACE Programming did not require that, and adopting a term whose common reading implied a colocation promise would have described the role incorrectly. So the framework named the role for what it actually did: Agentic Coding Excellence. The ACE Software Engineer.
Why it is the name now
Since then, the industry has converged. The Forward Deployed Engineer is one of the most talked-about roles in software, and the definition has settled into something precise. Anthropic, OpenAI, Microsoft, and others now build Forward Deployed Engineering organizations, and the shared definition reads almost like a description of the Pit Wall.
A Forward Deployed Engineer is embedded in the customer’s context, on site, hybrid, remote, or inside the customer’s cloud, as the engagement requires. They combine engineering depth with customer-facing judgment. They understand the business problem, build rapidly against it, own the architecture, and deliver working systems rather than reports. They stay until the thing runs. That is the Pit Wall role in RACE Programming, line for line.
Two things changed at once. The term became widely recognized, and its accepted meaning stopped requiring colocation. The reason the framework avoided the name in the first place has dissolved.
Shared language is the job
Here is the part that matters beyond this one role. A framework exists to help people understand each other and agree more easily. That is the whole function. Values, roles, and artifacts are worth defining only to the extent that they let a team, and a client, and the wider industry, mean the same thing by the same word.
When the industry has independently arrived at a precise, recognized term for a role you defined on your own, keeping a separate coinage works against that function. It makes people translate. The client’s CTO already knows what a Forward Deployed Engineer is; asking them to first learn “ACE Software Engineer” and then map it back is friction with no payoff. Adopting the shared term is not chasing fashion. It is the framework doing exactly what a framework is for.
Nothing is lost in the trade. Agentic Coding Excellence has not disappeared; it remains the value that gives RACE Programming its name. Only the person’s title moves, from an internal coinage to a word the whole field already understands.
The role is the same. The Pit Wall still turns intent into a specification and a working prototype, still hands a stable spec to the Pit Crew, still owns the pipeline end to end. It simply now goes by the name the rest of the industry uses for the same work, which is the easiest name for everyone to agree on.
Written by Pavel Khodalev, author of RACE Programming and CTO of First Line Software. Follow new essays via RSS.