In a product company
Make your employer’s product work in the customer’s environment. Build integrations and extensions within agreed product boundaries.
Bring recurring needs back to product engineering. Recognise when the product does not fit.
A practical roadmap
Build the engineering depth and customer judgment the job requires. Find your starting point and choose what to learn next.
Free to use. No installation required.
A forward deployed engineer works with customers to define a problem, build a solution, and help their team use and operate it.
The work combines engineering and customer judgment: observe a task, debug an integration, compare options, and test whether the change helps.
FDE roles span AI, data platforms, applications, and infrastructure. Check each job’s responsibilities: what you build, which decisions you own, and who supports it.
Understand the customer
Build and adapt
Help people use it
Carry the learning forward
These activities overlap and repeat.
Make your employer’s product work in the customer’s environment. Build integrations and extensions within agreed product boundaries.
Bring recurring needs back to product engineering. Recognise when the product does not fit.
Deliver an agreed client outcome using suitable platforms, custom code, and existing systems.
Work within the agreed scope and budget. Establish who maintains the solution after delivery.
These models overlap. In both, you build with the customer and share responsibility with their business and technical teams.
Start with the responsibilities you can already demonstrate. Your next step is the gap that limits what you can deliver.
Begin with programming, APIs, databases, testing, and deployment. Build a small application you can explain and maintain. Learn the customer-facing work alongside it, with guidance on your first projects.
Check the technical capabilities, then focus on customer work and operation. Add AI evaluation if your target role involves models. Your next gap may be scoping, economics, adoption, or an unfamiliar environment.
Bring your discovery and communication experience. Check your hands-on ability to implement, debug, test, and operate what you recommend. Start with the technical capabilities you cannot yet show.
Use the roadmap to find a weakness that repeats across engagements. Then strengthen scope and architecture judgment, cross-team decisions, and the ability to help others deliver without relying on you for every answer.
Engineering depth supports the role. Progress means taking responsibility for harder decisions across the customer’s work, systems, and operation.
Use these six capabilities to assess your next step. Early in your career, demonstrate them in a bounded project with review. With experience, apply them across less familiar systems and more consequential decisions.
The capabilities develop together; the engagement determines which needs attention.
Build software another team can change and operate. Work confidently with unfamiliar code, APIs, databases, tests, and deployment. Use the stack the environment supports.
What good looks like
A reviewed change runs outside your development environment, and you can trace a failure from the request to its cause.
Judgment: Choose infrastructure that the team can support. Account for configuration, secrets, and failure handling. Code generated by an AI tool carries the same review and testing responsibility as code you write.
Evidence: A deployed application, a reviewed change, and a reproduced failure with a tested fix. Show why the fix addresses the cause.
Foundations: CS50 Python, MDN web development, and the PostgreSQL tutorial. Use these where your engineering foundation needs work.
Connect systems without losing the meaning, freshness, or access restrictions of their data. Establish which source owns each record and how changes reach downstream users.
What good looks like
Retries, stale records, and unavailable dependencies produce explicit outcomes without duplicate writes or unauthorised access.
Judgment: A timeout does not prove a write failed. Define how retries avoid duplicates, how conflicting records are reconciled, and what happens when data is missing. Respect upstream API limits and supported interfaces.
Evidence: A data-flow diagram and tests covering duplicate events, denied access, schema changes, and interrupted writes. Identify any recovery that still requires a person.
References: HTTP, Stripe’s error-handling guide, and OWASP authorization guidance.
Turn a customer request into an agreed outcome and a delivery decision. Establish the baseline, constraints, alternatives, and who can authorise the work.
What good looks like
The customer can explain the proposed change, its expected value, what it excludes, and the decision they need to make.
Judgment: Separate time spent working from time spent waiting. Include integration, review, and maintenance in the business case. Saved hours create capacity; cash savings require a separate explanation. A scope change needs an owner’s agreement on cost and displaced work.
Evidence: A concise recommendation with observed facts, labelled estimates, alternatives, scope, and a decision owner. Record disagreements that could change the build.
Reference: GOV.UK contextual research guidance covers observing work and checking your interpretation.
Choose where AI earns its place in the workflow. Work with model APIs, context and retrieval, structured outputs, and tool use as the task requires. Define what the system may do and how its output will be checked.
What good looks like
You can defend the design against a simpler alternative using representative results, failure cases, latency, and total operating cost.
Judgment: Evaluate the whole task, including human review. Test missing information, outdated sources, and consequential errors separately from average performance. Enforce permissions outside the model and treat retrieved instructions as untrusted input.
Evidence: A representative evaluation set, results by failure type, cost including retries and review, and explicit limits on deployment. Label synthetic cases and distinguish local tests from customer outcomes.
References: Building effective agents and Demystifying evals for AI agents.
Make the system usable and recoverable under an agreed support model. Establish rollout conditions, monitoring, rollback, and who owns incidents, rules, and source data.
What good looks like
The operating team can handle a common failure and escalate an unfamiliar one without relying on your private knowledge.
Judgment: A technically healthy service can still create extra work. Track review, rework, and adoption alongside reliability. Keep human approval where it is needed, with a named role and clear authority. Agree how long support lasts.
Evidence: A controlled release plan, actionable alerts, and a recovery exercise completed by the operating team. Capture the gaps the exercise exposes before expanding the rollout.
Reference: OpenTelemetry’s observability primer explains the signals used to investigate running systems.
Decide what should stay local and what others can reuse: a product change, client-owned capability, connector, or delivery method.
What good looks like
Another team can adopt the useful part with clear ownership, supported boundaries, and permission to use it.
Judgment: One customer’s need does not establish demand for a platform. Look for repeated requirements and stable behaviour before generalising. Agree maintenance with the product, client, or delivery team; check rights before sharing code or data.
Evidence: A proposal or reusable component that states who needs it next, what remains customer-specific, and who will maintain it. Keeping a change local is a valid decision.
A useful case shows what changed because of your work. A practice project can demonstrate engineering ability; claims about customer value require customer evidence.
Show a working system, its data flow, and a failure you diagnosed. Explain the trade-offs behind the design.
Show how user feedback changed a decision and what evidence supports the result.
Help another person operate and recover it. Be clear about which production assumptions remain untested.
Keep a short account: the problem, your contribution, the alternatives, one difficult decision, the evidence, and what you would improve. Share only material you have permission to disclose. A clear limitation is more useful than an unsupported success claim.
Compare roles you would actually consider. Look for what you will build, how you will work with customers, who supports production, and what the role expects on day one. Check travel, location, and on-call responsibilities directly with the employer.
Prepare to explain code, debug a problem, reason through a design, and discuss a decision with a customer. Use your project evidence to show what changed because of your work. Interview formats and experience requirements vary; prepare against the actual role.
Go deeper into the part of the role you want to understand next.
Understand the responsibilities and how the role varies between companies.
Assess the engineering, customer and communication capabilities behind the role.
Choose a target role, assess your existing evidence and plan a career transition.
Prepare for coding, design, and customer-facing discussions.
Present your contribution, decisions, and results clearly.
Understand job descriptions and choose opportunities that fit.
As you gain experience, take on work with more uncertainty, more consequential decisions, or more teams involved. Keep a technical area where you can go deep. Learn enough about adjacent areas to recognise a problem and bring in the right help.
Diagnose harder failures and make reliability, security, and cost trade-offs explicit.
Narrow a request, challenge a weak assumption, and work through disagreement without taking over another person’s responsibility.
Recognise repeated needs and turn field learning into product improvements, client capabilities, or delivery patterns with clear ownership.
Leave decisions understandable, share operating knowledge, and help others deliver without routing everything through you.
Repeated difficulties across engagements identify where to deepen your skill. Review the decisions behind them with someone who has handled that responsibility.
No. Build the software foundations and learn the AI skills your target role needs. You should be able to evaluate and operate the systems you use, even if you do not train models yourself.
No. Learn one environment well, then compare alternatives when the work calls for it. Build breadth through real needs rather than collecting platforms.
Some employers hire graduates; others seek substantial production and customer-facing experience. Match your evidence to the role and look for appropriate support and mentorship.
That depends on your starting point and opportunities to practise. Use the capability descriptions to identify gaps. Completing a reading list alone does not demonstrate the work.
Your next step
Choose a capability that limits your work today. Use a project to demonstrate it against the standard above.
FDEOps Field Notes explores decisions behind customer-facing engineering: what to build, what to question, and how to make the result useful.
Read FDEOps Field NotesFDEOps gives your coding agent reusable instructions for customer-facing engineering tasks. Use a task independently, or keep an ongoing engagement's confirmed context in a local record with the fde coordinator. The skill pack supports your work; it does not replace the capabilities in this roadmap.
Explore the AI skill packThis roadmap is an editorial recommendation, not a certification, employer-endorsed curriculum, or guarantee of hiring readiness. Reviewed 16 September 2026 by Subash Natarajan.