這 9 年以來,軟體工程師的工作一直是美國最難填補的職缺之一,沒有意外的話 2018 年也不會有太大的不同。但其實這個問題其實不只是量的問題,更是質的問題。
市場調查機構 Forrester 的報告預測,2018 年雇主願意支付比市場薪資水平高 20% 的薪水雇用具有特定技能的關鍵數位人才,包括資料科學家、高階軟體工程師和資料安全分析師。軟體工程師的短缺不是缺乏自稱工程師的人,而是缺乏真正對軟體深入研究而且經驗豐富的軟體工程師。
懂得怎麼寫程式就是一個軟體工程師嗎?同樣是一種語言,通常一般人不會覺得會講中文就是中文老師,當然會寫程式語言也不會自動變成軟體工程師。雖然這算是一個泛用的職稱,但軟體工程師應該要是一個解決問題的人,將電腦科學的能力應用在系統上去解決問題。軟體工程師要能夠將自己的想法轉譯為機器能夠理解的語法,而且不只要能夠執行別人的想法,還要有自己獨創的想法。這些想法不只是自己運用,還要能規模化的複製到其他地方。簡而言之,軟體工程師是用程式解決問題的人而不是寫程式的人。
現在雇主缺乏適合的工程人才可以聘僱,招聘上前 5 嚴重的問題依序是應徵者缺乏經驗、應徵者缺乏技術能力、應徵者薪水要求太高、應徵者缺乏軟實力以及應徵者沒受過正規的工程師教育。根據 TekSystems 調查,40% 的資訊科技領導人和專家表示他們的組織很努力地在聘請資訊科技人才,但職位缺口卻一直沒有被補足。
要求每個有工程師潛力的人接受 4 年的正規電腦科學教育不是一個太實際的解答,甚至這樣也不能解決問題。正規的電腦科學教育是一個基礎,但是運用電腦科學的能力來解決問題是需要經驗和手把手教起來的。現在業界的技術非常複雜,有許多不同的領域,包括人工智慧、機器學習和整合測試等等。除非刻意去找專門在教這些專業的特別課程,不然正規教育中不太可能會教這些內容。
國際資訊科技獵人頭公司 Kyyba 的執行長 Ganesan 表示,許多中小企業並未提供在職訓練,而是希望員工能立刻發揮即戰力,但這些能力卻是學校沒有教也教不來的。這樣的問題不僅僅發生在美國,也發生在台灣和世界各地。這些要求軟體工程師能夠立刻登板救援的公司,正在加速人才的短缺並推高軟體工程師的薪水。這些公司可以採取一些方案來獲得適合的工程人才,例如招募值得培養的工程人才,在內部提供指導或找外部訓練;或是提供需要額外正規教育的人才獎勵金。
但更大的問題在於,儘管職場需求越來越大,美國就讀電腦科學相關科系的人卻越來越少。這個問題美國比亞洲嚴重的多,因為像台灣等以電子業為主力的國家理工背景的人總是不虞匱乏。舉例來說,中國人口大約是美國的 4 倍,但 STEM(科學、技術、工程和數學)畢業生人數卻是美國的 9 倍。
STEM 畢業生的數量減少的確影響人才短缺,但絕對不是唯一的原因。整體上來說,雇主錯誤的期待、公司缺乏內部訓練計畫、越來越複雜的業界領域、接受正規教育的人數不足以及人才欠缺解決問題的經驗等複雜的因素綜合起來,才是問題的全貌。