Brolly Academy | Forward Deployed Engineering

FDE Customer Discovery and Problem Decomposition: A Worked Guide

30 discovery questions, a worked customer conversation and a practical path from unclear request to build plan

FDE customer discovery turns an unclear customer request into an evidence-based problem statement. Problem decomposition then separates that problem into a useful first release, clear interfaces and testable requirements. This guide shows both stages through a synthetic onboarding workflow, with questions, decision tables and examples you can adapt.

Share

Nani | Brolly Academy | Research checked: 9 October 2026

Customer discovery workflow with a problem brief, scope board and acceptance checklist.
Ask focused questions, define a narrow scope and validate the first-release plan.
What does an FDE do during customer discovery?

A forward deployed engineer investigates the user, current workflow, bottleneck, data and constraints before choosing what to build. The practical output is a scoped problem brief with evidence, non-goals, success measures and acceptance criteria. Discovery asks whether the team is solving the right problem; decomposition makes that problem small enough to implement and verify.

Discovery call agenda · 30 questions · Worked conversation · Acceptance tests

What you will take away

Prepare a discovery conversation, map the current workflow, separate facts from assumptions, choose a realistic first release and produce a brief with acceptance tests, measures and owners.

Discovery is not a feature-request collection exercise

A customer may ask for a chatbot, agent or dashboard because those are the available words for a problem. Your job is not to dismiss the request, but to understand the work behind it. Who is struggling, what are they trying to decide and what prevents the task from finishing?

Collect evidence from a walkthrough, permitted sample and the people who actually perform the work. A manager’s description and an operator’s description may differ. Record the difference without assuming either person is wrong; they may be describing different parts of the process.

Discovery should change decisions. If every answer leads to the same architecture you had already chosen, you are probably presenting a solution rather than investigating the problem.

Palantir’s careers material connects customer-facing engineering with identifying a real problem, breaking it into workflows and working across stakeholders. That is useful role context, not a universal hiring checklist. This article develops an original practice method for doing that work.

If you are new to the role, start with what a forward deployed engineer does. Here the focus is the delivery skill: turning uncertain needs into engineering decisions, not salary research or a list of frameworks.

Customer discovery vs requirements gathering vs problem decomposition

These activities overlap, but they answer different questions. Keeping the distinction clear prevents a detailed specification from being mistaken for evidence that the specification is worth building.

ActivityMain questionUseful outputCommon mistake
Customer discoveryWhat is happening, to whom, and why does it matter?Observed workflow, pain points and evidence.Treating the sponsor’s solution idea as the whole problem.
Requirements gatheringWhat must the chosen solution do within its constraints?Functional requirements and operating conditions.Recording requests without resolving contradictions.
Problem decompositionWhich smaller decisions and behaviours solve the scoped task?Components, interfaces, dependencies and failure paths.Listing microservices before understanding the user task.
Solution designHow should those behaviours be implemented?Architecture and explicit trade-offs.Selecting a model or database before checking the data.
ValidationDoes the proposed change actually help?Task observations, test results and a release decision.Using a positive demo reaction as the only success measure.

A requirements document can be technically consistent yet solve the wrong problem. Conversely, a good interview can reveal a valuable need without proving that a particular implementation is feasible. Move between these activities as evidence changes. The goal is a defensible decision, not completing a fixed number of documents.

A worked scenario: delayed onboarding requests

Illustrative scenario: an operations team says, “Build an AI agent to complete customer onboarding.” Requests arrive by email, documents are stored in several folders and staff manually check whether required information is present.

Begin by separating the workflow into intake, identification, document collection, completeness checking, review and final action. Some steps may be ordinary validation. Others may require human judgement or access to sensitive information. The first release should not assume that all steps can be automated.

A useful initial problem statement is: reviewers cannot quickly see which required documents are missing from an onboarding request. That statement names a user and a task. It does not yet claim that an autonomous agent is the answer.

Define the practice boundary

For the rest of this guide, imagine a business onboarding team with a request inbox, document store and reviewer queue. The proposed helper checks whether a case contains the items required by an agreed checklist. It does not determine a person’s eligibility, approve an account or override the reviewer. All requests and numbers below are synthetic teaching material.

Suppose a reviewer currently opens several attachments, finds the applicable checklist and records missing items in a separate sheet. The sponsor calls the delay an AI problem. The reviewer says a major obstacle is not knowing which checklist version applies. Those are two different hypotheses: poor document interpretation versus unclear process rules. Discovery must distinguish them before committing to an agent.

The first useful outcome could be a review screen that brings the correct checklist and permitted evidence together. A form improvement or explicit rules may solve much of the need. Model-assisted extraction becomes an option only for the remaining unstructured material.

Prepare and run a 45-minute discovery call

Suggested practice agenda, not an industry-mandated duration: use a 45-minute call to investigate one workflow. Complex systems usually need several conversations, observations and technical checks. Do not tell a customer that one meeting completes discovery.

Before the call

  • Write the decision the conversation should inform: for example, whether a read-only completeness helper is worth prototyping.
  • Invite someone who performs the work, not only the buyer. Ask who else owns the rules and data.
  • Request one ordinary case and one exception that participants are permitted to demonstrate. A redacted example or synthetic reconstruction may be enough.
  • Explain what notes will be kept, who can access them and whether recording is proposed. Follow the organisation’s consent and data-handling process.
  • Prepare open questions and reserve room for unexpected findings. Check accessibility and communication needs in advance.
TimePurposeWhat to capture
0-5 minutesAgree the purpose and the participant’s role.Task ownership and research boundaries.
5-15 minutesWalk through a recent ordinary request.Trigger, inputs, systems and handoffs.
15-25 minutesExplore a delayed or incorrect request.Exception, cause hypothesis and current workaround.
25-33 minutesCheck data, permissions and dependencies.Feasibility questions and access owners.
33-40 minutesDiscuss what useful improvement would look like.Baseline, candidate measures and unacceptable failures.
40-45 minutesRead back the problem and open questions.Corrections, next action and responsible role.

The GOV.UK interview guide recommends a discussion guide, neutral questions and attention to real examples. Apply that principle by asking for the last difficult request, then following the participant’s actual steps. The agenda above is an original FDE practice structure, not a government-prescribed interview schedule.

Leave technical promises until the access and integration assumptions have been checked. A helpful close is: “I can describe a possible first release now; I still need to verify the checklist rule and document API before estimating it.” That gives the customer progress without hiding uncertainty.

Ask questions that reveal the workflow

AreaQuestionDecision it informs
UserWho performs the task and who is accountable for the result?Interface, permissions and approval ownership.
Current processCan you walk through one recent request?Actual steps and handoffs.
FailureWhere does work wait, fail or get repeated?The first problem worth solving.
EvidenceWhich source determines whether information is correct?Source of truth and validation.
ExceptionsWhat happens when a document is missing or contradictory?Fallback and human review.
ConstraintsWhich systems, approvals or data boundaries cannot change?Feasible architecture and release scope.
SuccessWhat would you observe if the first release helped?Baseline and acceptance criteria.

Ask for concrete examples rather than only opinions. “Show me a request that needed rework” often reveals more than “Would automation help?”

A good follow-up connects an answer to a decision. If a participant says requests are slow, ask where the clock starts, where it stops and which intervals involve active work. Waiting for a customer reply is different from time spent reading documents. Automating one does not necessarily reduce the other.

Use the question bank below selectively. It is a menu for investigation, not a script to read at a participant. Skip answered questions, follow important exceptions and ask permission before viewing material beyond the agreed sample.

30 FDE customer discovery questions with useful follow-ups

User, trigger and desired outcome

  1. Who starts this workflow, and what are they trying to finish? Follow up by identifying the person who receives the result.
  2. What event creates a new request? Check whether email, a form and an API create equivalent or different cases.
  3. Can you show the last completed request? Compare the actual path with the process document.
  4. Who decides that the task is complete? Ask which evidence they need before making that decision.
  5. What does a difficult day look like? Explore peak workload, missing colleagues and unusual request types.
  6. Who has difficulty using the current tools? Investigate accessibility, language, device and support needs without assuming one standard user.

Delays, exceptions and workarounds

  1. Where did the last delayed request wait? Separate queue time, dependency time and active handling time.
  2. Which work do you repeat? Ask what causes a case to return and whether the reason is recorded.
  3. What information do you copy between systems? Check for identifiers, transformations and reconciliation errors.
  4. What happens when the normal process fails? Follow the exception until somebody owns the next action.
  5. Which unofficial workaround keeps the process running? Understand why it exists before proposing its removal.
  6. Which mistake is more costly: a false alarm or a missed issue? Use a concrete case to define the cost of each error.

Data, rules and permissions

  1. Which source is authoritative when records disagree? Identify the owner and version rule, not just the system name.
  2. Which fields are mandatory for each request type? Ask who can change that policy and how changes are communicated.
  3. How do you link a document to the correct request? Check duplicate names, missing IDs and merged cases.
  4. Who may read each document or field? Test whether access varies by customer, team, role or case.
  5. May the data be processed by an external service? Identify the approval owner and restrictions before any upload.
  6. What samples can we inspect lawfully and with permission? Prefer minimized, redacted or synthetic samples appropriate to the task.

Integration and operating constraints

  1. How are data changes delivered? Explore polling, events, delays and whether order is guaranteed.
  2. What should happen during an API timeout? Agree a visible waiting or retry state instead of silently marking the case complete.
  3. Which actions require human approval? Identify the authorized approver and how the decision is recorded.
  4. Who supports the workflow after the pilot? Ask what access, documentation and training they need.
  5. What operational limits must the solution respect? Discuss volume, latency, cost, availability and change windows in the customer’s terms.
  6. What must stay unchanged in the first release? Record contractual, technical and process constraints with their owners.

Value, adoption and the next decision

  1. What baseline can we measure before changing anything? Agree the denominator, time window and relevant case categories.
  2. What would persuade you that a pilot is useful? Ask for observable behaviour or a measurable outcome.
  3. What failure should stop the pilot immediately? Separate stop conditions from ordinary defects that can wait.
  4. What would make reviewers avoid the new workflow? Look for extra clicks, lost context, weak explanations or duplicate entry.
  5. Which other improvement could solve this more simply? Compare a checklist, form change or integration with the AI proposal.
  6. Who will confirm the scope and unresolved decisions? Agree the next review and the evidence required for it.

Record the answer, its source and the engineering implication together. “API available” is not enough. “Sandbox API demonstrated; production scope not approved; integration owner to confirm read-only access” is useful because it makes the next dependency visible.

Worked discovery conversation: from build an agent to a scoped pilot

Fictional practice dialogue: the participants are role labels, not customers or testimonials. The point is to show how follow-up questions change the proposed solution.

Operations lead: We want an agent to finish onboarding automatically.

FDE: Which part is most painful today? Could a reviewer walk us through a recent delayed request?

Reviewer: I opened four attachments, found one missing item and emailed the customer. When the reply arrived, I had to check everything again.

FDE: What tells you which items are required, and what caused the repeated check?

Reviewer: The requirements depend on request type. I could not tell whether the old checklist or the new one applied.

FDE: So there are at least two issues: finding the correct rule version and checking the documents against it. Who owns that version decision?

Process owner: Our team does. The current policy is not clearly recorded in the intake system.

FDE: Before automating, can we agree a version rule and expose it with each request? A first screen could show that checklist, missing items and evidence, while the reviewer keeps final control.

Integration owner: Read-only document access is feasible in the sandbox. Production permissions still need approval.

FDE: Then the first milestone is a sandbox review-assistance prototype, not automatic approval. We will test incomplete and conflicting cases, confirm permissions and compare reviewer effort before proposing a pilot.

What changed because of discovery?

Initial claimFinding from the dialogueResulting decision
The whole process needs an autonomous agent.A reviewer needs a reliable checklist and evidence.Start with read-only review assistance.
Documents are the only problem.Checklist authority is unresolved.Agree the version rule before extraction work.
Integration is ready.Only sandbox access is confirmed.Treat production access as a separate prerequisite.
A successful demo will prove completion.Usefulness depends on reviewer effort and error handling.Define task measures and exception tests first.

The engineer neither dismisses the request nor agrees to an unsafe scope. Each follow-up produces a more specific decision. In a real engagement, validate the account with other relevant users and evidence; one confident participant can still describe only one part of the process.

Map stakeholders and decision rights

Identify the daily user, process owner, data owner, security reviewer and operating owner. One person may hold several roles, but the responsibilities should still be explicit. Also identify who can approve scope, data access and a pilot release.

For the onboarding example, a reviewer may use the interface, an operations lead may own the process and a separate team may control document access. A successful demo to the operations lead does not grant permission to ingest every document.

Record unresolved ownership as a risk. Do not assign a real person a responsibility without agreement. In a learning project, use role names such as process owner and reviewer rather than inventing customer endorsements.

RoleDecision or evidence neededWhat not to assume
Daily reviewerDemonstrates the work and checks usefulness.That the buyer experiences the same workflow.
Process ownerConfirms checklist rules and first-release scope.That policy can be inferred from old sample files.
Data ownerAuthorizes the permitted data boundary.That a shared folder grants permission to copy its contents elsewhere.
Integration ownerConfirms identifiers, API behaviour and service limits.That sandbox access implies production readiness.
Operating ownerAccepts monitoring, support and escalation responsibilities.That the build team will provide indefinite support.
Release decision-makerReviews evidence and accepts or rejects the pilot.That a demo attendee can approve every dependency.

If stakeholders disagree, write the disagreement as a decision with alternatives and consequences. For example, the sponsor may want automatic approvals while the process owner requires reviewer sign-off. Preserve both views, identify who has authority and document the approved boundary. Do not let the disagreement disappear into a vague requirement.

Map the current workflow before drawing the architecture

Use a simple sequence first: request received, case identified, checklist selected, documents gathered, completeness checked, reviewer decision recorded. For each step, record the responsible role, system, input, output and exception. Add waiting states as well as active work.

Current stepEvidence to observePotential issueFirst-release response
Request intakeHow a request gets its case ID and type.Missing or ambiguous type.Validate metadata and show a correction task.
Checklist selectionWhere the applicable version is chosen.Outdated or unowned rules.Display the agreed version with its effective date.
Document collectionWhere links and permissions come from.Wrong case association or restricted files.Retrieve only authorized case documents.
Completeness checkHow a reviewer records missing items.Missing and unknown treated as identical.Use separate statuses with source references.
Review handoffWhat the next reviewer sees.Corrections disappear into email.Keep a review history and unresolved-item list.

A diagram showing only databases and services misses the person who corrects an ambiguous request. An end-to-end map includes that person and their information needs. GOV.UK’s discovery research guidance is a useful reference for considering the existing journey and the people using or supporting it. The onboarding map here is an original example, not a claim about a particular organisation.

Record the difference between the current and proposed workflow. A new screen may reduce document hunting but add verification work. Ask the reviewer to follow both paths and explain what disappears, remains and becomes harder.

Separate facts, assumptions and proposed targets

  • Fact: a permitted sample contains five requests with missing mandatory fields.
  • Assumption: all future requests use the same document format.
  • Proposed target: the first release should identify missing fields before a reviewer begins a detailed review.
  • Open question: which document version defines the current checklist?

These statements have different evidence requirements. Test assumptions and obtain agreement on targets. Do not turn an illustrative target into a measured improvement on a course page or resume.

Use a small assumption log with owner, evidence needed and decision date. If a critical assumption remains unresolved, narrow the scope or delay the claim of readiness.

An evidence log you can use immediately

IDStatementStatusEvidence or next check
E1A reviewer repeats the checklist after new attachments arrive.Reported in the fictional conversation.Observe another case and inspect the state history.
A1Every request type uses the same mandatory fields.Unverified assumption.Process owner provides the type-to-checklist rules.
A2The API supports production read-only access.Unverified assumption.Integration owner confirms scopes and a denied-access test.
T1Review assistance should reduce active handling time.Proposed goal.Agree a baseline, sample and quality constraints.
D1Automatic approvals are excluded from the first release.Proposed scope decision.Record confirmation by the authorized owner.

Do not average away contradictions. If two reviewers describe different exception paths, investigate whether request type, location or checklist version explains the difference. Keep the observation separate from your interpretation so another team member can challenge the reasoning without losing the underlying evidence.

Choose the first release: scope, non-goals and dependencies

Prioritize the smallest useful change that tests the main uncertainty. A useful first release is not simply the easiest component to code. It should allow a user to complete a bounded task and provide evidence about whether the approach is worth continuing.

CandidateWhy consider it?Unresolved dependencyDecision for this example
Make the checklist version explicit.Addresses the ambiguity discovered in the call.Process owner must define the rule.Resolve before implementation.
Read-only completeness view.Connects case, checklist and evidence for a reviewer.Permitted documents and stable identifiers.Candidate first vertical slice.
Model-assisted extraction.May help with varied document wording.Representative samples and quality evaluation.Add only if simpler methods leave a real gap.
Automatic account approval.Broadens automation but adds consequential actions.Authority, controls and recovery requirements.Out of scope for this practice release.
Multi-team analytics dashboard.May support later operational planning.Agreed metrics and consistent data.Defer until the core workflow is understood.

Write the boundary in plain language: “This prototype helps a reviewer inspect completeness. It does not approve customers, send messages or change account state.” Then specify where the review result is stored, who can change it and how an error is corrected. These details prevent a seemingly read-only helper from quietly gaining write responsibilities.

Keep dependencies in the plan instead of hiding them inside an estimate. A document API, test environment and process decision can be outside the engineer’s control. Give each dependency a named role, required evidence and a decision date; revise the plan if it remains unresolved.

Write a one-page project brief

Project: Onboarding completeness review (synthetic exercise)
User: Operations reviewer
Problem: Missing information is discovered late in the review.
Input: Synthetic request metadata and permitted sample documents.
Output: A completeness checklist with evidence references.
First release: Read-only review assistance.
Non-goals: Identity decisions, final approval, account creation.
Source of truth: A versioned requirements checklist.
Human decision: Reviewer accepts or corrects the checklist.
Success evidence: Labelled cases and observed reviewer task completion.
Stop condition: Unauthorized data exposure or unsupported final action.
Owner: Named role to be confirmed before a real pilot.

The brief is intentionally specific. It prevents the phrase complete onboarding from hiding unrelated tasks. Ask the user to correct it before implementation. A short disagreement now is cheaper than discovering after deployment that the application solves the wrong part of the process.

Complete the brief with a decision record

Brief version: v0.1, synthetic practice scenario
Decision requested: proceed to a sandbox prototype, not production
Primary uncertainty: can reviewers identify missing items with less rework?
Checklist dependency: process owner confirms type and version rules
Access dependency: integration owner confirms permitted read-only scope
Quality evidence: labelled ordinary, missing, conflicting and denied cases
User evidence: observed reviewer completion with and without assistance
Pilot gate: unresolved critical access or policy issues block real exposure
Change control: scope changes include impact, owner and updated tests
Next review: after the sandbox workflow and evidence are ready

A one-page brief should be short enough for a busy stakeholder to correct. Put detailed API contracts and the test matrix alongside it, linked by stable requirement IDs. The brief is the shared decision summary, not a place to compress every engineering detail into unreadable text.

Decompose the problem into testable components

  1. Intake: validate request identity and required metadata.
  2. Access: retrieve only documents the user may inspect.
  3. Extraction: identify candidate fields and preserve source references.
  4. Validation: compare candidates with explicit checklist rules.
  5. Presentation: show missing, uncertain and complete items separately.
  6. Review: record the person’s correction or decision.
  7. Operations: log failures safely and support reprocessing.

For each component, define its input, output and failure behaviour. This makes it easier to decide whether a model is needed. A missing required date may be handled by deterministic validation, while interpreting varied document wording may justify a model-assisted step.

Keep the end-to-end user task visible. Decomposition is useful only if the pieces reconnect into a workflow; seven working components do not automatically produce one usable application.

Define contracts, not just component names

ComponentInput and output contractFailure behaviour
Case intakeValidated case ID and request type produce an eligible review request.Missing type returns a correction state; no guessed default.
Checklist resolverRequest type and applicable date select a versioned checklist.Unknown rule version blocks a completeness conclusion.
Document accessAuthenticated user and case scope produce permitted references.Denied files are not fetched or summarized.
Field extractionPermitted document content produces candidate values and locations.Unreadable content becomes unknown, not missing or complete.
Rule evaluationCandidates and checklist rules produce item statuses.Conflicting values remain flagged for human review.
Review presentationStatuses and references produce a usable checklist.The screen exposes limits and preserves unresolved work.
Review historyAuthorized corrections produce a versioned decision record.Concurrent or stale updates are rejected or reconciled explicitly.

Now build one vertical slice: load one synthetic case, select the correct checklist, apply one rule and show the result with evidence. This validates the connections. Building seven complete services separately can postpone the moment you learn that the case identifiers do not match.

The 40 FDE project ideas and build plans cover implementation practice. This discovery guide stops short of prescribing a universal architecture; the contracts and evidence should determine which implementation is appropriate.

Decide whether the problem needs rules, search, a model or an agent

Use the least complex approach that can satisfy the agreed task. Anthropic’s engineering guidance distinguishes predefined workflows from more autonomous agents and recommends starting with simpler approaches. That is a useful design principle, not proof that any particular customer needs an agent.

Observed needCandidate approachWhat would justify more complexity?
A required date or identifier is absent.Deterministic validation.The value must be interpreted from varied unstructured material.
A reviewer cannot find the correct checklist.Versioned rules and explicit navigation.A broad document collection requires relevant evidence retrieval.
A user needs an answer supported by documents.Search or retrieval with source references.The task needs synthesis that can be evaluated against those sources.
Documents express the same field in varied language.Model-assisted extraction with validation and review.Evaluation shows a benefit over available simpler extraction.
Several approved tools must be used in a variable order.A bounded agent or orchestrated workflow.Flexible sequencing is necessary and its permissions, costs and failures are controllable.

For the onboarding example, a model’s confidence is not authority to mark a document complete. Keep the rule definition, source evidence and reviewer decision separate. Test at least one non-AI baseline so you can explain what the model adds and what it costs.

Define success metrics with a worked calculation

Choose measures that match the problem rather than whatever the model SDK exposes. Record the workload, sample size, start/stop events and exclusions. A claim such as “review time improved” is incomplete if the after-measurement omits corrections or includes only easy requests.

MeasureDefinition for this exampleWhy it matters
Active handling timeMinutes spent inspecting and correcting a request, excluding idle waiting.Measures reviewer effort rather than calendar delay.
Rework rateRequests needing another review because of a completeness error / reviewed requests.Checks whether apparent speed shifts work downstream.
Critical missesMandatory missing items incorrectly presented as complete.Captures a harmful error that average accuracy can hide.
Review escalationCases routed to a person because evidence is unknown or conflicting.Shows workload and whether uncertain cases have a usable path.
Cost per completed reviewRelevant service costs divided by successfully completed reviews.Connects usage to a business task, with failed attempts included in cost.

Synthetic arithmetic example, not a measured customer result

Assume 60 comparable requests take an average of 12 active minutes each in a baseline exercise and 9 minutes with assistance, including correction time. Baseline effort is 60 x 12 = 720 minutes; assisted effort is 60 x 9 = 540 minutes. The difference is 180 minutes, or 3 hours, and the relative reduction is (12 – 9) / 12 = 25%.

If 9 of the 60 baseline requests need rework, the rate is 15%. If 6 of 60 assisted requests need rework, it is 10%: a decrease of 5 percentage points. Do not call that a 5% relative reduction. These invented numbers explain the calculation; they are not Brolly Academy performance evidence or a forecast for a real project.

Time released is not automatically cash saved. People may use it on other work, and integration, support, review and provider costs still matter. Before scaling, compare representative cases, inspect critical misses and consider whether familiarity with repeated test cases made the assisted run easier. Agree thresholds with the actual process owner instead of copying the teaching numbers into a proposal.

Turn requirements into acceptance criteria

ScenarioExpected behaviourEvidence
All required fields presentShow completeness and the supporting source references.A labelled synthetic case and reviewer check.
One field missingIdentify the missing field without inventing its value.Expected checklist compared with actual output.
Conflicting documentsFlag uncertainty and route to review.A conflict case with a defined expected response.
Restricted documentDeny retrieval and avoid exposing its contents.A permission-boundary test.
External service unavailableShow a controlled failure and preserve the request state.A simulated timeout or failure test.

Acceptance criteria should say what the application must do, not merely that the customer likes the demo. Pair quality measures with unacceptable failures. A fast workflow that reveals restricted data has not passed.

The GOV.UK user-story guidance connects the user, desired outcome and acceptance evidence. For our example: As an operations reviewer, I need to see unresolved checklist items with their source references so I can decide what needs correction without reopening every file.

Trace each requirement to a test

IDGiven / when / then testEvidence
AC1: rule versionGiven a request type and applicable date, when the checklist is loaded, then its agreed version is visible and used.Fixture with expected version; rendered screen or response.
AC2: missing valueGiven a mandatory item with no supporting value, when evaluated, then it is missing and no value is invented.Labelled fixture and exact expected status.
AC3: unreadable sourceGiven an unreadable permitted file, when extraction fails, then the item is unknown and routed to review.Controlled extraction failure and visible review state.
AC4: access boundaryGiven a user without case access, when the case is requested, then access is denied without exposing its document content.Authorization test at the service boundary.
AC5: conflicting evidenceGiven two permitted sources with conflicting values, when evaluated, then the conflict and relevant references are shown.Conflict fixture and reviewer walkthrough.
AC6: dependency timeoutGiven an unavailable document service, when retrieval times out, then the case remains unresolved and a bounded retry path is available.Simulated timeout; state and retry record.
AC7: no final actionGiven any checklist result, when displayed, then it does not create or approve an account.Side-effect check and absence of unauthorized action calls.
AC8: reviewer correctionGiven an authorized correction, when it is saved, then the case version and correction history remain inspectable.Before/after record with actor and version.

Add ordinary usability checks: can a reviewer distinguish missing from unknown without relying only on colour, open evidence with the keyboard, read status messages and return to the queue without losing work? A technically correct response is not sufficient if the user cannot understand or act on it.

Assign expected outcomes before running the test. Keep acceptance fixtures separate from tuning examples where practical, and include realistic exceptions. A pass on eight teaching cases is evidence about those cases, not proof of universal safety or production quality.

Use a risk register to decide the first release

List the risk, consequence, evidence, mitigation and owner. For this scenario, stale checklists, unauthorized documents, incorrect extraction and unavailable services are more important than decorative interface choices.

Choose a release that tests the most important uncertainty with limited exposure. A read-only checklist assistant may be an appropriate first step; automatic account creation adds consequential actions and more complex recovery. This is an example of scope reduction, not a universal rule that automation is inappropriate.

Anthropic’s effective-agents guidance is a useful reference when considering simpler workflows versus more autonomous designs. The customer-specific decision still requires evidence from the workflow and its constraints.

RiskConsequenceMitigation and evidenceDecision owner
Unowned checklist ruleA correct implementation applies the wrong policy.Version rule approved and tested before a pilot.Process owner
Cross-case document accessData is disclosed to the wrong reviewer.Enforce case scope and test denied access.Data and engineering owners
Missing treated as completeA required item is overlooked.Explicit unknown state, labelled edge cases and review.Process and quality owners
Dependency unavailableRequests disappear or appear falsely complete.Preserved state, bounded retry and visible status.Integration owner
Reviewer rejects the new screenWork moves back to email and spreadsheets.Observed task trial with corrections to the workflow.Process owner
Unexpected provider usageThe prototype exceeds the approved budget.Usage limits, cost measurement and an agreed stop.Budget and operating owners

A severe unresolved permission risk should not be offset by several low-risk benefits in a scoring spreadsheet. Use explicit release blockers where needed. For less critical uncertainty, choose a bounded experiment with a clear owner and a date for reviewing what was learned.

Handle scope changes without losing the user goal

New findings are normal. The problem is not changing the plan; it is making the change invisible. When a stakeholder adds automatic reminders to a read-only helper, record the new outbound action, data recipients, approval policy, duplicate-send handling and support implications before accepting it.

Change request: draft a reminder for missing checklist items
Reason: reviewers retype the same request for information
Current boundary: read-only completeness assistance
Option A: display suggested wording for a reviewer to use
Option B: send a message after explicit reviewer approval
New dependencies for B: messaging API, recipient validation, audit history,
duplicate-send prevention, recovery and operating ownership
Decision: prototype A first; B remains outside the current scope
Acceptance impact: no message is sent by the prototype
Owner: authorized process and delivery roles to confirm

This example offers a path forward rather than simply saying no. Revisit the original goal, compare options and update the brief, tests and estimate together. A customer should understand what is being traded: speed of delivery, automation depth, operating cost or another concrete factor.

Close discovery with a decision, not just meeting notes

Summarise the problem, first release, non-goals, access requirements, acceptance criteria and unresolved questions. Ask the relevant owners to confirm or correct the summary. Record changes so the implementation team does not rely on different memories of the same meeting.

Then build the smallest useful vertical slice and return to users with evidence. Discovery continues as real behaviour reveals new constraints. Use the FDE project plans to practise implementation and the handover checklist to carry the work beyond a demonstration.

For structured practice connecting these stages, explore the Forward Deployed Engineer Course. A good learning exercise should let you explain why you selected the problem and how the resulting application addresses it.

Use a proceed, investigate or stop decision

  • Proceed to a prototype: the problem is specific, a useful boundary is agreed and the next uncertainty can be tested with permitted resources.
  • Investigate first: a critical rule, access condition or dependency remains unresolved. State the question and the evidence required.
  • Stop or choose another approach: the problem is too small, already solved elsewhere, not feasible within constraints or better addressed by a process change.

GOV.UK’s discovery-phase guidance explicitly treats deciding not to continue as a valid outcome. For FDE practice, the same idea is useful: a justified recommendation not to build can be better work than a polished implementation with no meaningful user benefit.

A customer-ready readout

“We found that reviewers repeat completeness checks because checklist versions and unresolved items are hard to track. We recommend a sandbox, read-only review view for one request type. The process owner must confirm the version rule, and integration must confirm permitted access. We will compare reviewer effort and test missing, conflicting, unreadable and denied cases. Automatic approvals and outbound messages are excluded. The next decision is whether the evidence justifies a limited pilot.”

Send the readout to the agreed decision-makers, invite corrections and retain the decision history. Do not describe silence as approval for data access or release. Carry the accepted evidence and remaining risks into the FDE deployment and handover checklist.

Practise discovery for an interview or portfolio

Use a peer as a fictional reviewer and give them the onboarding scenario, including one hidden complication such as an ambiguous checklist version. Your task is to uncover the complication through questions, not to guess the desired architecture. Label the exercise clearly as simulated.

  1. Run the conversation: ask about the last ordinary and difficult case, then read back your understanding.
  2. Produce the evidence: a workflow map, fact/assumption log, one-page brief and stakeholder decisions.
  3. Scope the build: choose one vertical slice, non-goals and the dependency that most threatens delivery.
  4. Define verification: write expected outcomes for normal, uncertain, denied and unavailable states.
  5. Review your reasoning: explain one design choice that changed because of discovery and one claim you still cannot make.
Review dimensionWeak evidenceStronger evidence
Problem understandingRepeats “the customer needs AI”.Names the user task and shows the observed bottleneck.
Question qualityAsks only leading yes/no questions.Uses examples and follow-ups that can change the plan.
ScopePromises end-to-end autonomy.Defines a useful first release and explicit exclusions.
Technical reasoningLists fashionable tools.Defines inputs, outputs, dependencies and failure behaviour.
EvaluationSays the demo looked good.Shows baseline definitions, acceptance cases and limitations.
CommunicationLeaves contradictory requirements unresolved.Records alternatives, owner and the next decision.

This is a self-review rubric, not a leaked employer interview scorecard. Interview formats vary. For related preparation, use 120 FDE interview questions and answers and the FDE resume and portfolio guide. Your portfolio should explain the reasoning behind the code, without presenting a simulated conversation as paid client work.

Common discovery mistakes and a final readiness checklist

  • Starting with a tool: replace “we will use an agent” with the user task, evidence and alternatives.
  • Interviewing only the sponsor: include the people doing and supporting the work.
  • Ignoring exceptions: examine a delayed, conflicting or unavailable case before estimating completeness.
  • Using vague success language: define what will be measured, when and with which denominator.
  • Assuming access: separate visible data, authorized processing and approved external sharing.
  • Over-decomposing: reconnect components through a working user task before adding more services.
  • Hiding unknowns: assign each unresolved question a check and decision owner.
  • Confusing a sample with proof: state what the sample covers and what remains untested.

Before you start implementation, can you answer these?

  1. Who is the user, and what bounded outcome are they trying to achieve?
  2. Which observation or record supports the problem statement?
  3. What is in the first release, and what is explicitly excluded?
  4. Which rules, data and access permissions are authoritative?
  5. What will each component accept, return and do when it fails?
  6. What baseline and acceptance evidence will inform the next decision?
  7. Who can approve scope, access and release, and who will operate the result?
  8. What finding would make you change direction or stop?

If you cannot answer a critical item, investigate it or narrow the scope. The strongest outcome of FDE customer discovery is a project that the customer, engineer and operating owner understand in the same way. That shared understanding makes subsequent coding, testing and handover more purposeful.

Frequently Asked Questions

What is FDE customer discovery?

FDE customer discovery is the investigation of a customer’s users, workflow, problems, data and constraints before choosing a technical solution. Its output should support a decision: what to build first, what not to build and what evidence will show whether it helps.

What is problem decomposition in forward deployed engineering?

It means breaking a scoped user problem into smaller behaviours, decisions and interfaces that can be implemented and tested. Include inputs, outputs, dependencies and failure paths, then reconnect them through an end-to-end user task.

Is customer discovery the same as requirements gathering?

No. Discovery checks which problem is worth solving and why. Requirements describe the behaviour and constraints of a chosen solution. They inform each other, but a detailed feature list is not proof that the features address the right need.

How many discovery calls does an FDE need?

There is no universal number. Continue until the important user, workflow, feasibility and decision questions are answered well enough for the next bounded step. A 45-minute call is a useful practice format, not proof that an enterprise discovery is complete.

What should I ask in the first customer meeting?

Start with the user’s role, a recent request, where it waited or failed, the current workaround and what a useful outcome would look like. Then identify the rule, data and decision owners. Do not begin by committing to a model or agent architecture.

What if the customer insists on using AI?

Acknowledge the goal, then compare the proposed AI approach with a simpler baseline against the same task and constraints. Explain benefits, costs and failure behaviour. The decision should reflect evidence and the customer’s authorized priorities, not a reflexive yes or no.

How do I turn a vague request into acceptance criteria?

Name the user and outcome, choose a narrow first release, then describe expected behaviour for ordinary and exceptional cases. Each criterion should have an observable result, such as a missing item remaining unresolved rather than receiving an invented value.

Should a missing value and an unreadable document have the same status?

Usually not in a review workflow. A missing value means the required evidence is absent under the agreed rule. An unreadable source means the system could not determine the result. Keeping unknown separate prevents extraction failure from being mistaken for a completed check.

Can I practise discovery without a real client?

Yes. Use synthetic data, a clearly labelled fictional scenario and a peer acting as a user. Publish the problem brief, decisions and tests as learning evidence. Do not claim that a simulated interview was paid customer delivery.

What if I cannot access production data?

Identify the decision you need to test and use approved synthetic, redacted or sandbox material where appropriate. Record the limits. Lack of access is not permission to copy data from another environment or to assume that production behaviour matches the sample.

Which discovery documents belong in an FDE portfolio?

Include a concise problem brief, current workflow, fact-and-assumption log, scoped release, technical contracts and acceptance matrix. Show a decision that changed after evidence. Use only information you may share, with synthetic examples where necessary.

Does finishing discovery make the application ready for production?

No. Discovery supports a scoped decision. Implementation, security and quality checks, user validation, release controls and operating ownership still need evidence appropriate to the actual deployment.

Sources and Further Reading

Official documentation and employer pages were checked on 9 October 2026. Job availability, compensation and product details can change. Teaching scenarios are illustrative unless explicitly identified otherwise.