ExplainThis 全端開發雙週報 #73 FDE 是什麼? 為什麼軟體業界需要 FDE 這個職缺?
FDE 是什麼? 為什麼軟體業界需要 FDE 這個職缺?
嗨~歡迎閱讀第 73 期 ExplainThis 全端開發雙週報!
先預祝讀者們農曆新年快樂,在過年期間與家人團聚、好好休息,年後能有個全新的開始!
在進到雙週報主題前,想分享我們的 YouTube 頻道新製作了一支《資料密集型應用系統設計》第一章節的導讀 (連結)。這本書是劍橋大學分散式系統研究員 Martin Kleppmann 於 2017 年所寫的指南,在出版至今已成為系統設計入門必讀的書籍之一。
另外,感謝讀者們的支持,我們籌劃的 E+ 成長計畫 (連結),已經突破 950 人。如果你是前後端軟體工程師,想在職涯持續成長,歡迎加入。E+ 每週都有前後端、軟體工程、AI 工程等主題深度文,同時搭配線上課與社群。
以上,接著讓我們進到本期的主題文~
FDE 是什麼? 為什麼軟體業界需要 FDE?
過去兩年的軟體工程師就業市場整體緊縮,但在其他職缺量下降的同時,FDE (Forward Deployed Engineer) 的職缺量成長之快,讓社群中開始有許多關於 FDE 的討論。
這些討論包含 FDE 這個職位究竟是什麼? 跟一般的軟體工程師 (SWE) 有什麼不同? 為什麼這個職缺會出現?
我們在這篇文章會一探這些問題,來了解這個軟體業的新趨勢。
FDE 是什麼?
從字面上的意思來看,FDE 的 F (Forward) 是前線,也就是指這類工程師需要走到最前線客戶所在之處;而 D (Deployed) 則是部署,意即與前線不僅限於接觸,還要實際在前線執行任務。事實上,FD 這個詞是來自於軍事用語,在軍事上有 Forward Deployed Unit (直譯是前線部署單位),也就是部署在前線執行任務的單位。
在軍事上,會有中央單位運籌帷幄,負責制定整體策略、生產各類軍事用品;與此同時,也有實際把策略落地、使用軍事用品達成任務的前線部署單位。在軟體工程的領域也有類似的區分,有研發單位 (R&D) 的同時,也有前線部署工程師把研發成果,帶到客戶所在的領域,做客製化的調整來協助客戶完成任務。
舉例來說,近期招募大批 FDE 的 OpenAI,核心的產品是研發單位做出來的 AI 模型,而 FDE 則是協助 OpenAI 的企業端客戶,實際導入 OpenAI 的模型,包含基於客戶的需求設計出最合適的解決方案,並且開發產品原型來證明該解決方案可行 (這樣客戶才願意買單),最後則是在產品從原型過渡到生產環境的過程中,持續協助客戶解決所遇到的問題。
先前在一場訪談中 (連結),OpenAI 的 FDE 團隊負責人 Colin Jarvis 分享到,當初在 ChatGPT 的 API 剛推出時,為了說服摩根士丹利 (Morgan Stanley) 銀行採用,OpenAI 的 FDE 團隊協助開發了一個客製化的解決方案,透過從大量文件中檢索資料,然後由 ChatGPT 的 API 協助彙整,進而分析出對個人資產顧問有幫助的洞見。
在 OpenAI 與摩根士丹利的合作過程,FDE 扮演的角色是到最前線,去了解個人資產顧問在工作上遇到的痛點、去了解為什麼即使 AI 模型表現很好但這些顧問不敢用,然後打造客製化的方案解決這些問題,讓這些顧問最終願意相信並採用。
假如進一步拆解角色分工,OpenAI 的研究員負責訓練 AI 模型,而 OpenAI 的產品團隊把模型轉成 API 產品,最後透過 FDE 基於 API 打造客製化的解決方案,來贏得客戶的信任與使用。
為什麼會出現 FDE 職位?
FDE 這個職位最廣為人知的起源之一,是 Palantir 所設立的角色。當年 Palantir 的客戶主要為情資、國防等部門,這些部門的需求有所不同,所以難以有一個通用的產品來解決,而是需要客製化地解決不同部門的問題。
在這個脈絡,近 20 年最流行的軟體模式變得不適用。近年主流軟體的商業模式是一套軟體服務所有客戶,例如 ExplainThis 團隊有在用的 B2B 產品 (Google Workspace、Linear 等),或是平常生活上有用的 B2C 社群媒體、外送平台,都是不分使用者,大家用的都是一樣的軟體產品。
這種模式很好體現軟體抽象化的本質,透過抽象化用一種軟體產品服務所有的使用者 (例如 A 要點飲料、B 要點小吃,雖然具體需求有差異,但抽象化後都可以用 Uber Eats 解決,不需額外的客製化)。也因此,多數公司會招聘通用的軟體工程師,或者專注於產品開發的前端、後端工程師。
不過由於 Palantir 的客戶有高度客製化需求,所以在核心產品外,就需要有人協助根據不同的需求,去寫客製化的功能。基於此,Palantir 有招募開發核心產品的通用軟體工程師,同時也額外招募協助客戶開發客製化功能的 FDE。
雖然說 FDE 的工作核心任務是要去到客戶所在的前線,但 FDE 職位承載的另一個重責,是把在前線所觀察到的,帶回給 Palantir 核心產品團隊,協助產品團隊迭代產品的核心部分。因此更精確地說,FDE 這個職位會去到前線,但同時要面對客戶與核心產品團隊。
閱讀更多
在了解 FDE 這個職位後,相信讀者們可能會問「FDE 跟其他面向客戶的工程師有什麼不同?」以及「什麼樣的人適合 FDE 這個職位?」等問題,我們在 E+ 成長計畫 (連結) 的主題文中,都有完整解說。感興趣的讀者,歡迎加入後閱讀。
本期推薦
最近許多 AI 垃圾 PR 湧入各大開源專案,導致維護者要花很多時間關閉一些似是而非的 PR Vouch 開源專案。社群因此催生出 Vouch 這類開源工具(連結),來做信用審核,藉此隔絕 AI 垃圾。關於這議題,我們也有寫中文相關討論 (連結)
前陣子 ChatGPT 推出專門的翻譯應用,在推出後被社群發現能輕易提示詞注入 (連結),先前我們也寫過《開發 AI 產品時要注意的資訊安全問題》介紹提示詞注入( 連結)
Anthropic 前陣子發了一篇《Demystifying evals for AI agents》 (連結),如果還不熟 Evals 主題的讀者,可以先回顧我們之前寫過的主題文 (連結) ,會更容易消化這篇
過去一年 TUI 變得熱門《Building a TUI is easy now》 一文 (連結) 介紹了可以如何透過社群熱門的套件,輕易實作出精美的 TUI
假如有在用 AI 代理寫程式的人,應該都有注意到現在的 AI 工具多半會用 Bash 指令。《Bash for AI Engineers》是一篇寫得很不錯的入門,如果對 Bash 指令還不熟,可以一讀 (連結)
npmx 是近期社群中熱門的 npm 替代方案,有更好的 UI 設計讓開發者能夠查看套件、比較套件 (連結)
最近越來越多公司,透過 AI 加速開發,但服務的整體可靠性卻下降。在這個趨勢下,《The future of software engineering is SRE》一文談了為什麼在未來 SRE 會越來越重要 (連結)
彩蛋
這期雙週報的彩蛋是一段發人省思的話「想著要做某件事,並不等於做了那件事。夢想要做某件事,並不等於做了那件事。想像做了那件事後的成功,並不等於做了那件事。等著準備好才去做那件事,並不等於做了那件事。」
Thinking about doing the thing is not doing the thing.
Dreaming about doing the thing is not doing the thing.
Visualizing success from doing the thing is not doing the thing.
Waiting to feel ready to do the thing is not doing the thing.
與此同時,這段話接著說「做那件事時失敗了,是做了那件事。做得很差,也是做了那件事。做得時候覺得膽怯,也是做了那件事。只做了一小部分,也是做了那件事。」
Failing while doing the thing is doing the thing.
Doing it badly is doing the thing.
Doing it timidly is doing the thing.
Doing a small part of the thing is doing the thing.
在農曆新年期間,如果有想要做什麼嘗試,不論是學習某個新技術,或是開啟一個新的個人專案。即使再小,跨出一步實際去做,也會好過只停留在想。


Anthropic 那篇《Demystifying evals for AI agents》連結有誤
應為 https://www.anthropic.com/engineering/demystifying-evals-for-ai-agents