Asher Cohen
Back to posts

The Rise of the AI Backend-for-Frontend Engineer

A new engineering role is emerging at the intersection of frontend, backend, and AI—one focused not on building AI itself, but on making it genuinely useful inside real software.

Over the past few months, I've found myself increasingly drawn toward a role that didn't really exist a few years ago.

Not because it's new technology—I already spend most of my time building distributed systems—but because AI has introduced an entirely new application layer. One that sits somewhere between frontend engineering, backend engineering, platform engineering, and product development.

The more I looked at it, the more I realized this isn't "just another backend service."

It's a different kind of engineering.

Not another backend

In a traditional microservice architecture, responsibilities are usually clear.

Backend teams own the domain. They build services in Java (or another backend language), model the business, persist data, expose APIs, and ensure consistency across the system.

Frontend teams consume those APIs and build experiences for users.

But AI changes this architecture.

An LLM isn't simply another backend dependency. It becomes a collaborator in the request lifecycle, introducing streaming responses, prompt construction, tool execution, structured outputs, context assembly, and dynamic workflows.

Suddenly there's a new layer emerging:

React / Mobile
        │
        ▼
AI Backend for Frontend (TypeScript)
        │
        ├── LLM Providers
        ├── MCP Servers
        ├── Java Microservices
        ├── Search
        └── External APIs

This layer doesn't own business data.

It owns interaction.

What the role actually does

Imagine asking an AI assistant inside a product:

«Summarize my recent invoices and tell me which customers haven't paid.»

The Java services already know everything about invoices and customers. My service wouldn't replace them.

Instead it would:

  • gather context from multiple backend services
  • decide which tools the LLM should use
  • stream partial responses back to the UI
  • coordinate follow-up tool calls
  • validate structured outputs
  • retry failed requests
  • switch providers when necessary
  • monitor latency and token usage
  • expose a clean API optimized for the frontend

It's less about CRUD.

It's more about orchestration.

The responsibility shifts from storing information to coordinating intelligence.

Why TypeScript makes sense

One thing I've noticed is how much of the AI ecosystem has gravitated toward TypeScript and Node.js.

Most SDKs arrive there first. Streaming over Server-Sent Events or WebSockets feels natural. Sharing types with React applications reduces friction. The asynchronous programming model maps nicely onto AI workflows, where requests often involve multiple concurrent systems.

Meanwhile, the Java services continue doing what they already excel at:

  • business logic
  • transactional consistency
  • persistence
  • domain modeling
  • scalable microservices

Rather than competing, the two layers complement each other.

A Backend for Frontend—but for AI

The Backend-for-Frontend (BFF) pattern has been around for years. Traditionally, a BFF adapts backend APIs to meet the needs of a specific client.

The AI version extends that idea.

Instead of simply aggregating REST endpoints, it orchestrates conversations. Instead of transforming JSON, it builds context. Instead of forwarding requests, it coordinates reasoning, tool use, and streaming interactions.

The service becomes the bridge between users and intelligence.

The skills are different

This role isn't machine learning engineering.

  • I'm not training models.
  • I'm not managing GPUs.
  • I'm not building inference servers.

Instead, the focus shifts toward production software engineering for AI systems:

  • designing APIs for conversational interfaces
  • prompt and context engineering
  • streaming architectures
  • tool orchestration
  • structured outputs
  • evaluation and observability
  • latency optimization
  • provider abstraction
  • cost management
  • resilient distributed systems

It's still software engineering. The problems are simply evolving.

Industry signals

One reason this role resonates with me is that the industry appears to be converging toward similar responsibilities.

Many of OpenAI's engineering roles now emphasize building product layers that connect models, tools, enterprise systems, and user experiences—rather than training models themselves. Their Enterprise AI Platform team, for example, highlights responsibilities such as MCP connectors, multi-agent workflows, evaluations, monitoring, and reusable platform components.

Even product engineering roles increasingly blur the traditional frontend/backend boundary, with engineers expected to own end-to-end AI-powered user experiences and collaborate closely across platform, infrastructure, and design.

Beyond OpenAI, the emergence of Forward Deployed Engineers reflects another aspect of the same trend: companies need engineers who can integrate AI into real products rather than simply expose models through APIs.

Looking ahead

I don't think every software engineer will become an AI engineer.

But I do think many backend-for-frontend teams will gradually become AI orchestration teams.

As organizations adopt multiple models, MCP servers, internal tools, retrieval systems, and agentic workflows, someone has to build the layer that makes all of these feel like a coherent product.

That layer won't own the database. It won't train foundation models.

Instead, it will own the experience of intelligence itself.

To me, that's one of the most interesting places software engineering is heading. It's close enough to the product to shape how users interact with AI, while remaining grounded in the engineering disciplines I already enjoy: API design, distributed systems, reliability, and developer experience.

If this role eventually gets a standard title, I wouldn't be surprised if it's something like AI Backend-for-Frontend Engineer or AI Application Platform Engineer.

Regardless of what it's called, I believe it's becoming an important specialization—one focused not on building AI itself, but on making AI genuinely useful inside real software.

#ai #engineering #architecture #typescript #distributedsystems