All articles
Forward Deployed

A Forward Deployed Engineer's Week: Real Workflows, Not Hype

FDE Coach EditorialJuly 13, 20269 min read

You won't find a standardized definition for a Forward Deployed Engineer (FDE) in a computer science textbook. That's because the role is defined by friction, not abstraction. An FDE sits at the collision point between a polished product and a customer’s messy, undocumented reality. While a product engineer optimizes for generality, an FDE optimizes for specificity—solving a single high-value problem for a single high-value account right now.

This isn't a theory piece. This is a week-by-week case study of the actual workflow, the ugly scripts, the manual data munging, and the rapid context switching that defines the role.

What a Forward Deployed Engineer Actually Does

The simplest forward deployed engineer definition is this: an engineer who embeds with customers to solve technical problems that block adoption or expansion. You aren't writing the core product in Rust. You are writing a Python script in a cramped conference room to transform a proprietary CSV dump into a JSON payload the product API can accept, just so the champion at the account can demo it to their VP on Friday.

We can break the role down into three distinct modes:

  • The Firefighter (Unblocking): The customer’s data isn't mapping to our schema. The network policy blocks the webhook. The single sign-on (SSO) assertion is missing an attribute. You fix it.
  • The Surgeon (Extending): The product does 90% of what they need. You write the glue code, the custom front-end component, or the specific serverless function to cover the critical 10% gap without forking the main codebase.
  • The Scout (Listening): You carry customer pain points back to the product team. Not as a game of telephone, but as a technical spec with a reproducible failure case.

Monday: The Onsite Scramble

You land Sunday night. Monday morning, you’re in the lobby of a logistics company in Chicago. The sales engineer has promised the CTO that our AI platform can ingest their "standard" inventory data. You discover the data is a 15-year-old IBM AS/400 (iSeries) green-screen export with a custom delimiter—¬—and no headers.

You don't complain. You open a terminal. The goal isn't to build a robust ingestion pipeline; it’s to get 100 clean rows into the UI by the 2 PM demo.

# Not elegant. Not scalable. Done.
import csv
import json

headers = ["SKU", "QTY", "LOC", "STATUS"]
output = []

with open("inv_export.txt", "r", encoding="latin-1") as f:
    for line in f:
        parts = line.strip().split("¬")
        if len(parts) == 4:
            output.append(dict(zip(headers, parts)))

# Manual fix for a known bad row
output[3]["QTY"] = "50" 

with open("clean.json", "w") as out:
    json.dump(output[:100], out)

You spend the afternoon mapping their "LOC" identifiers to our internal location IDs using a VLOOKUP in a shared Google Sheet because their IT team hasn’t exposed the internal API yet. It works. The CTO sees his data on a heatmap. The account is saved.

Tuesday: The "Dirty" Prototype

With the immediate fire out, you turn to the "ask." They need an automated PDF report generated from our dashboard, but with their specific branding, compliance footers, and a summary table that combines our data with their internal risk scores.

You have 48 hours to show a working prototype. You don't set up a build pipeline. You spin up a lightweight Node.js server using Puppeteer to screenshot our dashboard, and a Handlebars template to inject their custom table. The architecture looks like this:

The code is brittle. The CSS is inline. The risk scores are hardcoded for the demo. But when you click "Generate Report" on Tuesday afternoon, the PDF slides out with their logo perfectly aligned. This is the core of the FDE role: validating value with velocity. If they sign the expansion deal, product engineering can turn this Node.js monster into a proper microservice. If they don't, you only spent 12 hours on it.

Wednesday: The Hard Pivot

You demo the PDF. The VP of Operations loves it but drops a bombshell: "Can this work with the 4,000 PDFs we already have stored in our SharePoint? We need historical analysis."

This is the pivot. You now need to build an extractor that can pull tables from unstructured, scanned PDFs. You don't train a model. You reach for a vision LLM. You build a quick extraction pipeline similar to what we covered in our guide on building an invoice and receipt extractor that turns PDFs into structured JSON with free vision LLMs.

You write a script that loops through a local folder of sample PDFs, converts each page to a base64 image, and fires it off to a free-tier vision model with a strict prompt:

"Extract the inventory table from this scanned document. Return ONLY valid JSON with the schema: [{\"item\": \"string\", \"qty\": \"integer\", \"date\": \"string\"}]. Do not wrap in markdown."

You run it against 50 historical PDFs. 42 parse perfectly. The 8 failures are due to handwritten notes in the margins. You manually correct those 8 in a text editor. You show the VP a unified dashboard of historical data plus new data. The technical gap is closed. The value proposition just expanded from "new reports" to "entire historical archive."

Thursday: The Integration Gauntlet

You now have three moving parts: the real-time scraper, the report generator, and the historical batch processor. They are running on your laptop. This doesn't scale. You need to land them somewhere the customer can touch them without you.

You spend Thursday morning dockerizing the components. You push them to the customer's on-premise OpenShift instance (they don't allow public cloud). The SSO integration breaks immediately. Their Active Directory sends SAML assertions with a nameID format of unspecified, but our platform expects emailAddress.

You don't control the product's SAML handler. You write a reverse proxy sidecar in Go. It intercepts the assertion, transforms the nameID format, re-signs it, and forwards it. It’s a 50-line net/http handler. It’s the definition of technical debt, but it unblocks the entire deployment. By 6 PM, the VP logs in with his corporate credentials and runs a report.

Friday: The Handoff

You don't just throw code over the wall. Friday is about artifact creation.

  1. The Runbook: A Notion doc with explicit steps on how to restart the Docker containers, where the environment variables live, and what to do if the scraper fails ("Check if the AS/400 job ran. If not, manually copy the .txt file to the /data volume.").
  2. The Product Spec: A technical write-up for the internal product team. You detail the nameID format mismatch, suggest a configurable SAML policy in the core platform, and attach logs. You link the messy Python scripts and explain the value they unlocked.
  3. The Knowledge Transfer: A 1-hour video call with the customer’s junior IT admin, walking them through the runbook.

You fly home. The code you wrote might be rewritten in two weeks by the product team, or it might run untouched in that OpenShift cluster for three years. Both outcomes are acceptable in the FDE world.

The Tool Chain of an FDE

An FDE lives in the terminal, but you aren't building microservices. You are building survival tools. The stack is usually interpreted languages (Python, TypeScript/Node.js) for speed of iteration, heavy usage of jq for JSON munging, ffmpeg for weird media transcoding requests, and Docker for pseudo-deployment. You become intimately familiar with the quirks of enterprise identity providers (Okta, Azure AD) and the limitations of on-premise hardware.

Increasingly, the FDE stack includes AI-assisted coding for boilerplate generation. When a customer asks for a specific SQL query against their messy schema, you can leverage an agent to draft the initial joins, as described in our guide on building a SQL analyst agent that answers questions over your free Postgres database. The skill isn't typing the code; it's knowing exactly what prompt to give the agent and how to verify the output doesn't create a Cartesian product on their 10-million-row table.

FAQ: The FDE Role Unpacked

What is a forward deployed engineer in simple terms?

In simple terms, a Forward Deployed Engineer is an engineer who sits at the customer’s site (physically or virtually) to solve their specific technical problems using the company’s product, often by writing custom code or scripts. They are the bridge between a generic software platform and a client’s messy, specific reality.

How does a Forward Deployed Engineer differ from a Solutions Architect?

A Solutions Architect (SA) typically designs the system and draws the diagrams, but often doesn't write the low-level code to fix a broken API call. An FDE opens the IDE and writes the glue code. SAs ensure the path exists; FDEs pave the road and tow the truck across it.

What is the typical Forward Deployed Engineer salary?

Compensation is generally high, reflecting the travel demands and high-stakes communication skills. In the US, top-tier enterprise SaaS/AI companies (like Palantir, Scale AI, or similar) typically pay FDEs between $150,000 and $250,000 total compensation for mid-to-senior levels, with staff-level roles pushing higher. It often mirrors top-tier Software Engineering pay but can include higher variable compensation tied to account success.

Is Forward Deployed Engineer a good role?

It’s an exceptional role for engineers who hate monotony and love impact. If you need deep, uninterrupted focus time to build elegant abstractions, it's a terrible fit. If you thrive on chaos, want to see how businesses actually operate, and enjoy the adrenaline of fixing a crashing demo with 5 minutes to spare, it’s the best job in tech. It’s also a fast track to CTO roles or founding a company, because you learn exactly where software fails to meet reality.

What skills are required for a Forward Deployed Engineer?

You need T-shaped skills. Broad understanding of web stacks, databases, and cloud infrastructure, but deep problem-solving ability. Communication is not a "soft skill" here; it's a hard requirement. You must be able to explain a latency bug to a non-technical VP without lying, and explain the VP's business constraints to a product manager without screaming. If you want to sharpen the technical edge required for this role, our deep-dive on how FDEs turn a messy customer problem into a shipped prototype in a week provides a tactical framework.

#daily-work#workflow#time-management#reality-check

Want to build like a Forward Deployed Engineer?

FDE Coach is a cohort-based program in frontend, backend, AWS, and AI. Build real products and get referred to 200+ hiring partners.

Explore the program

More forward deployed

August 15 · 0d left
Enroll Now