全端工程師面試問題
作者 Aaron Cao · 更新於

全端面試考驗的是各層之間的銜接:如何設計與調整 API 合約、登入如何從瀏覽器一路驗證到資料庫,以及一項功能如何從資料庫結構走到畫面。通常會有寫程式環節、打造功能環節,以及一場橫跨用戶端與伺服器端的設計討論。
全端工程師面試到底在考驗什麼?
你可能會擔心,全端面試等於要在大多數人準備一場面試的時間裡,同時準備前端與後端兩場完整的面試。這種擔心可以理解,但這一節會說明為什麼這件事其實沒有看上去那麼龐大。面試官很少會重新跑一遍專職前端或後端的題庫,他們更在意各層交會的地方,因為那正是全端工程師真正展現價值之處。
大多數面試流程會混合四類環節:
- 寫程式:一道資料結構題,或是解析、分組、分頁記錄之類的實際任務,通常用 JavaScript、TypeScript、Python 或 Java 完成。
- 打造功能:一個小型的端到端任務,例如一個會存入 API 並顯示驗證錯誤的表單,在共用編輯器或帶回家的程式碼庫中完成。
- 跨層設計:設計一項類似留言或通知的功能,涵蓋資料庫結構、API、用戶端狀態,以及網路失敗時會發生什麼事。
- 行為面試:說明你如何把一項功能從工單一路推進到上線,以及你曾跨層追查過的一個 bug。
特定層面的深入問題依然會出現,專門的題庫,包括獨立的前端與後端工程師面試題頁面,收錄在面試題庫中。本頁聚焦於兩層之間的部分。
最常出現哪些 API 合約與資料相關問題?
API 是你工作兩端之間的合約,因此面試官會從兩個角度提問:
- 你會如何設計一項功能的各個端點,成功與失敗時各自回傳什麼?
- 如何在不破壞已上線用戶端的前提下修改 API?(版本管理、增量式變更、淘汰緩衝期。)
- 位移分頁還是游標分頁:動態消息該用哪一種,為什麼?
- 如果用戶端逾時,如何讓 POST 請求能安全地重試?(冪等性金鑰。)
- 對某個用戶端來說,選擇 REST、GraphQL 還是 RPC,在快取、過度擷取資料與錯誤處理上會有什麼不同?
- 驗證邏輯該放在用戶端、伺服器端,還是兩者都要,哪一方說了算?
- 當一個清單端點回傳巢狀資料時,如何避免 N+1 查詢?
好的回答會說明取捨,而不只是給出選擇。「用游標分頁,因為使用者捲動時新插入的資料列會讓位移錯位並導致項目重複」這樣的回答,勝過只是列出兩個選項卻不下判斷。
身分驗證與追蹤功能類問題該如何回答?
有兩類問題能把全端候選人和專才區分開來。第一類是端到端的身分驗證:說明從使用者送出登入表單,到一次已驗證的 API 呼叫成功之間發生了什麼事。面試官關注的是憑證存放在哪裡(Cookie 還是用戶端儲存)、伺服器如何檢查它、為什麼 HttpOnly Cookie 能防止指令碼存取、以 Cookie 為基礎的工作階段需要什麼樣的 CSRF 防護、CORS 如何影響不同來源的前端,以及登出與權杖過期如何處理。
第二類是追蹤問題:「使用者點了儲存,卻什麼都沒發生,說說你會怎麼除錯。」好的回答會一層一層推進,從瀏覽器主控台與網路面板,到請求與回應,再到伺服器日誌,最後到資料庫寫入,而不是憑空猜測。
一位在中型 SaaS 公司面試的全端工程師就是典型案例。被問到留言功能會如何實作時,她從資料表開始(留言表包含貼文 ID、作者 ID 與時間戳記,並按貼文建立索引),接著用游標分頁定義了清單端點,又說明了用戶端如何做樂觀渲染、POST 失敗時如何回滾,最後講了她會如何防止連續點擊造成重複發文。她把每一層都講得很精簡,面試官的追問也正好落在她提到的那些銜接處。
應該如何練習?即時助手能在哪裡派上用場?
把追蹤過程大聲練習出來。挑一項你每天都在用的應用程式裡的功能,從資料庫結構一路講到畫面,然後再來一次,這次加入一個故障:API 變慢了、寫入只部分成功了、使用者在請求過程中被登出了。可以錄下自己的講解,也可以在 AI 模擬面試中練習,它會根據你說出的答案追問下去。
在真實的面試環節中,SubcueAI 針對 macOS 與 Windows 的桌面應用程式,可以在面試規則允許協助的情況下,轉錄面試官的話並為設計題與行為面試題建議回答結構;Chrome/Edge 擴充功能涵蓋瀏覽器分頁通話,iPhone 應用程式則能監聽在另一台裝置上播放的通話。誠實的界線在全端面試中格外重要:打造功能與寫程式環節通常在共享螢幕上進行,共享螢幕上的一切都是可見的,因此這類環節不在協助範圍內。有監考的線上測驗與公司管理裝置同樣不在範圍內。設定方式請見使用教學。
常見問題
全端工程師面試常見的問題有哪些?
全端面試會包含 LeetCode 風格的題目嗎?
準備全端面試該主攻哪個技術堆疊?
全端面試比前端或後端面試更難嗎?
全端面試中可以使用 AI 助手嗎?
相關問題
- What questions are asked in a backend developer interview?
- What questions are asked in a frontend developer interview?
- What questions are asked in a product designer interview?
- 資安面試會問哪些問題?
- What questions are asked in a first job interview, and how do you answer without experience?
- What questions are asked in an MLOps interview?