All articles
Forward Deployed

Scaling Yourself: When an FDE Hands Off a Prototype to Core Engineering

FDE Coach EditorialJuly 27, 20269 min read

You just closed a $1.2M ACV deal by building a prototype in a WeWork huddle room over a weekend. It polls a legacy SOAP API, transforms the data with a 200-line Python script you haven't linted, and dumps it into a customer's Snowflake instance. The customer loves it. Your CEO loves it. Now core engineering has to own it.

This is the moment where Forward Deployed Engineers either cement themselves as force multipliers or become a permanent bottleneck. The handoff isn't a ticket transition—it's a translation layer between two entirely different operating systems.

The FDE Paradox: Speed vs. Scalability

The FDE motion creates a fundamental tension: you're optimized for velocity and customer intimacy, while core engineering is optimized for reliability, maintainability, and multi-tenancy. Your prototype is a single-customer, zero-uptime-SLA, you're-the-on-call-engineer artifact. Their production system serves hundreds of customers with 99.95% uptime.

This mismatch shows up in compensation and career pathing too. FDEs at Palantir, Scale AI, or similar firms typically sit on a different comp curve than core engineers—heavier on variable comp tied to deal velocity and customer expansion, often with titles like "Deployment Strategist" or "Forward Deployed Engineer" that map to L4-L6 IC levels. The median FDE comp at a mid-to-late-stage startup runs $180K-$250K base with $50K-$100K variable, but the real leverage is in equity: you're building the customer-specific patterns that productize into core features. When you hand off well, you capture that value. When you don't, you become the human API for a customer that should have graduated six months ago.

For a deeper look at the day-to-day reality of this role, check out What a Forward Deployed Engineer Actually Does in a Week: Code, Customers, Chaos.

The Artifact Gap: What You Shipped vs. What They Need

In 80% of failed handoffs, the problem isn't code quality—it's artifact mismatch. You built a prototype. Core engineering needs a production system. The gap looks like this:

ArtifactPrototype (You)Production (Them)
ConfigurationHardcoded API keys in a .env fileSecrets manager with rotation policy
Error handlingtry/except: passStructured error taxonomy, retry logic, dead-letter queues
Monitoringprint(f"Error: {e}")OpenTelemetry traces, Datadog dashboards, pager alerts
IdentityCustomer's service accountOAuth 2.0 with tenant-aware scoping
Data modelCustomer's exact schemaAbstracted, multi-tenant model with migration strategy
DocumentationSlack thread and a Loom videoRunbooks, architecture decision records, API specs

The handoff is your job to bridge this gap. Core engineering will not—and should not—accept a Slack thread as documentation.

The 72-Hour Handoff Sprint

After the prototype is validated and the deal is signed, run a structured 72-hour handoff sprint before you move to the next customer. This isn't building the production system—it's packaging your prototype so core engineering can build it without you.

Hour 0–8: The Architecture Decision Record (ADR)

Write a single Markdown document that captures every decision you made and why. Core engineering will second-guess your choices—that's their job. Give them the context to do it intelligently.

# ADR: Acme Corp Data Pipeline

## Context
Customer uses a legacy on-prem SOAP API (SAP ECC 6.0) with no REST wrapper.
Rate limited to 100 req/min. Data must land in Snowflake by 6 AM ET for their
BI refresh.

## Decisions
1. **Polling over webhooks**: Customer's SAP instance cannot emit events.
   Implemented a cron-based poller with incremental timestamps.
2. **In-memory transforms over Spark**: Data volume is <50K rows/day.
   Pandas is sufficient; Spark would be over-engineering.
3. **Direct Snowflake write over staging**: No S3 bucket in customer's VPC.
   Used Snowflake Python connector with append-only mode.

## Risks
- SOAP endpoint has no staging environment. Testing is production-only.
- No retry mechanism on Snowflake write failures. Data loss possible.
- API key for SOAP is a service account with broader permissions than needed.

Hour 8–24: The Runnable Spec

Extract the core logic from your prototype into a minimal, runnable specification. This is not production code—it's executable documentation. It should:

  • Run in a single Docker container with no external dependencies beyond what's in a docker-compose.yml
  • Include a README.md with exactly three sections: "What this does," "How to run it," "What's missing for production"
  • Have a test_fixtures/ directory with anonymized sample data
# Dockerfile: Runnable spec for Acme pipeline
FROM python:3.11-slim
COPY pipeline.py /app/
COPY test_fixtures/ /app/test_fixtures/
COPY requirements.txt /app/
RUN pip install -r /app/requirements.txt
CMD ["python", "/app/pipeline.py"]

The runnable spec is your insurance policy. When core engineering asks "how does this handle a null last_modified field?" six weeks later, they can run the spec and see exactly what happens—even if the production system has diverged.

Hour 24–72: The Live Handoff Meeting + Shadow

Schedule a two-hour meeting with the core engineering team lead and the engineer who will own the feature. Structure it as:

  1. 15 min: Business context. Who the customer is, what they paid, what they'll pay if this works.
  2. 30 min: Live demo of the prototype in the customer's environment. Not a slide deck. Show the actual thing.
  3. 30 min: Walk through the ADR. Let them challenge every decision. Write down their challenges—these become the production requirements.
  4. 15 min: Run the runnable spec together. Make sure it works on their machine.
  5. 30 min: Define the acceptance criteria for the production handoff. Be specific: "When this pipeline runs in staging with Acme's data and produces identical output to the prototype for three consecutive days, the handoff is complete."

After the meeting, stay in the core engineering team's Slack channel for two weeks. Don't build. Answer questions. The moment you write code for the production system, you've failed the handoff—core engineering won't internalize the system if you're the escape hatch.

The Code Liability: Why "It Works" Is a Trap

A prototype that "works" for one customer is a liability in production. The most common failure modes:

The Silent Data Corruption: Your prototype doesn't validate Snowflake write acknowledgments. It assumes success. In production, a transient network error drops 3% of rows silently. The customer discovers this during quarter-end close.

The Credential Time Bomb: You used the customer's admin service account because it was the only one available during the PoC. In production, that account gets rotated, and the pipeline fails with a cryptic 403. No one knows where the credentials live because you hardcoded them.

The Scale Cliff: Your in-memory Pandas transform works beautifully at 50K rows. The customer, emboldened by success, adds three more data sources. Suddenly it's 2M rows and your container OOM-kills at 3 AM.

Your job in the handoff is to make these failure modes explicit. Write them down. Put them in the ADR under "Risks." If you don't, you'll be debugging them at 3 AM six months from now because "the FDE built this originally."

This pattern—building customer-specific solutions that later need to scale—is exactly what we covered in Case Study: Deploying an LLM Feature at an Enterprise Customer as an FDE. The handoff is where the real engineering happens.

The Social Engineering of Handoffs

The hardest part of a handoff isn't technical. It's organizational. Core engineering teams are measured on shipping their roadmap, not cleaning up after FDEs. Your prototype is unplanned work for them. It's a distraction from the feature they've been designing for three months.

You need to make the handoff feel like a win for them, not a burden. Tactics that work:

Quantify the revenue impact: "This prototype closed $1.2M. If we productize it, three more customers in the pipeline have the same SAP integration need. That's $3.6M in ACV on a feature you can build in two sprints."

Celebrate them publicly: When the core engineer ships the production version, send a Slack message in the company-wide channel: "Huge shoutout to @core-engineer for productionizing the Acme pipeline. They caught three edge cases my prototype missed and built it properly multi-tenant. This is the standard."

Build the feedback loop: The handoff isn't the end. It's the beginning of a product feedback loop. The patterns you discover in the field should flow back to core engineering as feature requests, not one-off hacks. For more on this dynamic, read How FDEs Work with Product and Engineering After the Sale: Feedback Loops That Ship.

Never say "here's my code": Say "here's a validated customer need with a reference implementation." The distinction matters. You're not handing off technical debt. You're handing off a de-risked product opportunity.

FAQ: Handing Off Prototypes

What are the key steps in ensuring the proper scaling up of a prototype?

  1. Write an Architecture Decision Record (ADR) documenting every choice and its rationale. 2. Package a runnable spec in a container so core engineering can reproduce your results. 3. Explicitly list what's missing for production: monitoring, error handling, credential management, multi-tenancy. 4. Define clear acceptance criteria for the production handoff. 5. Stay available for questions but don't write production code.

How to go from prototype to production?

The FDE's role is to bridge the gap, not close it entirely. You provide the validated pattern, the customer context, and the runnable spec. Core engineering applies their standards: proper CI/CD, monitoring, secrets management, and multi-tenant architecture. The handoff is successful when the production system produces identical output to your prototype for three consecutive days in a staging environment.

What is the major problem with prototyping?

Prototypes optimize for speed and demonstration, not reliability or maintainability. The major problem is that a successful prototype creates organizational pressure to ship it as-is, skipping the hardening work that prevents production incidents. FDEs must explicitly label what's missing and advocate for the engineering investment required.

What is a scaled prototype?

A scaled prototype is the production-ready version of a prototype, rebuilt to core engineering standards. It's multi-tenant, monitored, has proper error handling and retry logic, uses a secrets manager, and can handle 10x the data volume of the original. The FDE's prototype proves the pattern; the scaled prototype delivers it reliably.


If you're building automation workflows that follow this same pattern—prototype fast, hand off clean—check out how we built a Daily Standup Bot That Collects Updates and Posts a Summary to Slack with n8n and Gemini. The same handoff principles apply whether you're shipping a data pipeline or an internal tool.

#scaling#handoff#core-engineering#prototype-production

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