Skip to deployments
Rami Alcheikh Book a call
Forward Deployed Engineer · Dubai

The demo works. Someone still has to make it survive Monday.

I go into a business, find the workflow that is actually costing them, and build an AI system that runs against their real data — wired into the software they already use, with a human on the approval step.

Eight of those systems are running right now. The ones inside companies I do not own are the entire point of the job.

Agentic systems · Production deployment · Embedded delivery

Systems I have deployed into

  • Cloudflare Workers
  • Vertex AI Agent Engine
  • Gemini Enterprise
  • ServiceM8
  • GoHighLevel
  • 3CX
  • Cloudflare D1
  • BigQuery
  • Google Retail Search
  • Medusa

The gap

Getting a demo is easy now. Everything after it is not.

A model can produce something that works on a laptop in an afternoon. That part has genuinely changed, and it is why so many companies now have a prototype nobody uses.

Then the real questions arrive. Which system of record does it write to, and what happens when that write fails halfway? Who is allowed to see which rows? What stops it running twice on the same job? Who approves the output before a customer sees it? What does it do at 7am on a Sunday when an API it depends on returns a 500? And who on the team can fix it once the person who built it has gone?

None of that is model work. It is integration, permissions, data quality, idempotency, and accountability — and it is where nearly every stalled pilot is stuck. It is also the only part that decides whether the thing is software or a demo.

What I actually do

The loop, every time.

It is not a methodology, it is just the order things have to happen in for the result to still be running six months later.

  1. 01

    Scope against real data

    Not a sample export. The actual table, with the actual nulls, and the workflow where a failure is visible to someone.

  2. 02

    Build the thin slice

    One path, end to end, in production conditions. Run it in shadow and compare it against what the humans already did.

  3. 03

    Wire it to the system of record

    Write into the real CRM, job board, or ledger. A side database proves nothing and nobody trusts it.

  4. 04

    Put a human in the approval path

    Draft, do not send. The gate stays until the error rate earns its removal, and often it never does.

  5. 05

    Instrument it

    The system reports its own health and pages a person when it stops. An engine that cannot report failure will fail silently.

  6. 06

    Hand it over

    A runbook, a kill switch, and someone on the team who can operate it. The job is finished when it runs without me.

The job

What I mean by forward deployed.

Forward deployed means embedded in someone else's business. Their stack, their constraints, their Monday. The ownership boundary is the work, not a gap in the portfolio.

I run two companies of my own — Emerge Digital and Aquora — and I prove new patterns there on my own bill. That is useful. It is not the role. Three of the eight systems below run inside businesses I do not own. They are described by what they do rather than named, because those businesses are not mine.

Consulting ends at a recommendation. This ends when the system is writing into the production database, a human has approved its output, and someone on the team can operate it without me. The longer distinction and the test I would want run on me are written out as notes.

Deployments

Systems running in production.

Real data, real customers, real money moving. Where the business is not mine, it is described by what it does rather than named — I will name any of them on a call once the owner has agreed.

01

Quote engine inside a live trades business

Reads the contractor’s own job history and pricebook, then drafts a priced quote into their job-management system within minutes of a lead landing. A human reviews and sends every one.

Runs on a five-minute cron against the live system of record, so the hard problem is not generation — it is never double-quoting a job. The completion marker can be stripped by an ordinary edit in the vendor UI, so idempotency is held in a separate state database rather than inferred from the record itself. Re-running the full pass skips every job it has already seen. A guardrail clamps labour estimates against the pricebook, and the whole thing stops dead on a single file touch.

100% idempotent on re-run, proven in production
Deployed into
A Sydney electrical contractor
Live since
July 2026
  • Python
  • BM25 retrieval
  • Claude via OpenRouter
  • SQLite
  • ServiceM8 API
  • cron on GCE
02

Scoped, cited assistants over a private knowledge base

Turns a private document store into an assistant that answers with citations — and shows each person only the material they are cleared to see.

Scope is enforced server-side at the retrieval layer, not asked for in a prompt, and the leak probes re-run after every index pass: queries aimed at out-of-scope material return zero sources rather than a refusal message, which is the difference between a filter and a guardrail. The first outside tenant went live in August and tripled its own user base in forty-eight hours entirely by pull — one person used it to prepare for a meeting, then recruited colleagues. The rest of the work is retrieval hygiene: stale copies of corrected documents were outranking the fixes, so the exporter now skips them and logs every skip, and the sync pipeline watches itself with a heartbeat and an alarm that stays silent until something is actually wrong.

1,031 documents indexed, 0 failed
Deployed into
Emerge Digital, plus outside client tenants
Live since
July–August 2026
  • Google Cloud Run
  • Discovery Engine
  • Cloudflare Access
  • Workers
  • BigQuery
03

Agent-rendered UI on a production property portal

Instead of returning a wall of text, the assistant returns working interface — project cards, comparison tables, a mortgage calculator the buyer can drag.

The model never emits UI. A deterministic TypeScript composer builds the component tree, so dragging the mortgage term from 25 years to 10 recomputes the repayment with zero calls back to the model — and that grew into the rule that governs the whole surface: a feature ships on by default only if it cannot spend money. Four of the five agent surfaces are pure TypeScript. The build finished in August with typed next-step chips, where following a link costs nothing and only a genuine question spends a model turn, and a printable research report whose access control is the point — a non-owner gets a 404 that is byte-identical for real and invented ids, so the endpoint cannot be used to probe what exists. 468 end-to-end tests hold all of it in place.

0 model calls per slider interaction
Deployed into
A Dubai off-plan property portal
Live since
July–August 2026
  • Next.js
  • OpenNext
  • Cloudflare Workers
  • D1
  • Workers AI
  • A2UI
04

Phone call to CRM job

Overflow calls are answered, transcribed, qualified, and written onto the right job — plus a one-time link that pulls the customer’s photos and plans straight onto that job.

Most of the work here was diagnosis, not generation. The intake was silently locked to a single phone extension, so calls answered by anyone else never became jobs at all — that was found by reading the data, not the code. The upload path sniffs file types from magic bytes instead of trusting the browser, because customers send HEIC from an iPhone and CAD plans from a builder. Outbound SMS is a polled outbox relayed through the PBX, because the carrier only accepts sends from that host. A prompt change was validated in memory against fifteen real recorded calls before it went anywhere near production.

15 real calls replayed before deploy
Deployed into
A Sydney electrical contractor
Live since
June–July 2026
  • 3CX
  • faster-whisper
  • Cloudflare Workers + KV
  • ServiceM8 API
  • Python
05

Three agents on managed agent infrastructure

A grounded answer agent, a cost-audit agent reading live billing data, and a policy check — deployed to Google’s managed Agent Engine and registered into the enterprise search app.

The guardrails are code callbacks, not instructions. A save is refused until a search has actually run; anything that looks like outbound is refused until the policy preflight has run. That distinction matters because a prompt-level rule degrades quietly under pressure and a callback does not — it either ran or it did not, and you can see which in the trace.

3 agents live on Vertex AI Agent Engine
Deployed into
Emerge Digital
Live since
July 2026
  • Google ADK
  • Vertex AI Agent Engine
  • Gemini 2.5
  • Python
  • BigQuery
06

A machine-payable API surface

An API an AI agent can pay for by itself — it receives a price, settles on-chain, and the call is metered and billed. Listed in a public agent directory.

The interesting part is reconciliation. An agent paid 0.25 RLUSD on-chain and the metering system billed $0.25 — matched to the cent, which is the whole question anyone sensible asks about machine payments. Built and proved as rails, not as a business: the buying wallet was mine, so this demonstrates that settlement and metering agree, and nothing about demand.

56 resources live, 0 failed directory verification
Deployed into
Emerge Digital
Live since
July 2026
  • Cloudflare Workers
  • Hono
  • x402
  • XRPL
  • Metronome
07

Closing a cost runaway on a managed search API

The store’s browse and search ran on a metered commerce-search API, and crawler traffic was quietly burning the quota — inflating the bill and starving real shoppers of search.

Every browse call was billed, bots do most of the browsing, and the rate-limit errors they triggered degraded search for humans. Worse, the crawler path returned zero products and empty facets, so search engines saw a hollow store. The fix was an in-process stale-while-revalidate catalogue index built straight from Postgres — ten-minute TTL, single-flight refresh, the vendor’s multi-select facet semantics reproduced exactly — so browse traffic never touches the paid API at all. Billed calls fell from 233 an hour to 48, quota errors went from 32 an hour to zero, and crawlers now receive fully populated pages. This one is my own store and my own bill, which is precisely why the guardrail got built properly.

0 quota errors per hour, down from 32
Deployed into
Aquora, my own ecommerce build
Live since
August 2026
  • Next.js
  • Medusa
  • Google Retail Search
  • Postgres
  • Cloudflare
08

Ad attribution that cannot double-count

Booking events flow from the scheduling webhook through a Cloudflare Worker into LinkedIn’s Conversions API — no browser pixel in the loop, so an ad-blocker cannot eat the signal and nothing is counted twice.

The design decision was subtraction. The platform sums every conversion rule attached to an ad set with no cross-source dedup, so running the browser tag beside the server path would double-count each booking and halve the apparent cost per booking — the exact number the pilot’s kill gate reads. The browser call was removed and the account now holds exactly one enabled rule, which makes double-counting impossible rather than merely unlikely. Match keys are a hashed email plus a click id captured at landing and carried through the cross-origin booking iframe. And because a webhook receiver that returns the same status for success and skip is unverifiable, it logs the outcome, not just the status. Proven end to end with real bookings — my own, as ever — accepted by the platform with a 201.

1 enabled conversion rule, so double-counting is structurally impossible
Deployed into
Emerge Digital
Live since
July–August 2026
  • Cloudflare Workers
  • Cal.com webhooks
  • LinkedIn Conversions API
  • SHA-256 match keys

The part I would want to be judged on

I published 47 statistics and withheld 85.

Building a machine-readable data feed for a property portal meant deriving price statistics per community. Only 47 of 132 had enough underlying sales to survive a minimum-sample test. The other 85 were withheld entirely rather than smoothed, clamped, or averaged into something that looked complete. A number an agent will cite has to be a number that is true — and the honest move is usually to publish less than you can.

Your first 30 days

What happens when I start.

Week 1

Scope against real data

  • Get read access to the actual system of record, not a sample export.
  • Find the one workflow where a failure is visible and a win is countable.
  • Write down what the system is not allowed to do.
Week 2

Build the thin slice

  • One path, end to end, against production data.
  • Run it in shadow mode and compare against what the humans did.
Week 3

Wire it into the systems of record

  • Write into the real CRM, job board, or ledger — not a side database.
  • Idempotency, retries, and a kill switch before any automation is armed.
  • Put a human on the approval step and keep them there.
Week 4

Ship it and hand it over

  • Turn it on for real work, behind the human gate.
  • Instrument it so it reports its own health and pages someone when it stops.
  • Write the runbook, and make sure it runs without me.

After thirty days there is something real running against real data, a human approving its output, and a clear read on whether it is worth going further. If it is not, you will hear that from me.

Who this is for

Two kinds of conversation.

If you are hiring

Teams hiring a forward deployed engineer

You need someone who will sit with a customer, find the workflow worth automating, build it against their real data, and own it until it works. The evidence below is all production systems — and the hardest of them run inside businesses that were not mine.

  • Ships into other people’s stacks, under their constraints
  • Comfortable with the unglamorous half: permissions, integrations, data quality
  • Writes guardrails as code, not as instructions
  • Dubai-based. Arabic and English, both native.

If your pilot has stalled

Companies whose AI demo never became software

The prototype works and has for months. What is missing is the connection to real data, an approval path a manager will sign off, and someone accountable when it breaks at 7am. That is the work.

  • Diagnosis first — usually the bottleneck is not the model
  • Runs against your systems of record, not a parallel copy
  • A human approves output until the numbers justify otherwise
  • You get the runbook, and it runs without me
Rami Alcheikh

Background

Rami Alcheikh

Twelve years building software, most of it embedded with the people who had to use it.

I started in marketing technology and CRM integration, which is an unfashionable place to learn but a very good one: everything is someone else's system, the data is always worse than the schema suggests, and nobody cares how elegant your approach is if the record does not appear in the CRM. That is more or less the same job as deploying AI into a business today.

Now I run Emerge Digital from Dubai and spend most of my time on exactly this — going into a business, finding the workflow that is quietly costing them, and building something that runs against their real data without anyone having to trust it blindly. I keep a human in the approval path far longer than most people would, because the failure I care about is not a wrong answer, it is a wrong answer nobody caught.

Credentials

  • 12+ years building and shipping software
  • BSc Computer Science (Information Systems), University of Sydney
  • IBM — RAG and Agentic AI
  • Duke University — Decentralized Finance
  • Google Cloud — Big Data and Machine Learning Fundamentals
  • Salesforce Consulting Partner
  • Google Cloud Partner

How I engage

Three shapes. Same conversation to start.

Scope decides price, so there is no rate card here. The first call is free and usually long enough to tell whether there is anything worth doing.

Diagnostic sprint

One to two weeks

I get access to the real system, find where the value and the risk actually sit, and come back with an architecture and an honest assessment of what is worth building. Sometimes the answer is that you do not need a model at all.

Architecture, risk register, and a build plan you could hand to anyone.

Embedded build

Most common

Four to twelve weeks

I build it and deploy it into your production environment, wired to your systems of record, behind a human approval gate, instrumented so it reports its own health. This is the shape most of the systems below were delivered in.

A running system, a runbook, and a person on your team who can operate it.

Full-time role

Permanent

I am open to a full-time forward deployed engineering role. Same work, more of it, closer to the customer — and the part I like most is the week spent on-site finding out what the software actually needs to do.

Available for conversations now.

Questions

The ones that actually get asked.

Whose systems are these?

Three of the eight run inside businesses I do not own — that is the point of the role, and it is why they are described by what they do rather than by brand name. The rest belong to my own two companies, Emerge Digital and Aquora, where new patterns get proven on my own bill before they go anywhere near a client. I will name any of the client systems on request once the owner has agreed.

What does a forward deployed engineer actually do that a consultant does not?

Take responsibility for the thing running on Monday. Consulting ends at a recommendation. This ends when the system is writing into your production database, a human has approved its output, and someone on your team can operate it without me.

How do you tell a good forward deployed engineer from a consultant?

Ask what happens on Monday. A consultant leaves a recommendation. A forward deployed engineer leaves a system writing into the production database, a human on the approval step, and someone on the team who can operate it without them. The longer version is the evaluation note on this site.

Can I see the code?

Most of it belongs to clients, so not publicly. On a call I can walk through architecture, the guardrail design, and the failure modes in detail — and for my own systems, the repositories directly.

Do you only work on AI systems?

No. In practice the AI is a small part of the work and the rest is integration, data quality, permissions, and reliability. Several of the systems above delivered most of their value from fixing plumbing that was quietly broken before any model was involved.

Are you available full-time or for engagements?

Both. I take embedded engagements through Emerge Digital, and I am open to a full-time forward deployed role. The work is the same either way.

Where are you based?

Dubai, working across UAE and Australia. Arabic and English, both native. Remote by default, on-site when the deployment needs it — and early on, it usually does.

The demo works. Let's make it survive Monday.

Whether you are hiring a forward deployed engineer or you have a pilot that never became software, the first conversation is the same one.