軟體工程的人才缺口真的那麼大?

Pixabay
川普勝選後,美國再次掀起軟體人才缺口的口水戰,科技公司要求開放更多工作簽證,但保守派則指工作簽證是大企業用以雇用低薪外勞所鑽的法律漏洞。本文作者認為上述兩方都只對了一半,真正的問題出在:IT諮詢公司。

隨著全球科技業產值持續成長,傳統產業在大幅資訊化與自動化的變革下,許多產業之勞力密集工作機會未來十年內都有可能被軟體工程師取代。

為因應此潮流,世界各地都有許多開發者集訓班(Developer Bootcamp)如春筍般冒出,最大宗如General Assembly已集資上億美金,並在全球包含舊金山、紐約、倫敦、香港、新加坡、雪梨等18個城市設立據點授課。而線上課程平台如Coursera、EdX、Udemy等也紛紛推出開發者相關課程和證書。

然而,川普在美國勝選後,美國再次掀起了軟體人才缺口的口水戰。過去,許多科技業大老如比爾蓋茲曾在國會公聽會上要求美國國會開放更多工作簽證,好讓美國科技業可以聘僱外國高知識人才來彌補美國的人才缺口。同時,許多美國保守派對於科技業大老的說詞存疑,並指出美國工作簽證是大企業用以雇用低薪外籍勞工來取代美國勞工的法律漏洞。

為什麼兩方的口徑會差這麼多呢?

事實而言,美國過去十年內的科技業發展已經產生了極大的數理人才缺口。而身為全球人才磁鐵的美國,其博士研究生超過半數為外國人。可見,若美國不提供外籍人士工作簽證,美國將會失去其培養出的許多高知識人才。

從數據上看來,兩方人的說法都對了一半。美國過去數年超過二十萬的H1b工作簽證申請表中,其中有一大部分是來自於微軟、Google、Facebook等科技公司,而申請對象年薪幾乎都破十萬美金(註:美國平均家庭收入不到五萬美金)。然而,申請數量最多的公司卻不是科技公司,而是以外包業務為主的IT諮詢公司(IT Consulting),最大宗為來自印度的InfoSys與Tata Consulting。若比較薪資水準,這些IT諮詢公司申報之平均薪資約7萬美金,遠低於美國科技公司的薪資水準。事實上,美國每年有許多外國留學生畢業後找不到工作,不少學生在飢不擇食的情況下進入這些IT諮詢公司工作:IT諮詢公司一方面用 假造的履歷和謊報薪資 (事實上年薪只有四萬~五萬美金左右,遠低於呈報給政府之資料)去幫找不到工作的外籍學生申請工作簽證,而學生則提供廉價勞力,撐到拿到簽證後再跳槽。

由於在美國IT諮詢公司申請工作簽證數量超過美國科技公司,而其履歷造假和謊報薪資的情況又層出不窮,已引起美國移民局與勞工局的關注。美國保守派以此作為把柄,對美國聯邦政府施壓刪減工作簽證名額。 (川普當選後,工作簽證名額可能遭斬)

至此,我們不得不懷疑,同樣是軟體開發,為何美國科技公司的外籍雇員的薪資會是IT諮詢公司的兩倍以上?而在美國科技公司大喊徵不到工程師的同時,為何這些IT諮詢公司卻可以用低工資進口廉價軟體開發勞力?

此議題論述上的歧異性,其實出在「軟體開發者」(Software Developer)一詞。事實上,開發軟體並不是單一技能,就好像蓋水壩跟蓋平房所需技能不同。其實世界到底缺少的是甚麼,絕對不是「Software Developer」這麼簡單。

「外包吧!」

達康泡沫前後,當時科技業有種說法,那就是再過幾年當中國和印度等開發中國家有足夠軟體開發人才後,所有軟體開發工作(指Coding)都會被外包。

他們說對了一半。

不管是九零年代末期還是當今,外包軟體開發業務,在美國稱為軟體開發諮詢(Software development consulting)或IT諮詢(IT Consulting),其開發業務從前端的Javascript、行動端的Android與iOS,到後端的Ruby on Rails、Node.js、Python/Django、Java、.NET等包山包海,若要使用現成的Wordpress、Drupal、Joomla系統,也難不倒他們。

IT諮詢為什麼叫作「IT」呢?

因為絕大多數IT諮詢公司的業務都是服務非科技公司,而設計的解決方案通常都是幫助非工程組織管理組織內的一些資料和流程,大部分解決方案(如行事曆、聯絡人、內用搜尋引擎、自動郵件系統、內容管理系統等)都已經有先例以及大量的現成系統可以使用。

IT諮詢的目的在於用簡單的科技去解決一些組織中的問題,並非在於高複雜度之理論應用以及開發新軟體技術。論管理,由於IT諮詢公司設計的解決方案通常規模較小且複雜度低,通常對於科技負債(Tech Debt)以及開發品質的管理多便宜行事。

嚴格上來說,IT諮詢從事的開發工作通常缺乏理論複雜度或原創性,難以算是高知識技工。因此,不管是在台灣還是在國外,此類軟體開發人才在徵才網站上隨便一抓一大把,早已人滿為患。在矽谷、紐約、倫敦等,更有許多來自烏克蘭、印度、阿根廷、哥倫比亞等國家之IT諮詢公司削價搶案,可見市場早已供過於求。

科技公司的軟體工程師呢?

當然,上述之IT諮詢自然不是科技產業的完整面向。先前提過IT諮詢公司的客戶幾乎都不是科技公司,那我們當然要探討一下科技公司的人才需求。

先前提過,美國H1b申請名額除了IT諮詢以外,就是大型科技公司。既然科技公司雇員的年薪上看六位數(美金),那其雇員標準自然不太可能和低價搶案IT諮詢公司一樣。而事實可證,美國科技公司如微軟、IBM、Google、Facebook、甲骨文、蘋果在全世界總共雇用數十萬名工程師,而絕大部分不但沒有外包至其他國家,反而多數集中於公司總部。以Google與微軟為例,其Mountain View以及Redmond的總部各擁有數萬名軟體工程師。美國大型科技公司的工程師,絕大多數仍出自於美加與世界各地的知名理工大學。

這告訴我們,大型科技公司所需要的軟體工程師並不是容易外包至開發中國家的軟體開發工作。

科技業持續成長到底創造甚麼工作機會?

相較起十五、二十年前的網路業,今天的科技業的工具更齊全、各類自動化做得更完整,但所需要處理的資料量更大、資料種類更多元,最重要的是取得資料已不足以為其,要從資料中萃取「知識」才有意思。

上一個科技業世代的技術團隊從公司草創就必須專注於架設伺服器主機、防毒防入侵、資料庫優化,並且在系統前端與後端的一切細節都必須細心打理。今天,雲端運算簡化伺服器管理、雲端與分散式資料庫簡化資料庫管理,而過去一大堆的使用者介面和資料傳輸介面細節,今天因為前後端整合的各種元件和模組而大幅自動化。

整體而言,今天的科技團隊,一人的產能要說是達康世代十人的產能都不誇張,而這被裁撤掉的九人,恰巧都是IT諮詢的工作。

如今,科技業的重點已轉移到從資料中萃取「知識」的技術,簡單而言,這就是許多資料探勘和機器學習的目的。今天的軟體工程師不一定要懂防毒設定,但是其不能不懂該產業領域常用的資料結構、演算法、服務架構以及設計理念。由於科技業與各類傳產已深度結合,從事開發生物資訊系統、化學資訊系統、倉儲物流機器人、醫療機器人、智慧型教學系統等不同產業面向,都需要不同的產業專精軟體知識背景。

因此,在今天的科技業中,相關產業的軟體理論與實務知識重要性遠大於傳統的IT開發能力。

為就業而學習軟體開發的迷思

近年來,許多非工程背景的人進入了開發者集訓班或在線上學習軟體開發,無非就是希望藉此提升職場競爭力。 當然,學習軟體開發本身是一門有用的技能,就好像學習會計、學習平面行銷、學習專業寫作都有助於提升個人競爭力。

但是,許多人相信的是軟體開發將會幫助自己進入科技業,並且在職場上徹底改頭換面,這想法其實有點太過於簡化了一位軟體工程師的工作內容。

事實上,多數開發集訓班和軟體開發線上課程的授課內容如行動開發、前後端開發、資料科學課程等,都是相當基層的IT開發工作,不但未來工作很容易被外包。而當下一代的內容管理系統、雲端平台、服務API問世時,勢必會帶來另一波的工作自動化,屆時這些基層的IT開發工作勢必會受到衝擊。

至此最大的盲點,就是太多人誤以為理工畢業生從事軟體開發,因此軟體開發就是理工學院的精隨。事實上,出自理工學院的軟體工程師,在求學時很少在學習軟體開發,而多專注於計算機理論以及各領域、各產業的設計理念。在知名理工學院,教授只會在課堂上提及允許的程式語言與架構,一兩堂課之後便會要求所有學生能夠用該語言完成課堂的專題與作業。

若以國文類比理工,那理工學院教的是創意和專業寫作,而軟體開發的語言和架構只是基礎文法。若以為學了基礎文法就可以進行專業寫作,那誤會可大了。

今天,全世界科技業確實需要更多軟體工程人才,但這些高知識技工是不可能在三個月、六個月內訓練完畢。反觀,已經人滿為患的IT諮詢市場,因為更多的軟體集訓班與線上課程畢業生湧入市場,產業的毛利與員工薪水將難以大幅成長。目前IT諮詢人才被錯置成軟體工程人才,短期內造就許多求職人口,但並沒有彌補科技業的人才缺口。若從長計議,科技產業仍需鼓勵更多人才進行完整的理工理論與實務訓練,沒有捷徑可走。

蕭瑟寡人

費德智庫共同創辦人暨專欄作家。沒事看書充飢、有閒寫文聊聊時事。現專注於教育科技、社會企業、科技創業與創業輔導。

追蹤我們