James Graham, PMP — Ta’ l-Ibrag, Malta
優秀開發者是專案成功的基礎#
軟體專案的成敗,很大程度上取決於開發人員的水準。但在一堆應徵者中,要如何找出真正的頂尖人才?
在面試新人之前,先與你最好的開發者談談,重新確認這個職位真正需要哪些能力:特定的開發生命週期(Development Lifecycle)經驗、方法論(Methodology)熟悉度、工具集(Toolsets)掌握度,還是特定產業知識(如國防或製藥領域)?哪些是加分項目,哪些是硬性條件?
評估的三個維度#
1. 知識測試#
混合面試與理論測驗,邀請你信任的開發者一同參與。一個好的軟體工程師應能:
- 立即發現並修正模擬的語法錯誤,毫無壓力
- 閱讀他人程式碼並理解其意圖,無需大量文件輔助
- 用「開發者術語」和「非技術語言」雙重描述同一個程式問題
2. 實作能力#
請候選人寫一段程式碼供你和團隊審閱。分析程式碼風格和解題思路,判斷這個人是否適合你的團隊文化。
知識 ≠ 實力: 擁有紮實理論知識的人,不見得能在高壓環境下有效發揮。剛畢業或剛完成培訓的開發者,面對緊迫的截止日期和客戶壓力時,往往難以快速將理論轉化為可用的成果。經驗是知識之上不可或缺的一層。
3. 溝通與態度#
注意: 技術能力出眾,不代表適合團隊。曾有一位開發者技術極佳,卻因脾氣暴躁被稱為「吹風機」——情緒爆發時能讓人噤若寒蟬。這樣的人對專案團隊反而是一種傷害。
隨著敏捷開發(Agile)日漸普及,開發者需要跨功能溝通,直接面對組織內不同角色的人。請評估:
- 候選人對工作、同事、客戶的態度是否成熟
- 是否能在追求高品質與接受專案限制之間取得平衡
- 有無能按時、在預算內交付「符合目的(Fit for Purpose)」成果的具體紀錄
篩選清單#
| 步驟 | 項目 | 說明 |
|---|---|---|
| 1 | 篩選(Screen) | 確認開發生命週期、方法論、工具集與產業背景 |
| 2 | 測試(Test) | 驗證其在實際工作環境中應用知識的能力 |
| 3 | 評估軟技能 | 觀察溝通與協作能力 |
| 4 | 查核履歷 | 向發證機構核實資格,向前任雇主確認工作紀錄 |
最後提醒: 無論候選人多討人喜歡、技術多出色,都要向原發證機構核實證書真偽、向前雇主確認工作經歷。謹慎的招募流程,能避免未來無數的麻煩。