{"id":77785,"date":"2026-07-15T08:53:47","date_gmt":"2026-07-15T08:53:47","guid":{"rendered":"https:\/\/www.devopsschool.com\/blog\/?p=77785"},"modified":"2026-07-15T08:53:49","modified_gmt":"2026-07-15T08:53:49","slug":"forward-deployed-engineer-roadmap-from-swe-to-customer-facing-ai-engineer","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/forward-deployed-engineer-roadmap-from-swe-to-customer-facing-ai-engineer\/","title":{"rendered":"Forward Deployed Engineer Roadmap: From SWE to Customer-Facing AI Engineer"},"content":{"rendered":"\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Table of Contents<\/h1>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Quick Answer<\/li>\n\n\n\n<li>What Is a Customer-Facing AI Engineer?<\/li>\n\n\n\n<li>Why This Career Transition Matters in 2026<\/li>\n\n\n\n<li>SWE vs Forward Deployed Engineer<\/li>\n\n\n\n<li>The Mindset Shift You Must Make<\/li>\n\n\n\n<li>What Companies Expect From Modern FDEs<\/li>\n\n\n\n<li>The Complete FDE Competency Model<\/li>\n\n\n\n<li>Assess Your Starting Point<\/li>\n\n\n\n<li>The Roadmap at a Glance<\/li>\n\n\n\n<li>Phase 1: Strengthen Production Software Engineering<\/li>\n\n\n\n<li>Phase 2: Become a Practical Full-Stack Builder<\/li>\n\n\n\n<li>Phase 3: Master Enterprise Data and Integrations<\/li>\n\n\n\n<li>Phase 4: Learn Cloud and Production Delivery<\/li>\n\n\n\n<li>Phase 5: Learn AI Application Engineering<\/li>\n\n\n\n<li>Phase 6: Master AI Evaluations<\/li>\n\n\n\n<li>Phase 7: Learn Agent Engineering<\/li>\n\n\n\n<li>Phase 8: Develop Security and Governance Skills<\/li>\n\n\n\n<li>Phase 9: Learn Customer Discovery<\/li>\n\n\n\n<li>Phase 10: Build Product and Business Judgment<\/li>\n\n\n\n<li>Phase 11: Improve Communication and Leadership<\/li>\n\n\n\n<li>The FDE Portfolio Project Ladder<\/li>\n\n\n\n<li>The Gold-Standard FDE Capstone Project<\/li>\n\n\n\n<li>How to Gain Customer-Facing Experience<\/li>\n\n\n\n<li>Transition Paths for Different SWE Backgrounds<\/li>\n\n\n\n<li>Six-Month Accelerated Roadmap<\/li>\n\n\n\n<li>Twelve-Month Complete Roadmap<\/li>\n\n\n\n<li>Weekly Learning Schedule<\/li>\n\n\n\n<li>How to Build an FDE Resume<\/li>\n\n\n\n<li>How to Improve Your LinkedIn and GitHub<\/li>\n\n\n\n<li>How to Find FDE and Adjacent Roles<\/li>\n\n\n\n<li>How to Prepare for FDE Interviews<\/li>\n\n\n\n<li>FDE System Design Framework<\/li>\n\n\n\n<li>FDE Behavioral Interview Framework<\/li>\n\n\n\n<li>Common Transition Mistakes<\/li>\n\n\n\n<li>Your First 90 Days After Becoming an FDE<\/li>\n\n\n\n<li>FDE Readiness Scorecard<\/li>\n\n\n\n<li>Frequently Asked Questions<\/li>\n\n\n\n<li>Final Checklist<\/li>\n\n\n\n<li>Conclusion<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">1. Quick Answer<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">To move from Software Engineer to Forward Deployed Engineer, you must expand your ownership beyond writing and maintaining software.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A traditional SWE is often responsible for a component, service, application, or product feature.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A Forward Deployed Engineer is expected to understand a customer\u2019s problem, design the right solution, build it, integrate it with existing systems, deploy it safely, measure whether users adopt it, and convert lessons from the engagement into reusable product improvements.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The transition can be summarized as:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"CSS\" data-shcb-language-slug=\"css\"><span><code class=\"hljs language-css\"><span class=\"hljs-selector-tag\">flowchart<\/span> <span class=\"hljs-selector-tag\">LR<\/span>\n    <span class=\"hljs-selector-tag\">A<\/span><span class=\"hljs-selector-attr\">&#91;Software Engineer]<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">B<\/span><span class=\"hljs-selector-attr\">&#91;Production Builder]<\/span>\n    <span class=\"hljs-selector-tag\">B<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">C<\/span><span class=\"hljs-selector-attr\">&#91;Full-Stack Integrator]<\/span>\n    <span class=\"hljs-selector-tag\">C<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">D<\/span><span class=\"hljs-selector-attr\">&#91;AI Application Engineer]<\/span>\n    <span class=\"hljs-selector-tag\">D<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">E<\/span><span class=\"hljs-selector-attr\">&#91;Customer Problem Solver]<\/span>\n    <span class=\"hljs-selector-tag\">E<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">F<\/span><span class=\"hljs-selector-attr\">&#91;Forward Deployed Engineer]<\/span>\n    <span class=\"hljs-selector-tag\">F<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">G<\/span><span class=\"hljs-selector-attr\">&#91;Customer-Facing AI Leader]<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">CSS<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">css<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p class=\"wp-block-paragraph\">You do not stop being a software engineer.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You add:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Customer discovery<\/li>\n\n\n\n<li>Workflow analysis<\/li>\n\n\n\n<li>AI application engineering<\/li>\n\n\n\n<li>Evaluation<\/li>\n\n\n\n<li>Enterprise integration<\/li>\n\n\n\n<li>Production deployment<\/li>\n\n\n\n<li>Security and governance<\/li>\n\n\n\n<li>Product judgment<\/li>\n\n\n\n<li>Adoption measurement<\/li>\n\n\n\n<li>Executive communication<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The central career shift is:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">From being responsible for software output to being responsible for customer outcomes.<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">2. What Is a Customer-Facing AI Engineer?<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">A customer-facing AI engineer builds AI-powered systems directly with or for customers.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Depending on the company, the title may be:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Forward Deployed Engineer<\/li>\n\n\n\n<li>Forward Deployed Software Engineer<\/li>\n\n\n\n<li>Applied AI Engineer<\/li>\n\n\n\n<li>AI Deployment Engineer<\/li>\n\n\n\n<li>Customer Engineer<\/li>\n\n\n\n<li>Field Engineer<\/li>\n\n\n\n<li>Resident Engineer<\/li>\n\n\n\n<li>Deployment Engineer<\/li>\n\n\n\n<li>AI Solutions Architect<\/li>\n\n\n\n<li>Applied AI Architect<\/li>\n\n\n\n<li>Professional Services Engineer<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The titles overlap, but the responsibilities usually contain some combination of:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Discovering valuable AI use cases<\/li>\n\n\n\n<li>Understanding customer workflows<\/li>\n\n\n\n<li>Building prototypes<\/li>\n\n\n\n<li>Developing full-stack applications<\/li>\n\n\n\n<li>Integrating enterprise data<\/li>\n\n\n\n<li>Connecting models to tools<\/li>\n\n\n\n<li>Designing evaluations<\/li>\n\n\n\n<li>Deploying production systems<\/li>\n\n\n\n<li>Implementing permissions and governance<\/li>\n\n\n\n<li>Supporting user adoption<\/li>\n\n\n\n<li>Providing feedback to product and research teams<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">OpenAI currently defines its customer-facing FDE role as owning discovery, technical scoping, system design, implementation, and production rollout. It measures success through production adoption, measurable workflow impact, and evaluation-driven feedback that influences product and model roadmaps.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Scale AI\u2019s current GenAI FDE role similarly combines daily customer interaction, full-stack development, rapid experimentation, infrastructure work, and translation of business and product ideas into engineering solutions.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Simple Definition<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">A customer-facing AI engineer turns general AI capabilities into secure, reliable, and adopted business workflows.<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">3. Why This Career Transition Matters in 2026<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">AI models have become highly capable, but models alone do not deliver enterprise outcomes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A company may have access to an advanced model and still struggle with:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Choosing the right use case<\/li>\n\n\n\n<li>Connecting internal data<\/li>\n\n\n\n<li>Managing user permissions<\/li>\n\n\n\n<li>Integrating legacy systems<\/li>\n\n\n\n<li>Measuring AI quality<\/li>\n\n\n\n<li>Controlling agent actions<\/li>\n\n\n\n<li>Meeting compliance requirements<\/li>\n\n\n\n<li>Handling model failure<\/li>\n\n\n\n<li>Earning employee trust<\/li>\n\n\n\n<li>Moving from prototype to production<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">This creates demand for engineers who can operate between model capability and organizational reality.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">OpenAI\u2019s career site currently shows Forward Deployed Engineering roles across customer delivery, platform engineering, management, government, technical deployment leadership, and specialized technical areas in several global locations.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Anthropic uses related Applied AI and architecture roles to guide customers from discovery through evaluation, integration, and deployment. Its current Applied AI Architect role specifically includes customer discovery, scalable architecture, customer-specific evaluations, and feedback to product and engineering.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The market is therefore rewarding engineers who can combine:<\/p>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">Software engineering\n+ AI engineering\n+ production operations\n+ customer understanding\n+ business judgment\n<\/code><\/span><\/pre>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">4. SWE vs Forward Deployed Engineer<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">The difference is not that one role codes and the other role talks.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Both roles may involve deep software engineering.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The difference is primarily one of scope, proximity, and accountability.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Dimension<\/th><th>Traditional SWE<\/th><th>Forward Deployed Engineer<\/th><\/tr><\/thead><tbody><tr><td>Main responsibility<\/td><td>Product or platform capability<\/td><td>Customer outcome<\/td><\/tr><tr><td>Primary stakeholder<\/td><td>Product and engineering teams<\/td><td>Customer users, engineers, and leaders<\/td><\/tr><tr><td>Requirements<\/td><td>Usually refined before implementation<\/td><td>Often ambiguous at the beginning<\/td><\/tr><tr><td>Coding<\/td><td>Central responsibility<\/td><td>Central but part of a wider responsibility<\/td><\/tr><tr><td>Customer interaction<\/td><td>Occasional or indirect<\/td><td>Frequent and direct<\/td><\/tr><tr><td>Architecture<\/td><td>Product-oriented<\/td><td>Customer, workflow, and environment-oriented<\/td><\/tr><tr><td>Integration<\/td><td>Product-controlled systems<\/td><td>Many external and legacy systems<\/td><\/tr><tr><td>Success metric<\/td><td>Features, quality, reliability<\/td><td>Adoption, workflow impact, and business value<\/td><\/tr><tr><td>Delivery style<\/td><td>Roadmap-driven<\/td><td>Discovery and milestone-driven<\/td><\/tr><tr><td>Product feedback<\/td><td>Usually indirect<\/td><td>Direct field evidence<\/td><\/tr><tr><td>Operational context<\/td><td>Known environment<\/td><td>Customer-specific environments<\/td><\/tr><tr><td>Communication<\/td><td>Mostly technical<\/td><td>Technical, business, and executive<\/td><\/tr><tr><td>Travel<\/td><td>Usually limited<\/td><td>Depends on company and engagement<\/td><\/tr><tr><td>Ambiguity<\/td><td>Moderate<\/td><td>Often very high<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">OpenAI\u2019s current FDE description expects engineers to make trade-offs among speed, scope, and quality, contribute directly to code, guide adoption, remove blockers, and turn working patterns into reusable tools and building blocks.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Palantir has described the same transition as moving from a narrower application-development responsibility toward discovery, scoping, deployment, customer enablement, and ownership of real customer outcomes.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">5. The Mindset Shift You Must Make<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">The most difficult part of becoming an FDE is often not learning another programming framework.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It is changing how you define good engineering.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Traditional SWE Question<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">What is the cleanest way to implement this feature?<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">FDE Question<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">What is the smallest safe system that solves the customer\u2019s most important problem and can be expanded responsibly?<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">Both questions matter.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The FDE must know when each one should dominate.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Mindset Shift 1: From Requirements to Discovery<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">As an SWE, you may receive a ticket containing expected behavior.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">As an FDE, the initial requirement may be:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">\u201cWe want an AI agent for our finance team.\u201d<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">Your first job is not to code.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Your first job is to discover:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Which finance workflow?<\/li>\n\n\n\n<li>Which users?<\/li>\n\n\n\n<li>Which bottleneck?<\/li>\n\n\n\n<li>Which systems?<\/li>\n\n\n\n<li>Which decisions?<\/li>\n\n\n\n<li>Which data?<\/li>\n\n\n\n<li>Which risk?<\/li>\n\n\n\n<li>Which measurable outcome?<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Mindset Shift 2: From Feature Completion to Outcome<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A feature can be delivered and still fail.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It may fail because:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Users do not trust it.<\/li>\n\n\n\n<li>Users cannot access it.<\/li>\n\n\n\n<li>It is outside the normal workflow.<\/li>\n\n\n\n<li>It is too slow.<\/li>\n\n\n\n<li>It solves an unimportant problem.<\/li>\n\n\n\n<li>It creates more work than it removes.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Mindset Shift 3: From Technical Certainty to Managed Uncertainty<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">You will rarely receive complete information.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A strong FDE does not pretend uncertainty does not exist.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The engineer:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Identifies assumptions.<\/li>\n\n\n\n<li>Ranks them by risk.<\/li>\n\n\n\n<li>Designs an experiment.<\/li>\n\n\n\n<li>Defines success criteria.<\/li>\n\n\n\n<li>Collects evidence.<\/li>\n\n\n\n<li>Adjusts the plan.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">Mindset Shift 4: From Building Everything to Using Leverage<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A successful FDE does not write custom code for every problem.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The engineer uses:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Existing platform capabilities<\/li>\n\n\n\n<li>Standard connectors<\/li>\n\n\n\n<li>Open-source libraries<\/li>\n\n\n\n<li>Managed cloud services<\/li>\n\n\n\n<li>Reusable internal components<\/li>\n\n\n\n<li>Configuration<\/li>\n\n\n\n<li>Automation<\/li>\n\n\n\n<li>AI-assisted development<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Custom code should be written where it creates genuine value or differentiation.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Mindset Shift 5: From Personal Ownership to Shared Enablement<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The solution should not depend permanently on you.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You must leave behind:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Documentation<\/li>\n\n\n\n<li>Runbooks<\/li>\n\n\n\n<li>Tests<\/li>\n\n\n\n<li>Monitoring<\/li>\n\n\n\n<li>Training<\/li>\n\n\n\n<li>Clear ownership<\/li>\n\n\n\n<li>Repeatable deployment processes<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">6. What Companies Expect From Modern FDEs<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Current FDE-style roles show a consistent set of expectations.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">6.1 End-to-End Technical Delivery<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">You should be able to move from:<\/p>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">Problem \u2192 prototype \u2192 evaluation \u2192 pilot \u2192 production \u2192 adoption\n<\/code><\/span><\/pre>\n\n\n<h2 class=\"wp-block-heading\">6.2 Full-Stack Capability<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">You may need to work across:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Frontend interfaces<\/li>\n\n\n\n<li>Backend services<\/li>\n\n\n\n<li>Databases<\/li>\n\n\n\n<li>APIs<\/li>\n\n\n\n<li>Data pipelines<\/li>\n\n\n\n<li>Cloud infrastructure<\/li>\n\n\n\n<li>Authentication<\/li>\n\n\n\n<li>AI orchestration<\/li>\n\n\n\n<li>Observability<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Scale AI explicitly describes its FDE work as spanning customer-facing frontend design, backend systems, infrastructure, and large-scale architecture.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">6.3 Customer Collaboration<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">You should be able to:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Interview users<\/li>\n\n\n\n<li>Work alongside customer engineers<\/li>\n\n\n\n<li>Explain trade-offs<\/li>\n\n\n\n<li>Lead technical workshops<\/li>\n\n\n\n<li>Handle disagreement<\/li>\n\n\n\n<li>Communicate project risk<\/li>\n\n\n\n<li>Guide adoption<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">6.4 AI Evaluation<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">You should know how to determine whether an AI system is actually good enough for a particular workflow.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">6.5 Production Judgment<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">You should understand:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Reliability<\/li>\n\n\n\n<li>Security<\/li>\n\n\n\n<li>Permissions<\/li>\n\n\n\n<li>Rollout safety<\/li>\n\n\n\n<li>Auditability<\/li>\n\n\n\n<li>Cost<\/li>\n\n\n\n<li>Monitoring<\/li>\n\n\n\n<li>Incident response<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">OpenAI\u2019s FDE platform role specifically emphasizes systems where reliability, security, governance, permissions, auditability, data boundaries, rollout safety, observability, and incident hardening shape the design.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">6.6 Productization<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">You should distinguish between:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A customer-specific requirement<\/li>\n\n\n\n<li>A repeatable workflow pattern<\/li>\n\n\n\n<li>A reusable platform capability<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">OpenAI\u2019s platform FDE function is designed around turning repeated customer signals into reusable architecture, tooling, and durable product capabilities.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">7. The Complete FDE Competency Model<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">A complete customer-facing AI engineer needs eight competency groups.<\/p>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">mindmap\n  root((Forward Deployed Engineer))\n    Software Engineering\n      Coding\n      APIs\n      Testing\n      Debugging\n      System Design\n    AI Engineering\n      LLM APIs\n      RAG\n      Agents\n      Evals\n      Guardrails\n    Data and Integration\n      SQL\n      Pipelines\n      Enterprise APIs\n      Identity\n      Legacy Systems\n    Cloud and Production\n      Containers\n      CI\/CD\n      IaC\n      Observability\n      Reliability\n    Customer Discovery\n      Interviews\n      Workflow Mapping\n      Requirements\n      Stakeholders\n      Adoption\n    Product Judgment\n      Prioritization\n      Scope\n      Metrics\n      Trade-offs\n      Productization\n    Security and Governance\n      IAM\n      Data Protection\n      Audit\n      Threat Modeling\n      Human Approval\n    Communication\n      Technical Writing\n      Workshops\n      Executive Updates\n      Conflict\n      Leadership\n<\/code><\/span><\/pre>\n\n\n<h2 class=\"wp-block-heading\">The Depth Rule<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">You do not need world-class depth in all eight areas.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Aim for:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Strong software-engineering depth<\/li>\n\n\n\n<li>Strong depth in one additional technical area<\/li>\n\n\n\n<li>Practical working knowledge of all remaining areas<\/li>\n\n\n\n<li>Strong communication and customer judgment<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Good combinations include:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Backend + distributed systems<\/li>\n\n\n\n<li>Full stack + product engineering<\/li>\n\n\n\n<li>DevOps + security<\/li>\n\n\n\n<li>Data engineering + AI evaluation<\/li>\n\n\n\n<li>ML engineering + enterprise integration<\/li>\n\n\n\n<li>Cloud architecture + AI applications<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">8. Assess Your Starting Point<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Before choosing a roadmap, identify your existing strengths and gaps.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Score yourself from zero to three.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>0:<\/strong> No meaningful experience<\/li>\n\n\n\n<li><strong>1:<\/strong> Basic understanding<\/li>\n\n\n\n<li><strong>2:<\/strong> Can work independently<\/li>\n\n\n\n<li><strong>3:<\/strong> Can lead or teach others<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Competency<\/th><th>Score<\/th><\/tr><\/thead><tbody><tr><td>Programming<\/td><td>0\u20133<\/td><\/tr><tr><td>API design<\/td><td>0\u20133<\/td><\/tr><tr><td>Databases and SQL<\/td><td>0\u20133<\/td><\/tr><tr><td>Frontend development<\/td><td>0\u20133<\/td><\/tr><tr><td>Testing<\/td><td>0\u20133<\/td><\/tr><tr><td>System design<\/td><td>0\u20133<\/td><\/tr><tr><td>Cloud infrastructure<\/td><td>0\u20133<\/td><\/tr><tr><td>Containers and Kubernetes<\/td><td>0\u20133<\/td><\/tr><tr><td>CI\/CD<\/td><td>0\u20133<\/td><\/tr><tr><td>Observability<\/td><td>0\u20133<\/td><\/tr><tr><td>Security and IAM<\/td><td>0\u20133<\/td><\/tr><tr><td>LLM applications<\/td><td>0\u20133<\/td><\/tr><tr><td>Retrieval and RAG<\/td><td>0\u20133<\/td><\/tr><tr><td>AI agents<\/td><td>0\u20133<\/td><\/tr><tr><td>AI evaluation<\/td><td>0\u20133<\/td><\/tr><tr><td>Customer discovery<\/td><td>0\u20133<\/td><\/tr><tr><td>Product prioritization<\/td><td>0\u20133<\/td><\/tr><tr><td>Stakeholder communication<\/td><td>0\u20133<\/td><\/tr><tr><td>Business metrics<\/td><td>0\u20133<\/td><\/tr><tr><td>Production incident response<\/td><td>0\u20133<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Interpret the Result<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Mostly 0\u20131<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Build your software-engineering and production foundation first.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Technical Areas 2\u20133, Customer Areas 0\u20131<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">You are a typical experienced SWE transition candidate.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Your main gap is likely:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Discovery<\/li>\n\n\n\n<li>Communication<\/li>\n\n\n\n<li>Adoption<\/li>\n\n\n\n<li>Product judgment<\/li>\n\n\n\n<li>Customer ownership<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Customer Areas 2\u20133, Coding Areas 0\u20131<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">You may come from consulting, solutions architecture, or sales engineering.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Your main gap is production coding and operational ownership.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">AI Areas 2\u20133, Production Areas 0\u20131<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">You may be able to build good AI demonstrations but not production systems.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Focus on:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>IAM<\/li>\n\n\n\n<li>Reliability<\/li>\n\n\n\n<li>CI\/CD<\/li>\n\n\n\n<li>Monitoring<\/li>\n\n\n\n<li>Failure recovery<\/li>\n\n\n\n<li>Cost control<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">9. The Roadmap at a Glance<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">The complete transition consists of eleven phases.<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"CSS\" data-shcb-language-slug=\"css\"><span><code class=\"hljs language-css\"><span class=\"hljs-selector-tag\">flowchart<\/span> <span class=\"hljs-selector-tag\">TD<\/span>\n    <span class=\"hljs-selector-tag\">A<\/span><span class=\"hljs-selector-attr\">&#91;1. Production SWE Foundation]<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">B<\/span><span class=\"hljs-selector-attr\">&#91;2. Full-Stack Delivery]<\/span>\n    <span class=\"hljs-selector-tag\">B<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">C<\/span><span class=\"hljs-selector-attr\">&#91;3. Data and Integrations]<\/span>\n    <span class=\"hljs-selector-tag\">C<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">D<\/span><span class=\"hljs-selector-attr\">&#91;4. Cloud and Production]<\/span>\n    <span class=\"hljs-selector-tag\">D<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">E<\/span><span class=\"hljs-selector-attr\">&#91;5. AI Application Engineering]<\/span>\n    <span class=\"hljs-selector-tag\">E<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">F<\/span><span class=\"hljs-selector-attr\">&#91;6. Evaluations]<\/span>\n    <span class=\"hljs-selector-tag\">F<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">G<\/span><span class=\"hljs-selector-attr\">&#91;7. Agent Engineering]<\/span>\n    <span class=\"hljs-selector-tag\">G<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">H<\/span><span class=\"hljs-selector-attr\">&#91;8. Security and Governance]<\/span>\n    <span class=\"hljs-selector-tag\">H<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">I<\/span><span class=\"hljs-selector-attr\">&#91;9. Customer Discovery]<\/span>\n    <span class=\"hljs-selector-tag\">I<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">J<\/span><span class=\"hljs-selector-attr\">&#91;10. Product Judgment]<\/span>\n    <span class=\"hljs-selector-tag\">J<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">K<\/span><span class=\"hljs-selector-attr\">&#91;11. Communication and Leadership]<\/span>\n    <span class=\"hljs-selector-tag\">K<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">L<\/span><span class=\"hljs-selector-attr\">&#91;FDE Portfolio and Interviews]<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">CSS<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">css<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p class=\"wp-block-paragraph\">These phases do not need to be completed in strict isolation.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A better method is:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Learn the concept.<\/li>\n\n\n\n<li>Apply it to a project.<\/li>\n\n\n\n<li>Deploy the project.<\/li>\n\n\n\n<li>Show it to users.<\/li>\n\n\n\n<li>Collect feedback.<\/li>\n\n\n\n<li>Improve it.<\/li>\n\n\n\n<li>Document the result.<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">10. Phase 1: Strengthen Production Software Engineering<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Strong customer skills cannot compensate for weak engineering fundamentals.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You must be able to build software that other people can depend on.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">10.1 Master One Primary Language<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Choose one primary language and become productive enough to solve unfamiliar problems.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Recommended choices:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Python<\/li>\n\n\n\n<li>TypeScript<\/li>\n\n\n\n<li>Java<\/li>\n\n\n\n<li>Go<\/li>\n\n\n\n<li>C#<\/li>\n\n\n\n<li>Kotlin<\/li>\n\n\n\n<li>Rust for specialized systems roles<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">For AI-focused FDE work, Python and TypeScript form a particularly useful combination.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Python Helps With<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>AI APIs<\/li>\n\n\n\n<li>Data processing<\/li>\n\n\n\n<li>Backend services<\/li>\n\n\n\n<li>Evaluation<\/li>\n\n\n\n<li>Automation<\/li>\n\n\n\n<li>Prototyping<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">TypeScript Helps With<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Web applications<\/li>\n\n\n\n<li>Frontend development<\/li>\n\n\n\n<li>Node.js services<\/li>\n\n\n\n<li>Type-safe API contracts<\/li>\n\n\n\n<li>Customer interfaces<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">10.2 Strengthen Core Concepts<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Learn:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Data structures<\/li>\n\n\n\n<li>Algorithms<\/li>\n\n\n\n<li>Asynchronous programming<\/li>\n\n\n\n<li>Concurrency<\/li>\n\n\n\n<li>Networking<\/li>\n\n\n\n<li>Error handling<\/li>\n\n\n\n<li>Object-oriented design<\/li>\n\n\n\n<li>Functional patterns<\/li>\n\n\n\n<li>Memory and performance basics<\/li>\n\n\n\n<li>Package management<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">10.3 Write Maintainable Code<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Practice:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Clear naming<\/li>\n\n\n\n<li>Type annotations<\/li>\n\n\n\n<li>Small modules<\/li>\n\n\n\n<li>Input validation<\/li>\n\n\n\n<li>Structured errors<\/li>\n\n\n\n<li>Dependency injection<\/li>\n\n\n\n<li>Configuration management<\/li>\n\n\n\n<li>Logging<\/li>\n\n\n\n<li>Unit tests<\/li>\n\n\n\n<li>Integration tests<\/li>\n\n\n\n<li>Code review<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">10.4 Learn Practical Debugging<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Develop a repeatable debugging method:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Reproduce the problem.<\/li>\n\n\n\n<li>Define expected behavior.<\/li>\n\n\n\n<li>Identify the failing boundary.<\/li>\n\n\n\n<li>Gather evidence.<\/li>\n\n\n\n<li>Form a hypothesis.<\/li>\n\n\n\n<li>Test the smallest change.<\/li>\n\n\n\n<li>Validate the fix.<\/li>\n\n\n\n<li>Add regression protection.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">10.5 Build Phase 1 Project<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Build a production-style API that includes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Authentication<\/li>\n\n\n\n<li>CRUD operations<\/li>\n\n\n\n<li>PostgreSQL<\/li>\n\n\n\n<li>Validation<\/li>\n\n\n\n<li>Structured logging<\/li>\n\n\n\n<li>Unit tests<\/li>\n\n\n\n<li>Integration tests<\/li>\n\n\n\n<li>API documentation<\/li>\n\n\n\n<li>Docker<\/li>\n\n\n\n<li>Error monitoring<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">This project is not yet an FDE portfolio project.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It establishes your engineering baseline.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">11. Phase 2: Become a Practical Full-Stack Builder<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">FDEs frequently need to build the complete workflow.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A backend service without a usable interface may not solve the customer\u2019s problem.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">11.1 Learn Frontend Fundamentals<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Understand:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>HTML<\/li>\n\n\n\n<li>CSS<\/li>\n\n\n\n<li>JavaScript<\/li>\n\n\n\n<li>TypeScript<\/li>\n\n\n\n<li>Component-based UI<\/li>\n\n\n\n<li>Forms<\/li>\n\n\n\n<li>Tables<\/li>\n\n\n\n<li>Authentication flows<\/li>\n\n\n\n<li>API calls<\/li>\n\n\n\n<li>Loading states<\/li>\n\n\n\n<li>Error states<\/li>\n\n\n\n<li>Accessibility<\/li>\n\n\n\n<li>Responsive design<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">React is useful, but the framework is less important than your ability to create a reliable interface.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">11.2 Learn Workflow-Oriented UI Design<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Enterprise interfaces usually need:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Search<\/li>\n\n\n\n<li>Filtering<\/li>\n\n\n\n<li>Review queues<\/li>\n\n\n\n<li>Status tracking<\/li>\n\n\n\n<li>Approval actions<\/li>\n\n\n\n<li>Audit history<\/li>\n\n\n\n<li>Evidence display<\/li>\n\n\n\n<li>User corrections<\/li>\n\n\n\n<li>Escalation paths<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">11.3 Design for Trust<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">AI interfaces should clearly show:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>What the AI produced<\/li>\n\n\n\n<li>Which sources it used<\/li>\n\n\n\n<li>What it is uncertain about<\/li>\n\n\n\n<li>Which action will occur<\/li>\n\n\n\n<li>Whether human approval is required<\/li>\n\n\n\n<li>How to correct the result<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">11.4 Build Phase 2 Project<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Turn your Phase 1 API into a full-stack workflow system.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Add:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>User login<\/li>\n\n\n\n<li>Dashboard<\/li>\n\n\n\n<li>Review queue<\/li>\n\n\n\n<li>Record details<\/li>\n\n\n\n<li>Approval and rejection<\/li>\n\n\n\n<li>Audit timeline<\/li>\n\n\n\n<li>Usage analytics<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The goal is not visual perfection.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The goal is functional workflow ownership.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">12. Phase 3: Master Enterprise Data and Integrations<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Most customer deployments are integration projects disguised as AI projects.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">12.1 Learn API Integration<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Understand:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>REST<\/li>\n\n\n\n<li>GraphQL<\/li>\n\n\n\n<li>Webhooks<\/li>\n\n\n\n<li>OAuth 2.0<\/li>\n\n\n\n<li>OpenID Connect<\/li>\n\n\n\n<li>API keys<\/li>\n\n\n\n<li>Service accounts<\/li>\n\n\n\n<li>Pagination<\/li>\n\n\n\n<li>Rate limits<\/li>\n\n\n\n<li>Retries<\/li>\n\n\n\n<li>Timeouts<\/li>\n\n\n\n<li>Idempotency<\/li>\n\n\n\n<li>Versioning<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">12.2 Learn Enterprise Identity<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Understand:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Single sign-on<\/li>\n\n\n\n<li>Identity federation<\/li>\n\n\n\n<li>SAML concepts<\/li>\n\n\n\n<li>Role-based access control<\/li>\n\n\n\n<li>Attribute-based access control<\/li>\n\n\n\n<li>Tenant isolation<\/li>\n\n\n\n<li>Workload identity<\/li>\n\n\n\n<li>Short-lived credentials<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">12.3 Learn Data Engineering Fundamentals<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Master:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>SQL<\/li>\n\n\n\n<li>Joins<\/li>\n\n\n\n<li>Indexes<\/li>\n\n\n\n<li>Transactions<\/li>\n\n\n\n<li>Data modeling<\/li>\n\n\n\n<li>Batch processing<\/li>\n\n\n\n<li>Streaming concepts<\/li>\n\n\n\n<li>Schema validation<\/li>\n\n\n\n<li>Data quality<\/li>\n\n\n\n<li>Data lineage<\/li>\n\n\n\n<li>Reconciliation<\/li>\n\n\n\n<li>Schema evolution<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">12.4 Design for Unreliable Dependencies<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Assume that:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>APIs will time out.<\/li>\n\n\n\n<li>Tokens will expire.<\/li>\n\n\n\n<li>Data will arrive late.<\/li>\n\n\n\n<li>Schemas will change.<\/li>\n\n\n\n<li>Duplicate records will occur.<\/li>\n\n\n\n<li>Customer systems will become unavailable.<\/li>\n\n\n\n<li>Rate limits may be unclear.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Resilient Integration Pattern<\/h2>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"CSS\" data-shcb-language-slug=\"css\"><span><code class=\"hljs language-css\"><span class=\"hljs-selector-tag\">flowchart<\/span> <span class=\"hljs-selector-tag\">LR<\/span>\n    <span class=\"hljs-selector-tag\">A<\/span><span class=\"hljs-selector-attr\">&#91;Customer System]<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">B<\/span><span class=\"hljs-selector-attr\">&#91;Adapter]<\/span>\n    <span class=\"hljs-selector-tag\">B<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">C<\/span><span class=\"hljs-selector-attr\">&#91;Schema Validation]<\/span>\n    <span class=\"hljs-selector-tag\">C<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">D<\/span><span class=\"hljs-selector-attr\">&#91;Queue]<\/span>\n    <span class=\"hljs-selector-tag\">D<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">E<\/span><span class=\"hljs-selector-attr\">&#91;Processing Service]<\/span>\n    <span class=\"hljs-selector-tag\">E<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">F<\/span><span class=\"hljs-selector-attr\">&#91;Target System]<\/span>\n    <span class=\"hljs-selector-tag\">E<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">G<\/span><span class=\"hljs-selector-attr\">&#91;Dead-Letter Queue]<\/span>\n    <span class=\"hljs-selector-tag\">E<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">H<\/span><span class=\"hljs-selector-attr\">&#91;Metrics]<\/span>\n    <span class=\"hljs-selector-tag\">E<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">I<\/span><span class=\"hljs-selector-attr\">&#91;Audit Log]<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">CSS<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">css<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\">12.5 Build Phase 3 Project<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Connect your application to two external systems.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Example:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>CRM<\/li>\n\n\n\n<li>Ticketing platform<\/li>\n\n\n\n<li>Document repository<\/li>\n\n\n\n<li>Cloud storage<\/li>\n\n\n\n<li>Public API<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Implement:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Authentication<\/li>\n\n\n\n<li>Retries<\/li>\n\n\n\n<li>Pagination<\/li>\n\n\n\n<li>Idempotency<\/li>\n\n\n\n<li>Error handling<\/li>\n\n\n\n<li>Synchronization status<\/li>\n\n\n\n<li>Reconciliation<\/li>\n\n\n\n<li>Alerting<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">13. Phase 4: Learn Cloud and Production Delivery<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">A prototype becomes useful only when it can be deployed, monitored, secured, and supported.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">13.1 Learn One Cloud Deeply<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Choose:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>AWS<\/li>\n\n\n\n<li>Microsoft Azure<\/li>\n\n\n\n<li>Google Cloud<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Learn equivalent concepts across:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Compute<\/li>\n\n\n\n<li>Networking<\/li>\n\n\n\n<li>Object storage<\/li>\n\n\n\n<li>Databases<\/li>\n\n\n\n<li>Queues<\/li>\n\n\n\n<li>Load balancers<\/li>\n\n\n\n<li>Identity<\/li>\n\n\n\n<li>Secrets<\/li>\n\n\n\n<li>Monitoring<\/li>\n\n\n\n<li>Serverless<\/li>\n\n\n\n<li>Container platforms<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">13.2 Learn Containers<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Understand:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Dockerfiles<\/li>\n\n\n\n<li>Image layers<\/li>\n\n\n\n<li>Registries<\/li>\n\n\n\n<li>Environment variables<\/li>\n\n\n\n<li>Volumes<\/li>\n\n\n\n<li>Health checks<\/li>\n\n\n\n<li>Multi-stage builds<\/li>\n\n\n\n<li>Non-root containers<\/li>\n\n\n\n<li>Image scanning<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">13.3 Learn Kubernetes Basics<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Understand:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Pods<\/li>\n\n\n\n<li>Deployments<\/li>\n\n\n\n<li>Services<\/li>\n\n\n\n<li>Ingress<\/li>\n\n\n\n<li>ConfigMaps<\/li>\n\n\n\n<li>Secrets<\/li>\n\n\n\n<li>Resource requests<\/li>\n\n\n\n<li>Resource limits<\/li>\n\n\n\n<li>Readiness probes<\/li>\n\n\n\n<li>Liveness probes<\/li>\n\n\n\n<li>Rolling deployment<\/li>\n\n\n\n<li>Autoscaling<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">You do not need Kubernetes for every project.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You should understand it because many enterprise deployments use it.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">13.4 Learn Infrastructure as Code<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Use:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Terraform<\/li>\n\n\n\n<li>Pulumi<\/li>\n\n\n\n<li>CloudFormation<\/li>\n\n\n\n<li>Bicep<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Learn:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>State management<\/li>\n\n\n\n<li>Modules<\/li>\n\n\n\n<li>Environment separation<\/li>\n\n\n\n<li>Change review<\/li>\n\n\n\n<li>Resource lifecycle<\/li>\n\n\n\n<li>Drift<\/li>\n\n\n\n<li>Secret handling<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">13.5 Learn CI\/CD<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Build pipelines that:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Run formatting and linting.<\/li>\n\n\n\n<li>Run tests.<\/li>\n\n\n\n<li>Scan dependencies.<\/li>\n\n\n\n<li>Build artifacts.<\/li>\n\n\n\n<li>Build container images.<\/li>\n\n\n\n<li>Deploy to test.<\/li>\n\n\n\n<li>Run integration checks.<\/li>\n\n\n\n<li>Require production approval.<\/li>\n\n\n\n<li>Record release versions.<\/li>\n\n\n\n<li>Support rollback.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">13.6 Learn Observability<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Understand the difference among:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Logs<\/li>\n\n\n\n<li>Metrics<\/li>\n\n\n\n<li>Traces<\/li>\n\n\n\n<li>Audit logs<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Monitor:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Availability<\/li>\n\n\n\n<li>Latency<\/li>\n\n\n\n<li>Error rate<\/li>\n\n\n\n<li>Queue depth<\/li>\n\n\n\n<li>Database performance<\/li>\n\n\n\n<li>Dependency failures<\/li>\n\n\n\n<li>Cost<\/li>\n\n\n\n<li>User activity<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">13.7 Build Phase 4 Project<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Deploy your application to the cloud with:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Infrastructure as code<\/li>\n\n\n\n<li>CI\/CD<\/li>\n\n\n\n<li>Managed secrets<\/li>\n\n\n\n<li>Separate environments<\/li>\n\n\n\n<li>Monitoring<\/li>\n\n\n\n<li>Alerts<\/li>\n\n\n\n<li>Backups<\/li>\n\n\n\n<li>Rollback instructions<\/li>\n\n\n\n<li>Operational runbook<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">14. Phase 5: Learn AI Application Engineering<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">You do not need to train a foundation model.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You must understand how to build dependable applications around one.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">14.1 Learn LLM Fundamentals<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Understand:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Tokens<\/li>\n\n\n\n<li>Context windows<\/li>\n\n\n\n<li>System instructions<\/li>\n\n\n\n<li>Structured output<\/li>\n\n\n\n<li>Tool calling<\/li>\n\n\n\n<li>Embeddings<\/li>\n\n\n\n<li>Sampling controls<\/li>\n\n\n\n<li>Latency<\/li>\n\n\n\n<li>Cost<\/li>\n\n\n\n<li>Model versions<\/li>\n\n\n\n<li>Hallucination<\/li>\n\n\n\n<li>Refusal behavior<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">14.2 Learn Prompt Design<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Effective prompts should define:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Role<\/li>\n\n\n\n<li>Task<\/li>\n\n\n\n<li>Context<\/li>\n\n\n\n<li>Constraints<\/li>\n\n\n\n<li>Output format<\/li>\n\n\n\n<li>Examples<\/li>\n\n\n\n<li>Failure behavior<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Do not treat prompting as magic.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Prompts are one layer of application design.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">14.3 Learn Structured Output<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Use schemas for outputs such as:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-4\" data-shcb-language-name=\"JSON \/ JSON with Comments\" data-shcb-language-slug=\"json\"><span><code class=\"hljs language-json\">{\n  <span class=\"hljs-attr\">\"category\"<\/span>: <span class=\"hljs-string\">\"refund_request\"<\/span>,\n  <span class=\"hljs-attr\">\"confidence\"<\/span>: <span class=\"hljs-number\">0.87<\/span>,\n  <span class=\"hljs-attr\">\"order_id\"<\/span>: <span class=\"hljs-string\">\"ORD-12345\"<\/span>,\n  <span class=\"hljs-attr\">\"recommended_action\"<\/span>: <span class=\"hljs-string\">\"human_review\"<\/span>,\n  <span class=\"hljs-attr\">\"reason\"<\/span>: <span class=\"hljs-string\">\"Refund exceeds automatic approval threshold\"<\/span>\n}\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-4\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JSON \/ JSON with Comments<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">json<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p class=\"wp-block-paragraph\">Validate model output before using it.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">14.4 Learn Retrieval-Augmented Generation<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A RAG system retrieves relevant information before generating an answer.<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-5\" data-shcb-language-name=\"CSS\" data-shcb-language-slug=\"css\"><span><code class=\"hljs language-css\"><span class=\"hljs-selector-tag\">flowchart<\/span> <span class=\"hljs-selector-tag\">LR<\/span>\n    <span class=\"hljs-selector-tag\">A<\/span><span class=\"hljs-selector-attr\">&#91;Enterprise Documents]<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">B<\/span><span class=\"hljs-selector-attr\">&#91;Parse and Normalize]<\/span>\n    <span class=\"hljs-selector-tag\">B<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">C<\/span><span class=\"hljs-selector-attr\">&#91;Chunk and Index]<\/span>\n    <span class=\"hljs-selector-tag\">D<\/span><span class=\"hljs-selector-attr\">&#91;User Question]<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">E<\/span><span class=\"hljs-selector-attr\">&#91;Query Processing]<\/span>\n    <span class=\"hljs-selector-tag\">E<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">F<\/span><span class=\"hljs-selector-attr\">&#91;Permission-Aware Retrieval]<\/span>\n    <span class=\"hljs-selector-tag\">C<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">F<\/span>\n    <span class=\"hljs-selector-tag\">F<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">G<\/span><span class=\"hljs-selector-attr\">&#91;Reranking]<\/span>\n    <span class=\"hljs-selector-tag\">G<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">H<\/span><span class=\"hljs-selector-attr\">&#91;Model]<\/span>\n    <span class=\"hljs-selector-tag\">D<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">H<\/span>\n    <span class=\"hljs-selector-tag\">H<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">I<\/span><span class=\"hljs-selector-attr\">&#91;Answer With Sources]<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-5\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">CSS<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">css<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p class=\"wp-block-paragraph\">Learn:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Parsing<\/li>\n\n\n\n<li>Chunking<\/li>\n\n\n\n<li>Embeddings<\/li>\n\n\n\n<li>Vector search<\/li>\n\n\n\n<li>Keyword search<\/li>\n\n\n\n<li>Hybrid search<\/li>\n\n\n\n<li>Metadata<\/li>\n\n\n\n<li>Reranking<\/li>\n\n\n\n<li>Permission filtering<\/li>\n\n\n\n<li>Citations<\/li>\n\n\n\n<li>Retrieval evaluation<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">14.5 Build Phase 5 Project<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Add an AI assistant to your application.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The assistant should:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Retrieve authorized information<\/li>\n\n\n\n<li>Produce structured output<\/li>\n\n\n\n<li>Show evidence<\/li>\n\n\n\n<li>Handle missing information<\/li>\n\n\n\n<li>Refuse unsupported actions<\/li>\n\n\n\n<li>Record latency and cost<\/li>\n\n\n\n<li>Capture user feedback<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">15. Phase 6: Master AI Evaluations<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Evaluation is one of the most valuable skills separating an AI demonstration from an AI production system.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">15.1 What Is an Evaluation?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">An evaluation tests whether an AI system behaves correctly for the actual task.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It may measure:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Correctness<\/li>\n\n\n\n<li>Groundedness<\/li>\n\n\n\n<li>Relevance<\/li>\n\n\n\n<li>Policy compliance<\/li>\n\n\n\n<li>Tool selection<\/li>\n\n\n\n<li>Tool arguments<\/li>\n\n\n\n<li>Refusal<\/li>\n\n\n\n<li>Escalation<\/li>\n\n\n\n<li>Tone<\/li>\n\n\n\n<li>Latency<\/li>\n\n\n\n<li>Cost<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">15.2 Build an Evaluation Dataset<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Include:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Common cases<\/li>\n\n\n\n<li>Important edge cases<\/li>\n\n\n\n<li>Historical failures<\/li>\n\n\n\n<li>Ambiguous requests<\/li>\n\n\n\n<li>Adversarial inputs<\/li>\n\n\n\n<li>Cases requiring refusal<\/li>\n\n\n\n<li>Cases requiring human review<\/li>\n\n\n\n<li>Different user groups<\/li>\n\n\n\n<li>Different languages when required<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">15.3 Separate Evaluation Layers<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Layer<\/th><th>Example Question<\/th><\/tr><\/thead><tbody><tr><td>Retrieval<\/td><td>Did the system retrieve the correct policy?<\/td><\/tr><tr><td>Model<\/td><td>Did the answer correctly use the policy?<\/td><\/tr><tr><td>Tool use<\/td><td>Did the model select the right API?<\/td><\/tr><tr><td>Workflow<\/td><td>Was the customer case completed correctly?<\/td><\/tr><tr><td>Safety<\/td><td>Did the system avoid an unauthorized action?<\/td><\/tr><tr><td>Adoption<\/td><td>Did the user accept the output?<\/td><\/tr><tr><td>Business<\/td><td>Did handling time improve?<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">15.4 Run Regression Evaluation<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Every meaningful change should be tested against known cases.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Changes include:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Prompt<\/li>\n\n\n\n<li>Model<\/li>\n\n\n\n<li>Retrieval<\/li>\n\n\n\n<li>Tool definitions<\/li>\n\n\n\n<li>Workflow logic<\/li>\n\n\n\n<li>Document version<\/li>\n\n\n\n<li>Output schema<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">15.5 Perform Error Analysis<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Do not look only at the average score.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Classify failures:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Missing context<\/li>\n\n\n\n<li>Incorrect retrieval<\/li>\n\n\n\n<li>Reasoning error<\/li>\n\n\n\n<li>Tool error<\/li>\n\n\n\n<li>Permission error<\/li>\n\n\n\n<li>Formatting error<\/li>\n\n\n\n<li>Unsupported claim<\/li>\n\n\n\n<li>Incorrect escalation<\/li>\n\n\n\n<li>User-interface problem<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">15.6 Build Phase 6 Project<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Create an evaluation dashboard containing:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Dataset version<\/li>\n\n\n\n<li>Prompt version<\/li>\n\n\n\n<li>Model version<\/li>\n\n\n\n<li>Aggregate score<\/li>\n\n\n\n<li>Score by category<\/li>\n\n\n\n<li>Failure examples<\/li>\n\n\n\n<li>Cost<\/li>\n\n\n\n<li>Latency<\/li>\n\n\n\n<li>Regression status<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">16. Phase 7: Learn Agent Engineering<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">A chatbot answers questions.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">An agent may decide and act.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Basic Agent Loop<\/h2>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-6\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">flowchart TD\n    A&#91;User Goal] --&gt; B&#91;Agent Planning]\n    B --&gt; C&#91;Choose Tool]\n    C --&gt; D&#91;Validate Request]\n    D --&gt; E&#91;Execute Tool]\n    E --&gt; F&#91;Observe Result]\n    F --&gt; G{Task Complete?}\n    G --&gt;|No| B\n    G --&gt;|Yes| H&#91;<span class=\"hljs-keyword\">Return<\/span> Outcome]\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-6\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\">16.1 Learn Tool Design<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A good tool should have:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Clear purpose<\/li>\n\n\n\n<li>Narrow responsibility<\/li>\n\n\n\n<li>Typed inputs<\/li>\n\n\n\n<li>Validated arguments<\/li>\n\n\n\n<li>Predictable outputs<\/li>\n\n\n\n<li>Explicit errors<\/li>\n\n\n\n<li>Least-privilege permissions<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">16.2 Learn Agent State<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Understand:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Conversation state<\/li>\n\n\n\n<li>Workflow state<\/li>\n\n\n\n<li>Checkpoints<\/li>\n\n\n\n<li>Long-running tasks<\/li>\n\n\n\n<li>Retries<\/li>\n\n\n\n<li>Timeouts<\/li>\n\n\n\n<li>Cancellation<\/li>\n\n\n\n<li>Resumption<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">16.3 Learn Human Approval<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Require approval for:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Financial transactions<\/li>\n\n\n\n<li>External communication<\/li>\n\n\n\n<li>Data deletion<\/li>\n\n\n\n<li>Infrastructure changes<\/li>\n\n\n\n<li>Legal or regulated actions<\/li>\n\n\n\n<li>High-impact account modifications<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">16.4 Learn Agent Evaluation<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Test:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Plan quality<\/li>\n\n\n\n<li>Tool selection<\/li>\n\n\n\n<li>Argument correctness<\/li>\n\n\n\n<li>Completion<\/li>\n\n\n\n<li>Recovery from tool failure<\/li>\n\n\n\n<li>Loop prevention<\/li>\n\n\n\n<li>Security boundaries<\/li>\n\n\n\n<li>Cost<\/li>\n\n\n\n<li>Latency<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">16.5 Build Phase 7 Project<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Create a controlled agent that:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Receives a business task<\/li>\n\n\n\n<li>Retrieves relevant data<\/li>\n\n\n\n<li>Calls approved read-only tools<\/li>\n\n\n\n<li>Proposes an action<\/li>\n\n\n\n<li>Requests approval<\/li>\n\n\n\n<li>Executes only after approval<\/li>\n\n\n\n<li>Verifies the result<\/li>\n\n\n\n<li>Records an audit event<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">17. Phase 8: Develop Security and Governance Skills<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Customer-facing AI engineers often work with sensitive systems.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Security must shape the architecture from the beginning.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">17.1 Learn the Core Questions<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">For every system, ask:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Who is the user?<\/li>\n\n\n\n<li>Which data may they access?<\/li>\n\n\n\n<li>Which identity calls the tool?<\/li>\n\n\n\n<li>Which actions may the AI perform?<\/li>\n\n\n\n<li>Which actions require approval?<\/li>\n\n\n\n<li>Where is data stored?<\/li>\n\n\n\n<li>How long is it retained?<\/li>\n\n\n\n<li>How is activity audited?<\/li>\n\n\n\n<li>How can access be revoked?<\/li>\n\n\n\n<li>How can the feature be disabled?<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">17.2 Apply Least Privilege<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">An AI agent should not receive broad administrative credentials.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Use:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>User-level authorization<\/li>\n\n\n\n<li>Separate read and write tools<\/li>\n\n\n\n<li>Short-lived tokens<\/li>\n\n\n\n<li>Narrow service accounts<\/li>\n\n\n\n<li>Action allowlists<\/li>\n\n\n\n<li>Spending limits<\/li>\n\n\n\n<li>Rate limits<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">17.3 Understand Prompt Injection<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Retrieved documents and user input may contain instructions intended to manipulate the AI system.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Defenses include:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Treating retrieved content as untrusted data<\/li>\n\n\n\n<li>Separating system policy from external content<\/li>\n\n\n\n<li>Restricting tools<\/li>\n\n\n\n<li>Validating arguments<\/li>\n\n\n\n<li>Requiring approval<\/li>\n\n\n\n<li>Applying authorization outside the model<\/li>\n\n\n\n<li>Testing adversarial cases<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">17.4 Learn Auditability<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Record:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>User<\/li>\n\n\n\n<li>Request<\/li>\n\n\n\n<li>Model and prompt version<\/li>\n\n\n\n<li>Retrieved sources<\/li>\n\n\n\n<li>Tool call<\/li>\n\n\n\n<li>Tool arguments<\/li>\n\n\n\n<li>Approval<\/li>\n\n\n\n<li>Result<\/li>\n\n\n\n<li>Timestamp<\/li>\n\n\n\n<li>Error<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">17.5 Learn Governance Basics<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Understand:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Data classification<\/li>\n\n\n\n<li>Model approval<\/li>\n\n\n\n<li>Evaluation sign-off<\/li>\n\n\n\n<li>Human oversight<\/li>\n\n\n\n<li>Change control<\/li>\n\n\n\n<li>Incident response<\/li>\n\n\n\n<li>Retention<\/li>\n\n\n\n<li>Regional requirements<\/li>\n\n\n\n<li>Legal and compliance ownership<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">17.6 Build Phase 8 Project<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Add:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Role-based access<\/li>\n\n\n\n<li>Tenant isolation<\/li>\n\n\n\n<li>Audit logs<\/li>\n\n\n\n<li>Tool permissions<\/li>\n\n\n\n<li>Approval policy<\/li>\n\n\n\n<li>Rate limits<\/li>\n\n\n\n<li>Emergency kill switch<\/li>\n\n\n\n<li>Threat model<\/li>\n\n\n\n<li>Security test cases<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">18. Phase 9: Learn Customer Discovery<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">This phase is where many experienced SWEs need the most practice.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">18.1 Do Not Begin With Technology<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">When a customer says:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">\u201cWe need an AI agent.\u201d<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">Do not answer:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">\u201cWe should use a multi-agent architecture with a vector database.\u201d<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">Start with the problem.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Use the SCOPE Framework<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">S \u2014 Success<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">What measurable outcome must improve?<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">C \u2014 Current Workflow<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">How is the work done today?<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">O \u2014 Owners and Users<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Who performs, approves, operates, and funds the workflow?<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">P \u2014 Problems and Constraints<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">What prevents improvement?<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">E \u2014 Evidence<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">What will prove that the solution worked?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">18.2 Ask Better Questions<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Business Questions<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Why is this problem important now?<\/li>\n\n\n\n<li>What is the current cost?<\/li>\n\n\n\n<li>What happens when the process fails?<\/li>\n\n\n\n<li>Which outcome matters most?<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">User Questions<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Who performs the task?<\/li>\n\n\n\n<li>How frequently?<\/li>\n\n\n\n<li>Which step is hardest?<\/li>\n\n\n\n<li>What workaround is used today?<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Technical Questions<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Which systems are involved?<\/li>\n\n\n\n<li>Which data is available?<\/li>\n\n\n\n<li>How is access controlled?<\/li>\n\n\n\n<li>What scale and latency are required?<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Risk Questions<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Which mistakes are unacceptable?<\/li>\n\n\n\n<li>Which actions require human approval?<\/li>\n\n\n\n<li>Which regulations apply?<\/li>\n\n\n\n<li>What must never be automated?<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Measurement Questions<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>What is the current baseline?<\/li>\n\n\n\n<li>What improvement would justify deployment?<\/li>\n\n\n\n<li>Who approves the success criteria?<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">18.3 Observe the Workflow<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Do not rely only on interviews.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Watch users perform the task.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Look for:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Copy-and-paste work<\/li>\n\n\n\n<li>Spreadsheet tracking<\/li>\n\n\n\n<li>Manual reconciliation<\/li>\n\n\n\n<li>Repeated searches<\/li>\n\n\n\n<li>Approval delays<\/li>\n\n\n\n<li>Missing information<\/li>\n\n\n\n<li>Unofficial workarounds<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">18.4 Write a Problem Statement<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Use this format:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">[User group] needs to [perform task] because [business reason]. Today, the process takes [baseline] and fails because [main problem]. A successful solution will improve [metric] without increasing [risk].<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">Example<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Support agents need to resolve refund requests quickly because response delay lowers customer satisfaction. The current workflow takes an average of eight minutes because agents search across three systems. A successful solution will reduce median handling time below four minutes without increasing incorrect refund approvals.<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">19. Phase 10: Build Product and Business Judgment<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">FDEs must decide what to build, what not to build, and what to build first.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">19.1 Use the VALUE Framework<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">V \u2014 Value<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">How important is the customer outcome?<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">A \u2014 Adoption<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Will users incorporate the system into their workflow?<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">L \u2014 Level of Effort<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">What is the implementation and maintenance cost?<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">U \u2014 Uncertainty<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Which assumptions remain untested?<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">E \u2014 Exposure<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">What operational, security, or compliance risk exists?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">19.2 Learn Scope Reduction<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The customer may request:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Ten integrations<\/li>\n\n\n\n<li>Full automation<\/li>\n\n\n\n<li>Every user group<\/li>\n\n\n\n<li>Global rollout<\/li>\n\n\n\n<li>Real-time processing<\/li>\n\n\n\n<li>Advanced analytics<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The first release may need only:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>One integration<\/li>\n\n\n\n<li>One user group<\/li>\n\n\n\n<li>Human approval<\/li>\n\n\n\n<li>One workflow category<\/li>\n\n\n\n<li>One region<\/li>\n\n\n\n<li>Daily processing<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">19.3 Define the Smallest Valuable Workflow<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A good MVP is not the smallest amount of code.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It is the smallest end-to-end system that proves value.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">19.4 Distinguish Customization From Productization<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Use three layers:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-7\" data-shcb-language-name=\"CSS\" data-shcb-language-slug=\"css\"><span><code class=\"hljs language-css\"><span class=\"hljs-selector-tag\">flowchart<\/span> <span class=\"hljs-selector-tag\">TD<\/span>\n    <span class=\"hljs-selector-tag\">A<\/span><span class=\"hljs-selector-attr\">&#91;Core Platform]<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">B<\/span><span class=\"hljs-selector-attr\">&#91;Reusable Workflow Components]<\/span>\n    <span class=\"hljs-selector-tag\">B<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">C<\/span><span class=\"hljs-selector-attr\">&#91;Customer Configuration and Adapters]<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-7\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">CSS<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">css<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h3 class=\"wp-block-heading\">Core Platform<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Authentication<\/li>\n\n\n\n<li>Agent execution<\/li>\n\n\n\n<li>Evaluation<\/li>\n\n\n\n<li>Monitoring<\/li>\n\n\n\n<li>Audit framework<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Reusable Workflow<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Support review<\/li>\n\n\n\n<li>Claims processing<\/li>\n\n\n\n<li>Document analysis<\/li>\n\n\n\n<li>Approval queue<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Customer-Specific Layer<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Proprietary API<\/li>\n\n\n\n<li>Local policy<\/li>\n\n\n\n<li>User roles<\/li>\n\n\n\n<li>Business rules<\/li>\n\n\n\n<li>Branding<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">19.5 Define Success at Four Levels<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Level<\/th><th>Example<\/th><\/tr><\/thead><tbody><tr><td>Technical<\/td><td>99.9% availability<\/td><\/tr><tr><td>AI quality<\/td><td>95% correct policy retrieval<\/td><\/tr><tr><td>Adoption<\/td><td>70% weekly active use<\/td><\/tr><tr><td>Business<\/td><td>40% reduction in handling time<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">20. Phase 11: Improve Communication and Leadership<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">An FDE explains the same project to different audiences.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">To an Engineer<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Explain:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Interfaces<\/li>\n\n\n\n<li>Data flow<\/li>\n\n\n\n<li>Dependencies<\/li>\n\n\n\n<li>Failure modes<\/li>\n\n\n\n<li>Deployment<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">To a Security Team<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Explain:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Data access<\/li>\n\n\n\n<li>Identity<\/li>\n\n\n\n<li>Permissions<\/li>\n\n\n\n<li>Threats<\/li>\n\n\n\n<li>Audit<\/li>\n\n\n\n<li>Recovery<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">To an Executive<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Explain:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Outcome<\/li>\n\n\n\n<li>Progress<\/li>\n\n\n\n<li>Risk<\/li>\n\n\n\n<li>Decision required<\/li>\n\n\n\n<li>Next milestone<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">20.1 Practice Executive Updates<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Use this format:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Outcome<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">What are we trying to improve?<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Status<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">What has been completed?<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Evidence<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">What have we learned?<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Risk<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">What may block success?<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Decision<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">What is needed from leadership?<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Next Step<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">What happens next?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Example<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">The pilot is now used by 12 support agents and has reduced median handling time by 28%, against a target of 40%. The largest remaining delay is the order-history integration rather than model performance. We recommend prioritizing that integration before expanding to additional teams.<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">20.2 Practice Technical Writing<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Write:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Architecture documents<\/li>\n\n\n\n<li>Decision records<\/li>\n\n\n\n<li>Project plans<\/li>\n\n\n\n<li>Risk registers<\/li>\n\n\n\n<li>Runbooks<\/li>\n\n\n\n<li>Incident reports<\/li>\n\n\n\n<li>Deployment guides<\/li>\n\n\n\n<li>Executive summaries<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">20.3 Learn to Disagree<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Use this structure:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Confirm the desired outcome.<\/li>\n\n\n\n<li>Explain the risk.<\/li>\n\n\n\n<li>Provide evidence.<\/li>\n\n\n\n<li>Propose an alternative.<\/li>\n\n\n\n<li>Define a path toward the original goal.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">20.4 Learn to Facilitate Meetings<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A productive technical meeting should end with:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Decision<\/li>\n\n\n\n<li>Owner<\/li>\n\n\n\n<li>Deadline<\/li>\n\n\n\n<li>Open risk<\/li>\n\n\n\n<li>Next action<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">21. The FDE Portfolio Project Ladder<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Your portfolio should show progressive ownership.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Do not build five nearly identical chatbots.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Build a ladder.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Project 1: Production API<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Demonstrates:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Backend engineering<\/li>\n\n\n\n<li>SQL<\/li>\n\n\n\n<li>Testing<\/li>\n\n\n\n<li>Authentication<\/li>\n\n\n\n<li>Deployment<\/li>\n\n\n\n<li>Monitoring<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Project 2: Enterprise Integration Workflow<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Demonstrates:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>External APIs<\/li>\n\n\n\n<li>OAuth<\/li>\n\n\n\n<li>Webhooks<\/li>\n\n\n\n<li>Queues<\/li>\n\n\n\n<li>Retries<\/li>\n\n\n\n<li>Reconciliation<\/li>\n\n\n\n<li>Audit<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Project 3: Permission-Aware AI Assistant<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Demonstrates:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>RAG<\/li>\n\n\n\n<li>Authentication<\/li>\n\n\n\n<li>Authorization<\/li>\n\n\n\n<li>Citations<\/li>\n\n\n\n<li>Evaluation<\/li>\n\n\n\n<li>Feedback<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Project 4: Human-Governed AI Agent<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Demonstrates:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Tool calling<\/li>\n\n\n\n<li>Workflow state<\/li>\n\n\n\n<li>Approval<\/li>\n\n\n\n<li>Idempotency<\/li>\n\n\n\n<li>Audit<\/li>\n\n\n\n<li>Security<\/li>\n\n\n\n<li>Agent evaluation<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Project 5: Real Customer Deployment<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Demonstrates:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Discovery<\/li>\n\n\n\n<li>Scope<\/li>\n\n\n\n<li>Stakeholders<\/li>\n\n\n\n<li>Production delivery<\/li>\n\n\n\n<li>Adoption<\/li>\n\n\n\n<li>Business outcome<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">What Every Portfolio Project Should Include<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Problem statement<\/li>\n\n\n\n<li>Target user<\/li>\n\n\n\n<li>Current workflow<\/li>\n\n\n\n<li>Success metrics<\/li>\n\n\n\n<li>Architecture diagram<\/li>\n\n\n\n<li>Data flow<\/li>\n\n\n\n<li>Security model<\/li>\n\n\n\n<li>Evaluation strategy<\/li>\n\n\n\n<li>Deployment process<\/li>\n\n\n\n<li>Screenshots<\/li>\n\n\n\n<li>Monitoring<\/li>\n\n\n\n<li>Failure modes<\/li>\n\n\n\n<li>Known limitations<\/li>\n\n\n\n<li>Future roadmap<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">22. The Gold-Standard FDE Capstone Project<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Build an <strong>AI-Powered Customer Operations Platform<\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Business Problem<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Support agents spend too much time gathering information from multiple systems before responding to customers.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Target Outcome<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Reduce median case-handling time by 40% without increasing incorrect actions.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Core Capabilities<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Case ingestion<\/li>\n\n\n\n<li>User authentication<\/li>\n\n\n\n<li>Customer lookup<\/li>\n\n\n\n<li>Order-history integration<\/li>\n\n\n\n<li>Policy retrieval<\/li>\n\n\n\n<li>Case classification<\/li>\n\n\n\n<li>Draft response<\/li>\n\n\n\n<li>Recommended action<\/li>\n\n\n\n<li>Human approval<\/li>\n\n\n\n<li>Escalation<\/li>\n\n\n\n<li>Audit log<\/li>\n\n\n\n<li>Evaluation dashboard<\/li>\n\n\n\n<li>Cost and latency monitoring<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Architecture<\/h2>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-8\" data-shcb-language-name=\"CSS\" data-shcb-language-slug=\"css\"><span><code class=\"hljs language-css\"><span class=\"hljs-selector-tag\">flowchart<\/span> <span class=\"hljs-selector-tag\">TD<\/span>\n    <span class=\"hljs-selector-tag\">A<\/span><span class=\"hljs-selector-attr\">&#91;Support Platform]<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">B<\/span><span class=\"hljs-selector-attr\">&#91;Case Ingestion API]<\/span>\n    <span class=\"hljs-selector-tag\">B<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">C<\/span><span class=\"hljs-selector-attr\">&#91;Workflow Orchestrator]<\/span>\n\n    <span class=\"hljs-selector-tag\">C<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">D<\/span><span class=\"hljs-selector-attr\">&#91;Customer Adapter]<\/span>\n    <span class=\"hljs-selector-tag\">C<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">E<\/span><span class=\"hljs-selector-attr\">&#91;Order Adapter]<\/span>\n    <span class=\"hljs-selector-tag\">C<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">F<\/span><span class=\"hljs-selector-attr\">&#91;Policy Retrieval]<\/span>\n    <span class=\"hljs-selector-tag\">C<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">G<\/span><span class=\"hljs-selector-attr\">&#91;AI Service]<\/span>\n\n    <span class=\"hljs-selector-tag\">F<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">H<\/span><span class=\"hljs-selector-attr\">&#91;Authorized Knowledge Index]<\/span>\n    <span class=\"hljs-selector-tag\">G<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">I<\/span><span class=\"hljs-selector-attr\">&#91;Model]<\/span>\n    <span class=\"hljs-selector-tag\">G<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">J<\/span><span class=\"hljs-selector-attr\">&#91;Tool Gateway]<\/span>\n\n    <span class=\"hljs-selector-tag\">C<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">K<\/span><span class=\"hljs-selector-attr\">&#91;Agent Review Interface]<\/span>\n    <span class=\"hljs-selector-tag\">K<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">L<\/span><span class=\"hljs-selector-attr\">&#91;Human Approval]<\/span>\n    <span class=\"hljs-selector-tag\">L<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">M<\/span><span class=\"hljs-selector-attr\">&#91;Action Executor]<\/span>\n\n    <span class=\"hljs-selector-tag\">C<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">N<\/span><span class=\"hljs-selector-attr\">&#91;Audit Store]<\/span>\n    <span class=\"hljs-selector-tag\">C<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">O<\/span><span class=\"hljs-selector-attr\">&#91;Evaluation Platform]<\/span>\n    <span class=\"hljs-selector-tag\">C<\/span> <span class=\"hljs-selector-tag\">--<\/span>&gt; <span class=\"hljs-selector-tag\">P<\/span><span class=\"hljs-selector-attr\">&#91;Monitoring]<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-8\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">CSS<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">css<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\">Customer Discovery Deliverables<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Create:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>User persona<\/li>\n\n\n\n<li>Current workflow<\/li>\n\n\n\n<li>Pain-point map<\/li>\n\n\n\n<li>Baseline metrics<\/li>\n\n\n\n<li>Risk analysis<\/li>\n\n\n\n<li>Stakeholder map<\/li>\n\n\n\n<li>Success criteria<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Engineering Deliverables<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Create:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Frontend<\/li>\n\n\n\n<li>Backend<\/li>\n\n\n\n<li>Database<\/li>\n\n\n\n<li>API adapters<\/li>\n\n\n\n<li>Authentication<\/li>\n\n\n\n<li>Infrastructure as code<\/li>\n\n\n\n<li>CI\/CD<\/li>\n\n\n\n<li>Monitoring<\/li>\n\n\n\n<li>Tests<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">AI Deliverables<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Create:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Prompt versions<\/li>\n\n\n\n<li>Retrieval pipeline<\/li>\n\n\n\n<li>Structured outputs<\/li>\n\n\n\n<li>Evaluation dataset<\/li>\n\n\n\n<li>Error taxonomy<\/li>\n\n\n\n<li>Tool-calling policy<\/li>\n\n\n\n<li>Regression testing<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Security Deliverables<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Create:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Threat model<\/li>\n\n\n\n<li>Role model<\/li>\n\n\n\n<li>Permission boundaries<\/li>\n\n\n\n<li>Audit events<\/li>\n\n\n\n<li>Secret-management plan<\/li>\n\n\n\n<li>Data-retention plan<\/li>\n\n\n\n<li>Kill switch<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Rollout Plan<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Offline evaluation<\/li>\n\n\n\n<li>Synthetic-data demonstration<\/li>\n\n\n\n<li>Shadow processing<\/li>\n\n\n\n<li>Five-user pilot<\/li>\n\n\n\n<li>Human approval for every action<\/li>\n\n\n\n<li>Limited automatic actions<\/li>\n\n\n\n<li>Broader rollout after quality threshold<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">Executive Summary<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Prepare a one-page summary covering:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Problem<\/li>\n\n\n\n<li>Proposed solution<\/li>\n\n\n\n<li>Expected value<\/li>\n\n\n\n<li>Main risk<\/li>\n\n\n\n<li>Pilot scope<\/li>\n\n\n\n<li>Success criteria<\/li>\n\n\n\n<li>Investment required<\/li>\n\n\n\n<li>Next decision<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">A project like this demonstrates far more FDE readiness than a simple question-answer chatbot.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">23. How to Gain Customer-Facing Experience<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">You do not need the FDE title before building customer-facing evidence.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">23.1 Treat an Internal Team as a Customer<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Help:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Finance<\/li>\n\n\n\n<li>Support<\/li>\n\n\n\n<li>Security<\/li>\n\n\n\n<li>Operations<\/li>\n\n\n\n<li>HR<\/li>\n\n\n\n<li>Engineering productivity<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Follow a real engagement process:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Conduct discovery.<\/li>\n\n\n\n<li>Map the workflow.<\/li>\n\n\n\n<li>Establish a baseline.<\/li>\n\n\n\n<li>Agree on scope.<\/li>\n\n\n\n<li>Build a pilot.<\/li>\n\n\n\n<li>Measure usage.<\/li>\n\n\n\n<li>Document results.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">23.2 Volunteer for Customer Escalations<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">In your current SWE role, join:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Technical support calls<\/li>\n\n\n\n<li>Architecture workshops<\/li>\n\n\n\n<li>Customer incidents<\/li>\n\n\n\n<li>Proofs of concept<\/li>\n\n\n\n<li>Onboarding projects<\/li>\n\n\n\n<li>Integration discussions<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">23.3 Work With a Small Business<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Potential projects include:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Support automation<\/li>\n\n\n\n<li>Document processing<\/li>\n\n\n\n<li>Inventory reporting<\/li>\n\n\n\n<li>CRM integration<\/li>\n\n\n\n<li>Cloud-cost analysis<\/li>\n\n\n\n<li>Scheduling automation<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Protect customer data and define ownership clearly.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">23.4 Contribute to Open Source<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Focus on:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Integrations<\/li>\n\n\n\n<li>Deployment templates<\/li>\n\n\n\n<li>Security<\/li>\n\n\n\n<li>Documentation<\/li>\n\n\n\n<li>Observability<\/li>\n\n\n\n<li>Issue diagnosis<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">23.5 Teach and Present<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Run:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Technical workshops<\/li>\n\n\n\n<li>Architecture reviews<\/li>\n\n\n\n<li>Internal demonstrations<\/li>\n\n\n\n<li>User training<\/li>\n\n\n\n<li>Community talks<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Teaching exposes gaps in your communication.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">23.6 Shadow Non-Engineering Teams<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Observe:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Sales<\/li>\n\n\n\n<li>Customer success<\/li>\n\n\n\n<li>Support<\/li>\n\n\n\n<li>Product management<\/li>\n\n\n\n<li>Professional services<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Understand how customer problems enter and move through the organization.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">24. Transition Paths for Different SWE Backgrounds<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">Backend Engineer<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Existing Strengths<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>APIs<\/li>\n\n\n\n<li>Databases<\/li>\n\n\n\n<li>Business logic<\/li>\n\n\n\n<li>Distributed systems<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Main Gaps<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Frontend<\/li>\n\n\n\n<li>Customer discovery<\/li>\n\n\n\n<li>Adoption<\/li>\n\n\n\n<li>AI evaluation<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Best Next Project<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Build a full-stack AI workflow with a human review interface.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Full-Stack Engineer<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Existing Strengths<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>End-to-end product delivery<\/li>\n\n\n\n<li>User interfaces<\/li>\n\n\n\n<li>APIs<\/li>\n\n\n\n<li>Workflow design<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Main Gaps<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cloud depth<\/li>\n\n\n\n<li>Security<\/li>\n\n\n\n<li>Data pipelines<\/li>\n\n\n\n<li>AI evaluation<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Best Next Project<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Build a permission-aware enterprise knowledge and action system.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">DevOps Engineer or SRE<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Existing Strengths<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Production<\/li>\n\n\n\n<li>Reliability<\/li>\n\n\n\n<li>Cloud<\/li>\n\n\n\n<li>Observability<\/li>\n\n\n\n<li>Incidents<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Main Gaps<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Application development<\/li>\n\n\n\n<li>Frontend<\/li>\n\n\n\n<li>Customer workflow<\/li>\n\n\n\n<li>AI behavior<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Best Next Project<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Build and operate an AI agent platform with approval and monitoring.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Data Engineer<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Existing Strengths<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>SQL<\/li>\n\n\n\n<li>Pipelines<\/li>\n\n\n\n<li>Data quality<\/li>\n\n\n\n<li>Warehouses<\/li>\n\n\n\n<li>Streaming<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Main Gaps<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Frontend<\/li>\n\n\n\n<li>Product experience<\/li>\n\n\n\n<li>Customer discovery<\/li>\n\n\n\n<li>Agent workflows<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Best Next Project<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Build an AI-assisted reconciliation or analytics workflow.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">ML Engineer<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Existing Strengths<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Models<\/li>\n\n\n\n<li>Data<\/li>\n\n\n\n<li>Experimentation<\/li>\n\n\n\n<li>Evaluation<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Main Gaps<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Enterprise integration<\/li>\n\n\n\n<li>Identity<\/li>\n\n\n\n<li>Full stack<\/li>\n\n\n\n<li>Customer adoption<\/li>\n\n\n\n<li>Production operations<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Best Next Project<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Build an end-to-end AI application deployed inside a realistic enterprise architecture.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Platform Engineer<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Existing Strengths<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Architecture<\/li>\n\n\n\n<li>Reusability<\/li>\n\n\n\n<li>Developer tooling<\/li>\n\n\n\n<li>Infrastructure<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Main Gaps<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Direct user discovery<\/li>\n\n\n\n<li>Business metrics<\/li>\n\n\n\n<li>Customer-specific delivery<\/li>\n\n\n\n<li>Workflow design<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Best Next Project<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Turn a customer-specific AI deployment into a reusable internal platform.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">OpenAI\u2019s current platform FDE role is particularly relevant to this transition: it seeks strong software and ML engineers who can transform repeated field signals into reusable platform capabilities while working closely with customer-facing deployment teams.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Solutions Architect<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Existing Strengths<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Customers<\/li>\n\n\n\n<li>Architecture<\/li>\n\n\n\n<li>Communication<\/li>\n\n\n\n<li>Enterprise systems<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Main Gaps<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Production coding<\/li>\n\n\n\n<li>Testing<\/li>\n\n\n\n<li>Debugging<\/li>\n\n\n\n<li>Long-term ownership<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Best Next Project<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Implement and operate one of the architectures you would normally only propose.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">25. Six-Month Accelerated Roadmap<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">This plan is suitable for an experienced SWE with strong production skills.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Month 1: AI Application Foundation<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Learn:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>LLM APIs<\/li>\n\n\n\n<li>Structured output<\/li>\n\n\n\n<li>RAG<\/li>\n\n\n\n<li>Tool calling<\/li>\n\n\n\n<li>Cost and latency<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Build:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Authenticated knowledge assistant<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Month 2: Evaluation<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Learn:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Evaluation datasets<\/li>\n\n\n\n<li>Error analysis<\/li>\n\n\n\n<li>Regression tests<\/li>\n\n\n\n<li>Retrieval evaluation<\/li>\n\n\n\n<li>Agent evaluation<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Build:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Evaluation framework and dashboard<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Month 3: Enterprise Integration<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Learn:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>OAuth<\/li>\n\n\n\n<li>SSO<\/li>\n\n\n\n<li>Webhooks<\/li>\n\n\n\n<li>Queues<\/li>\n\n\n\n<li>Idempotency<\/li>\n\n\n\n<li>Data synchronization<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Build:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Two-system integration workflow<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Month 4: Security and Agents<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Learn:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Least privilege<\/li>\n\n\n\n<li>Tool permissions<\/li>\n\n\n\n<li>Prompt injection<\/li>\n\n\n\n<li>Human approval<\/li>\n\n\n\n<li>Audit<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Build:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Controlled action-taking agent<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Month 5: Customer Discovery<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Complete a real internal or external project.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Deliver:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Discovery notes<\/li>\n\n\n\n<li>Workflow map<\/li>\n\n\n\n<li>Metrics<\/li>\n\n\n\n<li>Pilot<\/li>\n\n\n\n<li>Adoption results<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Month 6: Portfolio and Interview Preparation<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Prepare:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Two strong case studies<\/li>\n\n\n\n<li>Resume<\/li>\n\n\n\n<li>GitHub<\/li>\n\n\n\n<li>Coding practice<\/li>\n\n\n\n<li>System design<\/li>\n\n\n\n<li>Customer cases<\/li>\n\n\n\n<li>Behavioral stories<\/li>\n\n\n\n<li>Architecture presentation<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">26. Twelve-Month Complete Roadmap<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">Months 1\u20132: Production SWE Foundation<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Primary language<\/li>\n\n\n\n<li>APIs<\/li>\n\n\n\n<li>SQL<\/li>\n\n\n\n<li>Testing<\/li>\n\n\n\n<li>Docker<\/li>\n\n\n\n<li>Git<\/li>\n\n\n\n<li>Debugging<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Months 3\u20134: Full-Stack and Integration<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Frontend<\/li>\n\n\n\n<li>Authentication<\/li>\n\n\n\n<li>External APIs<\/li>\n\n\n\n<li>Webhooks<\/li>\n\n\n\n<li>Queues<\/li>\n\n\n\n<li>Retry handling<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Months 5\u20136: Cloud and Operations<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cloud<\/li>\n\n\n\n<li>Infrastructure as code<\/li>\n\n\n\n<li>CI\/CD<\/li>\n\n\n\n<li>Observability<\/li>\n\n\n\n<li>Security<\/li>\n\n\n\n<li>Kubernetes basics<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Months 7\u20138: AI Applications<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>LLM APIs<\/li>\n\n\n\n<li>Structured outputs<\/li>\n\n\n\n<li>RAG<\/li>\n\n\n\n<li>Tool calling<\/li>\n\n\n\n<li>Cost and latency<\/li>\n\n\n\n<li>Evaluation<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Month 9: Agent Systems<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Tool design<\/li>\n\n\n\n<li>Agent state<\/li>\n\n\n\n<li>Approval<\/li>\n\n\n\n<li>Security<\/li>\n\n\n\n<li>Agent evaluation<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Month 10: Customer and Product Skills<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Discovery<\/li>\n\n\n\n<li>Workflow mapping<\/li>\n\n\n\n<li>Prioritization<\/li>\n\n\n\n<li>Scope control<\/li>\n\n\n\n<li>Business metrics<\/li>\n\n\n\n<li>Adoption<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Month 11: Real Deployment<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Internal or external customer<\/li>\n\n\n\n<li>Pilot<\/li>\n\n\n\n<li>Production<\/li>\n\n\n\n<li>Feedback<\/li>\n\n\n\n<li>Measurement<\/li>\n\n\n\n<li>Documentation<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Month 12: Job Search and Interviews<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Resume<\/li>\n\n\n\n<li>LinkedIn<\/li>\n\n\n\n<li>Portfolio<\/li>\n\n\n\n<li>Coding<\/li>\n\n\n\n<li>System design<\/li>\n\n\n\n<li>Customer case<\/li>\n\n\n\n<li>Behavioral interviews<\/li>\n\n\n\n<li>Applications<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">27. Weekly Learning Schedule<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">A sustainable schedule for a working engineer:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Day<\/th><th>Focus<\/th><th>Time<\/th><\/tr><\/thead><tbody><tr><td>Monday<\/td><td>Technical learning<\/td><td>60\u201390 minutes<\/td><\/tr><tr><td>Tuesday<\/td><td>Project implementation<\/td><td>90 minutes<\/td><\/tr><tr><td>Wednesday<\/td><td>System design or AI evaluation<\/td><td>60\u201390 minutes<\/td><\/tr><tr><td>Thursday<\/td><td>Project implementation<\/td><td>90 minutes<\/td><\/tr><tr><td>Friday<\/td><td>Technical writing or reflection<\/td><td>45 minutes<\/td><\/tr><tr><td>Saturday<\/td><td>Deep project work<\/td><td>3\u20134 hours<\/td><\/tr><tr><td>Sunday<\/td><td>Review, demo, and planning<\/td><td>1\u20132 hours<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Weekly Output Rule<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Every week should produce at least one visible artifact:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Working feature<\/li>\n\n\n\n<li>Test suite<\/li>\n\n\n\n<li>Architecture diagram<\/li>\n\n\n\n<li>Evaluation report<\/li>\n\n\n\n<li>Technical article<\/li>\n\n\n\n<li>Demonstration video<\/li>\n\n\n\n<li>Customer interview summary<\/li>\n\n\n\n<li>Incident analysis<\/li>\n\n\n\n<li>Deployment guide<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Passive learning alone does not build FDE readiness.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">28. How to Build an FDE Resume<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Your resume must show that your engineering work changed a real workflow or outcome.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Weak Bullet<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Developed a microservice using Python.<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">Stronger Bullet<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Designed and deployed a Python reconciliation service integrating three operational systems, reducing manual exception processing by 62% while preserving human review for uncertain matches.<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">Resume Formula<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Action + technical system + user or customer context + scale + measurable outcome<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">Strong Examples<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Led discovery with support and operations teams, translated a manual seven-step workflow into an AI-assisted review platform, and reduced median handling time by 31%.<\/li>\n\n\n\n<li>Built a multi-tenant ingestion service processing 18 million daily events with tenant-level authorization, idempotent delivery, and end-to-end observability.<\/li>\n\n\n\n<li>Created a customer-specific evaluation framework for an LLM assistant, identifying retrieval and tool-selection failures before production rollout.<\/li>\n\n\n\n<li>Designed a human-governed agent that automated low-risk account updates while requiring approval for financial and security-sensitive actions.<\/li>\n\n\n\n<li>Converted three customer-specific connectors into a configurable integration framework, reducing implementation time for later deployments.<\/li>\n\n\n\n<li>Coordinated engineering, security, and customer stakeholders during a production incident, restored service, and implemented monitoring and retry controls to prevent recurrence.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Recommended Sections<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Summary<\/li>\n\n\n\n<li>Technical skills<\/li>\n\n\n\n<li>Professional experience<\/li>\n\n\n\n<li>Customer-facing or delivery projects<\/li>\n\n\n\n<li>Selected AI systems<\/li>\n\n\n\n<li>Education<\/li>\n\n\n\n<li>Certifications<\/li>\n\n\n\n<li>Open source or technical writing<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">Sample Summary<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Software engineer with seven years of experience designing, deploying, and operating cloud-native systems across complex business workflows. Experienced in Python, TypeScript, Kubernetes, Terraform, enterprise integrations, LLM applications, and AI evaluation. Strong record of translating ambiguous user problems into secure production systems with measurable adoption and operational impact.<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">29. How to Improve Your LinkedIn and GitHub<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">LinkedIn Headline<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Use:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Software Engineer | Customer-Facing AI Systems, Cloud Platforms, and Enterprise Integration<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">Or:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Forward Deployed Engineering | Full Stack, LLM Applications, Evals, Kubernetes, and Enterprise Delivery<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">LinkedIn About Section<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Include:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>What you build<\/li>\n\n\n\n<li>Who benefits<\/li>\n\n\n\n<li>Your technical depth<\/li>\n\n\n\n<li>Your customer experience<\/li>\n\n\n\n<li>Outcomes you have created<\/li>\n\n\n\n<li>Problems you want to solve<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">GitHub Profile<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Pin projects that demonstrate:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Production architecture<\/li>\n\n\n\n<li>Integrations<\/li>\n\n\n\n<li>AI evaluations<\/li>\n\n\n\n<li>Security<\/li>\n\n\n\n<li>Deployment<\/li>\n\n\n\n<li>Documentation<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Repository Checklist<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Each major project should include:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Clear README<\/li>\n\n\n\n<li>Problem statement<\/li>\n\n\n\n<li>Target user<\/li>\n\n\n\n<li>Architecture<\/li>\n\n\n\n<li>Local setup<\/li>\n\n\n\n<li>Deployment<\/li>\n\n\n\n<li>Evaluation<\/li>\n\n\n\n<li>Security<\/li>\n\n\n\n<li>Screenshots<\/li>\n\n\n\n<li>Limitations<\/li>\n\n\n\n<li>Roadmap<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Add a Case Study<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A case study should explain:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Situation<\/li>\n\n\n\n<li>User<\/li>\n\n\n\n<li>Current process<\/li>\n\n\n\n<li>Problem<\/li>\n\n\n\n<li>Constraints<\/li>\n\n\n\n<li>Architecture<\/li>\n\n\n\n<li>Trade-offs<\/li>\n\n\n\n<li>Rollout<\/li>\n\n\n\n<li>Result<\/li>\n\n\n\n<li>Lessons<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">30. How to Find FDE and Adjacent Roles<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Search for:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Forward Deployed Engineer<\/li>\n\n\n\n<li>Forward Deployed Software Engineer<\/li>\n\n\n\n<li>Applied AI Engineer<\/li>\n\n\n\n<li>AI Deployment Engineer<\/li>\n\n\n\n<li>Customer Engineer<\/li>\n\n\n\n<li>AI Solutions Architect<\/li>\n\n\n\n<li>Applied AI Architect<\/li>\n\n\n\n<li>Deployment Engineer<\/li>\n\n\n\n<li>Field Engineer<\/li>\n\n\n\n<li>Resident Engineer<\/li>\n\n\n\n<li>Integration Engineer<\/li>\n\n\n\n<li>Professional Services Engineer<\/li>\n\n\n\n<li>Technical Consultant<\/li>\n\n\n\n<li>Customer-Facing Software Engineer<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Identify Genuine FDE-Style Responsibilities<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Look for phrases such as:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Own deployments end to end<\/li>\n\n\n\n<li>Embed with customers<\/li>\n\n\n\n<li>Write production code<\/li>\n\n\n\n<li>Lead discovery<\/li>\n\n\n\n<li>Build prototypes<\/li>\n\n\n\n<li>Move systems into production<\/li>\n\n\n\n<li>Develop evaluations<\/li>\n\n\n\n<li>Drive adoption<\/li>\n\n\n\n<li>Translate customer needs<\/li>\n\n\n\n<li>Influence the product roadmap<\/li>\n\n\n\n<li>Create reusable patterns<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">OpenAI now distinguishes among customer-tagged FDEs, Forward Deployed Software Engineers, platform FDE engineers, and technical deployment leads. Its Forward Deployed Software Engineer role focuses particularly on customer-focused software development, customer infrastructure, full-stack solutions, detailed project scopes, and reusable delivery abstractions.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Understand Level Expectations<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Experience requirements vary.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">One current Scale AI FDE posting prefers at least two years of relevant experience, while OpenAI\u2019s customer-facing FDE role asks for five or more years of engineering or technical-deployment experience that includes customer-facing work.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Read the actual responsibilities instead of deciding based only on the title.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">31. How to Prepare for FDE Interviews<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">A mature FDE interview may test six areas.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">31.1 Coding<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Practice:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Data structures<\/li>\n\n\n\n<li>Data transformation<\/li>\n\n\n\n<li>APIs<\/li>\n\n\n\n<li>SQL<\/li>\n\n\n\n<li>File processing<\/li>\n\n\n\n<li>Error handling<\/li>\n\n\n\n<li>Debugging<\/li>\n\n\n\n<li>Testing<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Interviewers may care more about clarity and practical correctness than clever tricks.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">31.2 System Design<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Practice:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Multi-tenant application<\/li>\n\n\n\n<li>Enterprise search<\/li>\n\n\n\n<li>Workflow engine<\/li>\n\n\n\n<li>AI support assistant<\/li>\n\n\n\n<li>Document-processing system<\/li>\n\n\n\n<li>Agent platform<\/li>\n\n\n\n<li>Customer-hosted deployment<\/li>\n\n\n\n<li>Multi-region service<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">31.3 Customer Discovery<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Practice responding to vague requests:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">\u201cWe want an AI agent for legal operations.\u201d<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">Ask questions before designing.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">31.4 AI Architecture<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Be ready to discuss:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Model choice<\/li>\n\n\n\n<li>RAG<\/li>\n\n\n\n<li>Tool calling<\/li>\n\n\n\n<li>Evaluation<\/li>\n\n\n\n<li>Human approval<\/li>\n\n\n\n<li>Prompt injection<\/li>\n\n\n\n<li>Cost<\/li>\n\n\n\n<li>Latency<\/li>\n\n\n\n<li>Monitoring<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">31.5 Behavioral Interviews<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Prepare examples for:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>End-to-end ownership<\/li>\n\n\n\n<li>Customer disagreement<\/li>\n\n\n\n<li>Production failure<\/li>\n\n\n\n<li>Scope reduction<\/li>\n\n\n\n<li>Ambiguous requirements<\/li>\n\n\n\n<li>Influencing without authority<\/li>\n\n\n\n<li>Rapid learning<\/li>\n\n\n\n<li>Cross-functional conflict<\/li>\n\n\n\n<li>Technical leadership<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">31.6 Presentation<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Prepare a 15-minute project presentation covering:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Customer problem<\/li>\n\n\n\n<li>Current workflow<\/li>\n\n\n\n<li>Success metric<\/li>\n\n\n\n<li>Architecture<\/li>\n\n\n\n<li>Security<\/li>\n\n\n\n<li>Evaluation<\/li>\n\n\n\n<li>Rollout<\/li>\n\n\n\n<li>Outcome<\/li>\n\n\n\n<li>Lessons<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">32. FDE System Design Framework<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Use the <strong>PRISM<\/strong> framework.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">P \u2014 Problem and Priorities<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Clarify:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>User<\/li>\n\n\n\n<li>Workflow<\/li>\n\n\n\n<li>Outcome<\/li>\n\n\n\n<li>Scope<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">R \u2014 Requirements and Risks<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Cover:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Scale<\/li>\n\n\n\n<li>Latency<\/li>\n\n\n\n<li>Availability<\/li>\n\n\n\n<li>Security<\/li>\n\n\n\n<li>Compliance<\/li>\n\n\n\n<li>Cost<\/li>\n\n\n\n<li>Failure impact<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">I \u2014 Interfaces and Information<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Explain:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Users<\/li>\n\n\n\n<li>APIs<\/li>\n\n\n\n<li>Data<\/li>\n\n\n\n<li>Events<\/li>\n\n\n\n<li>Trust boundaries<\/li>\n\n\n\n<li>External systems<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">S \u2014 System Components<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Design:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Frontend<\/li>\n\n\n\n<li>Backend<\/li>\n\n\n\n<li>Data store<\/li>\n\n\n\n<li>Queue<\/li>\n\n\n\n<li>AI layer<\/li>\n\n\n\n<li>Tools<\/li>\n\n\n\n<li>Monitoring<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">M \u2014 Measurement and Mitigation<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Define:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Evaluation<\/li>\n\n\n\n<li>Observability<\/li>\n\n\n\n<li>Rollout<\/li>\n\n\n\n<li>Rollback<\/li>\n\n\n\n<li>Human review<\/li>\n\n\n\n<li>Success metric<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Example Opening<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Before selecting the architecture, I would clarify the primary user, current workflow, target outcome, data sources, failure cost, and actions the system may perform. I would then propose the smallest end-to-end workflow that tests the highest-risk assumptions.<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">33. FDE Behavioral Interview Framework<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Use <strong>STAR-L<\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">S \u2014 Situation<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Give the context.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">T \u2014 Task<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Explain your responsibility.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">A \u2014 Action<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Describe what you personally did.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">R \u2014 Result<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Quantify the outcome.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">L \u2014 Learning<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Explain what changed in your approach.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Example Question<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Tell me about a time you disagreed with a customer.<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">Strong Answer Pattern<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">The customer requested full automation during the first release because manual approval slowed the process. Our evaluation dataset was too small to establish a safe error rate. I showed examples of high-impact failures and proposed human approval during the pilot. We defined the quality threshold needed to automate low-risk categories. After four weeks, the low-risk category met the threshold and was automated, while high-impact actions retained approval. This allowed the customer to gain speed without accepting uncontrolled risk.<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">34. Common Transition Mistakes<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">Mistake 1: Believing FDE Means Less Coding<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Many FDE roles require strong full-stack and production engineering.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Mistake 2: Learning Only AI Frameworks<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Frameworks change.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Learn durable concepts:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Data<\/li>\n\n\n\n<li>APIs<\/li>\n\n\n\n<li>State<\/li>\n\n\n\n<li>Evaluation<\/li>\n\n\n\n<li>Permissions<\/li>\n\n\n\n<li>Failure handling<\/li>\n\n\n\n<li>Observability<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Mistake 3: Building Another Generic Chatbot<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A generic chatbot rarely demonstrates:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Workflow integration<\/li>\n\n\n\n<li>Security<\/li>\n\n\n\n<li>Evaluation<\/li>\n\n\n\n<li>Adoption<\/li>\n\n\n\n<li>Business value<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Mistake 4: Ignoring Frontend Development<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Users need a workflow, not only an API.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Mistake 5: Ignoring Production Operations<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A local prototype does not prove that you can handle:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Deployment<\/li>\n\n\n\n<li>Monitoring<\/li>\n\n\n\n<li>Secrets<\/li>\n\n\n\n<li>Scaling<\/li>\n\n\n\n<li>Incidents<\/li>\n\n\n\n<li>Rollback<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Mistake 6: Solving the Stated Request Literally<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The customer\u2019s first request may describe a preferred technology rather than the actual problem.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Mistake 7: Saying Yes to Every Customer Request<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Strong FDEs protect:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Security<\/li>\n\n\n\n<li>Reliability<\/li>\n\n\n\n<li>Scope<\/li>\n\n\n\n<li>Product integrity<\/li>\n\n\n\n<li>Delivery feasibility<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Mistake 8: Overengineering the Pilot<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The purpose of the pilot is to test the most important assumptions.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Mistake 9: Measuring Only AI Accuracy<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Also measure:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Adoption<\/li>\n\n\n\n<li>Workflow completion<\/li>\n\n\n\n<li>Time saved<\/li>\n\n\n\n<li>Business impact<\/li>\n\n\n\n<li>Cost<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Mistake 10: Creating Permanent Bespoke Systems<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Look for patterns that can become reusable components.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Mistake 11: Claiming Customer Experience Without Evidence<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Show:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Who the user was<\/li>\n\n\n\n<li>What problem existed<\/li>\n\n\n\n<li>What you discovered<\/li>\n\n\n\n<li>What you built<\/li>\n\n\n\n<li>What changed<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Mistake 12: Treating Communication as Soft and Optional<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Poor communication can destroy an excellent technical project.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">35. Your First 90 Days After Becoming an FDE<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">Days 1\u201330: Learn the Platform and Customers<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Understand:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Product architecture<\/li>\n\n\n\n<li>Model capabilities<\/li>\n\n\n\n<li>Deployment process<\/li>\n\n\n\n<li>Security standards<\/li>\n\n\n\n<li>Customer segments<\/li>\n\n\n\n<li>Common integrations<\/li>\n\n\n\n<li>Incident history<\/li>\n\n\n\n<li>Internal ownership<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Attend:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Customer calls<\/li>\n\n\n\n<li>Architecture reviews<\/li>\n\n\n\n<li>Product discussions<\/li>\n\n\n\n<li>Incident reviews<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Days 31\u201360: Deliver a Controlled Win<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Choose a problem that:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Matters<\/li>\n\n\n\n<li>Has limited risk<\/li>\n\n\n\n<li>Has available data<\/li>\n\n\n\n<li>Can be measured<\/li>\n\n\n\n<li>Builds platform understanding<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Deliver:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Discovery summary<\/li>\n\n\n\n<li>Technical scope<\/li>\n\n\n\n<li>Pilot<\/li>\n\n\n\n<li>Evaluation<\/li>\n\n\n\n<li>User feedback<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Days 61\u201390: Own a Workstream<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Take responsibility for:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Customer discovery<\/li>\n\n\n\n<li>Architecture<\/li>\n\n\n\n<li>Delivery sequence<\/li>\n\n\n\n<li>Risks<\/li>\n\n\n\n<li>Communication<\/li>\n\n\n\n<li>Production rollout<\/li>\n\n\n\n<li>Adoption<\/li>\n\n\n\n<li>Measurement<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Identify at least one reusable pattern from the work.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">36. FDE Readiness Scorecard<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">You are likely ready to apply when you can provide evidence for most of the following.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Engineering<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Build production APIs<\/li>\n\n\n\n<li>Use SQL effectively<\/li>\n\n\n\n<li>Develop a basic frontend<\/li>\n\n\n\n<li>Integrate external systems<\/li>\n\n\n\n<li>Write tests<\/li>\n\n\n\n<li>Debug unfamiliar services<\/li>\n\n\n\n<li>Design scalable systems<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Production<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Deploy to the cloud<\/li>\n\n\n\n<li>Containerize applications<\/li>\n\n\n\n<li>Use infrastructure as code<\/li>\n\n\n\n<li>Build CI\/CD<\/li>\n\n\n\n<li>Manage secrets<\/li>\n\n\n\n<li>Monitor systems<\/li>\n\n\n\n<li>Plan rollback<\/li>\n\n\n\n<li>Handle incidents<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">AI<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Build an LLM application<\/li>\n\n\n\n<li>Build RAG<\/li>\n\n\n\n<li>Use structured output<\/li>\n\n\n\n<li>Implement tool calling<\/li>\n\n\n\n<li>Create evaluations<\/li>\n\n\n\n<li>Perform error analysis<\/li>\n\n\n\n<li>Measure cost and latency<\/li>\n\n\n\n<li>Control agent permissions<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Customer<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Conduct discovery<\/li>\n\n\n\n<li>Map workflows<\/li>\n\n\n\n<li>Identify stakeholders<\/li>\n\n\n\n<li>Define success<\/li>\n\n\n\n<li>Resolve conflicting requirements<\/li>\n\n\n\n<li>Explain trade-offs<\/li>\n\n\n\n<li>Guide adoption<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Product<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Prioritize work<\/li>\n\n\n\n<li>Reduce scope<\/li>\n\n\n\n<li>Define an MVP<\/li>\n\n\n\n<li>Identify reusable patterns<\/li>\n\n\n\n<li>Measure business impact<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Communication<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Write technical designs<\/li>\n\n\n\n<li>Present architecture<\/li>\n\n\n\n<li>Communicate project status<\/li>\n\n\n\n<li>Explain risk<\/li>\n\n\n\n<li>Lead technical meetings<\/li>\n\n\n\n<li>Speak to executives<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Portfolio<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Two production-quality projects<\/li>\n\n\n\n<li>One customer-oriented AI project<\/li>\n\n\n\n<li>One real user case study<\/li>\n\n\n\n<li>One architecture presentation<\/li>\n\n\n\n<li>One evaluation report<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">37. Frequently Asked Questions<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">Can a Software Engineer Become an FDE?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Yes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Software engineering is one of the strongest foundations for FDE work.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Your main development areas are likely customer discovery, product judgment, AI evaluation, and adoption.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Do I Need AI Research Experience?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">No.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Most customer-facing AI roles focus on building systems around models rather than training frontier models.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You should understand model behavior, evaluation, retrieval, tool use, cost, latency, and safety.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Do I Need to Know Frontend Development?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">You should be able to build a usable workflow.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You do not need to be a specialist visual designer.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Do I Need Kubernetes?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Not for every job.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You should understand it because it appears frequently in enterprise production environments.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Do I Need a Computer Science Degree?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Not universally.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Strong engineering evidence, production experience, communication, and customer impact may be more important than the exact degree.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How Long Does the Transition Take?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A practical estimate is:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Three to six months for a senior SWE already working with customers and production AI<\/li>\n\n\n\n<li>Six to twelve months for an experienced SWE adding AI and customer-facing skills<\/li>\n\n\n\n<li>Twelve to twenty-four months for an early-career engineer<\/li>\n\n\n\n<li>Longer for someone beginning without production programming experience<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">These are preparation estimates rather than formal hiring requirements.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Is FDE the Same as Solutions Engineering?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Not usually.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Solutions engineers often focus on technical sales, demonstrations, and architecture validation.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">FDEs usually have deeper implementation and production ownership.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Is FDE the Same as Consulting?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">FDEs use consulting skills but are generally expected to build and deploy software.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Do FDEs Travel?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Some do.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">OpenAI\u2019s current customer-facing FDE and Forward Deployed Software Engineer roles list travel of up to 50%, while its platform FDE role generally requires much less travel. This demonstrates how much the operating model can vary within one organization.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What Is the Hardest Skill for an SWE to Learn?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Usually one of:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Discovering the real problem<\/li>\n\n\n\n<li>Reducing scope<\/li>\n\n\n\n<li>Handling customer conflict<\/li>\n\n\n\n<li>Connecting technical work to business value<\/li>\n\n\n\n<li>Communicating uncertainty clearly<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">What Is the Best FDE Portfolio Project?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A production-deployed AI workflow containing:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Real users<\/li>\n\n\n\n<li>Enterprise integration<\/li>\n\n\n\n<li>Permission-aware data access<\/li>\n\n\n\n<li>Evaluation<\/li>\n\n\n\n<li>Human approval<\/li>\n\n\n\n<li>Monitoring<\/li>\n\n\n\n<li>Measurable outcome<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Should I Apply Before Completing the Entire Roadmap?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Yes, when you can demonstrate strong SWE fundamentals, at least one complete AI system, customer-oriented thinking, and production ownership.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Use job descriptions to identify the gaps most relevant to each role.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">38. Final Checklist<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Before applying, verify that you can answer yes to most of these questions.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Technical Foundation<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Can I write reliable production code?<\/li>\n\n\n\n<li>Can I design an API?<\/li>\n\n\n\n<li>Can I model data?<\/li>\n\n\n\n<li>Can I debug failures?<\/li>\n\n\n\n<li>Can I write tests?<\/li>\n\n\n\n<li>Can I build a basic frontend?<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">AI Engineering<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Can I build a RAG application?<\/li>\n\n\n\n<li>Can I design tools for an agent?<\/li>\n\n\n\n<li>Can I create an evaluation dataset?<\/li>\n\n\n\n<li>Can I perform error analysis?<\/li>\n\n\n\n<li>Can I control model actions?<\/li>\n\n\n\n<li>Can I measure cost and latency?<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Production<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Can I deploy to a cloud environment?<\/li>\n\n\n\n<li>Can I use Docker?<\/li>\n\n\n\n<li>Can I build a CI\/CD pipeline?<\/li>\n\n\n\n<li>Can I manage secrets?<\/li>\n\n\n\n<li>Can I monitor the service?<\/li>\n\n\n\n<li>Can I roll it back?<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Security<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Can I explain the identity model?<\/li>\n\n\n\n<li>Can I apply least privilege?<\/li>\n\n\n\n<li>Can I create an audit trail?<\/li>\n\n\n\n<li>Can I identify prompt-injection risks?<\/li>\n\n\n\n<li>Can I define human-approval boundaries?<\/li>\n\n\n\n<li>Can I disable unsafe functionality?<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Customer<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Can I conduct discovery?<\/li>\n\n\n\n<li>Can I map the current workflow?<\/li>\n\n\n\n<li>Can I identify the real bottleneck?<\/li>\n\n\n\n<li>Can I define success metrics?<\/li>\n\n\n\n<li>Can I manage disagreement?<\/li>\n\n\n\n<li>Can I guide adoption?<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Product<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Can I reduce scope?<\/li>\n\n\n\n<li>Can I select a valuable MVP?<\/li>\n\n\n\n<li>Can I distinguish custom work from reusable work?<\/li>\n\n\n\n<li>Can I connect a feature to business impact?<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Communication<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Can I present architecture?<\/li>\n\n\n\n<li>Can I write a project update?<\/li>\n\n\n\n<li>Can I explain risk to an executive?<\/li>\n\n\n\n<li>Can I facilitate a decision?<\/li>\n\n\n\n<li>Can I document a production system?<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Evidence<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Do I have two strong project repositories?<\/li>\n\n\n\n<li>Do I have one customer-facing case study?<\/li>\n\n\n\n<li>Do I have measurable results?<\/li>\n\n\n\n<li>Can I explain my trade-offs?<\/li>\n\n\n\n<li>Can I describe a failure and what I learned?<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">39. Conclusion<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">The journey from Software Engineer to Forward Deployed Engineer is not a departure from software engineering.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It is an expansion of engineering responsibility.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You move from asking:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">What should this software component do?<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">To asking:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">What must change in the customer\u2019s workflow, and what combination of software, data, AI, security, and human judgment will produce that change safely?<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">A strong Forward Deployed Engineer can:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Enter an unfamiliar environment<\/li>\n\n\n\n<li>Understand the customer\u2019s real problem<\/li>\n\n\n\n<li>Convert ambiguity into a technical plan<\/li>\n\n\n\n<li>Build the required system<\/li>\n\n\n\n<li>Integrate customer data<\/li>\n\n\n\n<li>Evaluate AI behavior<\/li>\n\n\n\n<li>Secure the workflow<\/li>\n\n\n\n<li>Deploy it into production<\/li>\n\n\n\n<li>Handle failure<\/li>\n\n\n\n<li>Earn user trust<\/li>\n\n\n\n<li>Measure business impact<\/li>\n\n\n\n<li>Convert lessons into reusable product improvements<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The recommended sequence is straightforward:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Strengthen production software engineering.<\/li>\n\n\n\n<li>Learn to build complete workflows.<\/li>\n\n\n\n<li>Master enterprise integrations.<\/li>\n\n\n\n<li>Learn cloud delivery and operations.<\/li>\n\n\n\n<li>Build AI applications.<\/li>\n\n\n\n<li>Develop rigorous evaluations.<\/li>\n\n\n\n<li>Learn controlled agent engineering.<\/li>\n\n\n\n<li>Design security from the beginning.<\/li>\n\n\n\n<li>Practice customer discovery.<\/li>\n\n\n\n<li>Build product judgment.<\/li>\n\n\n\n<li>Communicate clearly across audiences.<\/li>\n\n\n\n<li>Prove everything through real projects and users.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Do not aim to become an engineer who knows every AI framework.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Aim to become the engineer who can take an important, confusing, high-risk customer problem and create a clear path from idea to measurable production outcome.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That is the real Forward Deployed Engineer roadmap.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Table of Contents 1. Quick Answer To move from Software Engineer to Forward Deployed Engineer, you must expand your ownership beyond writing and maintaining software. A traditional&#8230; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[11138],"tags":[],"class_list":["post-77785","post","type-post","status-publish","format-standard","hentry","category-best-tools"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/77785","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=77785"}],"version-history":[{"count":1,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/77785\/revisions"}],"predecessor-version":[{"id":77786,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/77785\/revisions\/77786"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=77785"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=77785"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=77785"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}