摘要: IT和一些低級別的編程工作最終會消失嗎?這個工作是一個巨大的即將破裂泡沫嗎?本文作者對此做了詳細的分析。以下是譯文。 一位朋友最近向我提了個問題,這個問題我曾經在不同的論壇上聽到過,雖然問題的形式不太一樣: “你認為IT和一些低級別的編程工作最終會消失嗎?這個工作看起來有點像一個巨大的即將破裂泡沫。我認為,科技和低水平計算機科學相關工作能夠“受人尊敬”以及保持高薪的唯一原因是這個行業中充斥著晦澀難懂的專業術語和公眾對計算機的無知,而這兩種情況在未來的10年裡都將消失。”
作者:Tyler Elliot Bettilyon
摘要:IT和一些低級別的編程工作最終會消失嗎?這個工作是一個巨大的即將破裂泡沫嗎?本文作者對此做了詳細的分析。以下是譯文。
一位朋友最近向我提了個問題,這個問題我曾經在不同的論壇上聽到過,雖然問題的形式不太一樣:
“你認為IT和一些低級別的編程工作最終會消失嗎?這個工作看起來有點像一個巨大的即將破裂泡沫。我認為,科技和低水平計算機科學相關工作能夠“受人尊敬”以及保持高薪的唯一原因是這個行業中充斥著晦澀難懂的專業術語和公眾對計算機的無知,而這兩種情況在未來的10年裡都將消失。”
這個問題既跟技術工作的未來相關,也是對軟件工程領域誤解的一個常見例子。雖然這個行業裡確實有很多“晦澀難懂的專業術語”,但其中也存在著相當多的難題正等待著具備相應技能的人去解決。一些軟件相關的工作正在慢慢地消失,但真正具備一定經驗和知識的程序員們將繼續會受人尊敬,也能拿到較高的報酬。最近的AI研究員薪水大爆炸和相應人才的缺乏正是印證了這一點。
在不斷變化的技術環境中保持相關性可能是一個挑戰。看看當前那些用來取代程序員的技術,我們就能夠預測有哪些工作在將來可能會消失。此外,要預測薪酬和技能需求的變化,應該把未來會有越來越多的人學習編程這個情況考慮進去。正如Hannah所指出的那樣,“公眾對計算機的無知”使得會編程的人的工資很高,而公眾對計算機的了解會越來越深入。
持續向著商品化發展
對自動化取代人類的恐懼既不新鮮也沒有根據。在任何一個領域,特別是在技術領域,市場的力量都會推動企業走向自動化和商品化。“Gartner炒作週期報告”就是對這種現象進行情景化的一種方式。
2017Gartner炒作週期
隨著時間的推移,一些特定的想法和技術最終必將走向自動化這個“生產力高地”。縱觀歷史,我們可以得出結論,自動化有能力摧毀特定的就業市場。在不同的行業,從作物收割到汽車裝配技,先進的技術將不斷增強甚至取代人力,進而降低成本。一位教授曾經在編譯原理課上這樣說:“以紡織業和鋼鐵行業為例:你是要創造機器,還是要操作這些機器?
在這個比喻中,“機器”是指計算機編程語言。這位教授真的在問:你想用JavaScript創建網站,還是要構建支持JavaScript的V8引擎嗎?
今天,網站的創建可以用WordPress或其他平台來自動進行。而另一方面,V8正在成為越來越多解決開源研究問題的競爭對手。編程語言會突然流行起來,也會慢慢衰敗下去(現在還有多少Fortran相關的職位呢?),但總是會有人去創造下一個編程語言。幸運的是,編程語言是用編程語言自己來編寫的。作為一名軟件業中的“機器操作員”,你將走上一條“機器創造者”的道路,而過去的鋼鐵工人並非如此。
層出不窮的編程語言、解釋程序和編譯器告訴我們,每一個破壞工作的機器也帶來了改進、維護這些機器的工作機會。儘管越來越多的工作崗位已經不復存在,但人類歷史上還沒有出現過一個集體訴說“我們沒有任何工作可做”的時刻。
擺放保齡球球瓶的人
商品化正面向我們所有人走來,而不僅僅針對軟件工程師。縱觀歷史,人類的勞動一直被非人類所取代,或者是所需的人數減少,以及所需掌握的技能要求降低。自動駕駛的汽車和卡車 這個當前最時髦的東西正說明了這一點。如果創造和自動化這種循環反復是生活中存在的事實,那麼接下來要回答的問題自然是:哪些工作和行業會面臨風險,而哪些不會?
誰把誰自動化了?
AWS、Heroku和其他類似的託管平台已經永遠改變了系統管理員和DevOps工程師這樣的角色。互聯網企業過去完全需要有自己的服務器管理員,包括:精通Linux的人,會配置Apache或NGINX服務的人,一個不僅會在物理上連接服務器、路由器和所有其他物理組件,還能夠配置路由表以及所有讓服務器在互聯網上可訪問的軟件的人。儘管由人來操作更加專業一點,但AWS正在淘汰其中的一些技能,特別是那些無需多少經驗水平以及物理側方面的工作。雖然亞馬遜(包括Netflix和Google)在網絡基礎設施方面擁有豐富的專業知識,但在中小型企業中這方面的需求要少得多。
SalesForce、Tableau和SpotFire等“商業智能”工具也逐漸開始侵占原本由軟件工程師佔據的空間。這些系統減少了對企業內部數據庫管理員的需求,但同時也增加了把SQL作為通用技能的需求。它們減少了對企業內部報表製作技術的需求,但是增加了對“集成工程師”的需求,因為他們能讓數據自動地從企業流向第三方軟件平台。之前由Excel和Spreadsheets主導的領域越來越多地被像Python或R這樣的腳本語言所主導,並朝著用SQL進行數據管理的方向發展。有些工作已經消失,但是對編程人員的需求總體上還在增加。
數據科學這個實際的案例在一定程度上跟軟件商品化非常類似。Scikit.learn,Tensorflow和PyTorch都是通用軟件庫,開發者使用這些庫可以很容易地構建機器學習應用程序,而無需從頭構建算法。實際上,人們可以使用很多不同的機器學習算法來運行數據集,而這些算法可以有許多不同的參數集,並且使用者無需深入理解算法是如何運行的(雖然這麼做並不明智,但這是有可能的)。我可以打賭,商業智能公司將在未來的幾年內將這些算法集成到自己的工具中。
數據科學在很多方面就像是5-8年前的網頁開發。這是一個蓬勃發展的領域,只要懂得一點知識你就能入門。隨著網站開發培訓班的關閉,數據科學培訓班如雨後春筍般地冒了出來。Kaplan曾經購買了原來的網絡開發培訓班(Dev Bootcamp)並啟動了數據科學培訓班(Metis),現在決定關閉DevBootcamp,但繼續維持Metis的運營。
內容管理系統是讓企業自動遠離對軟件工程師需求的流行工具之一。SquareSpace和WordPress是當今最受歡迎的CMS系統。這些平台的存在顯著降低了那些只具備一點點前端Web開發技能的開發者的價值。事實上,現在製作網站和上網的障礙已經大大降低,沒有任何編程經驗的人每天都在發佈網站。他們不是在為互聯網提供數十億人訪問的互動網站,而是為自己的企業搭建網站,為客戶提供他們所需要的信息。一個包含如何找到企業以及如何與企業聯繫的可愛登陸頁面,對於當地的餐館、酒吧或零售店來說已經完全足夠了。
如果企業的主要業務並不是“互聯網業務”,那麼,在互聯網上搭建一個網站並不簡單。因此,曾經一度非常繁榮的網站承建商這個行業,雖然它們能幫你在互聯網上快速建立起一個簡單的網站,但也開始變得越來越不賺錢。
最後,在這種情況下,無視計算機的物理特性就是一種自大。用Mike Acton的話來說:“軟件並不是平台,硬件才是平台”。軟件相關人員至少要學習一點計算機架構和電氣工程知識才是明智的。消費級量子計算機的出現將會改變軟件工程的一切。
量子計算機還很遙遠,但人們對GPU以及並行化趨勢的興趣正日益增長。CPU速度的提高已經停滯了好幾年,但機器學習和“大數據”的飛速發展不可抑制。隨著處理大型數據集的需求越來越多,OpenMP、OpenCL、Go、CUDA和其他一些並行處理語言和框架將成為主流。為了在短期內提高競爭力,全方位的並行化是將成為主流,這不僅僅體現在操作系統上,還體現在基礎設施和視頻遊戲等領域中。
每個人都在學習編程
網站無處不在。2017年的Stack Overflow調查報告指出,約有15%的專業軟件工程師都在“互聯網/網絡服務”公司工作。據勞工統計局預測,網絡開發崗位人數的增長速度將繼續高於平均水平(2014年至2024年平均水平為24%)。由於該行業的的知名度較高,人們紛紛關注起“技能差距的彌補”上。編程培訓班現在幾乎只教網站開發,而網站開發在線課程也已經搶占了Udemy、Udacity、Coursera和其他一些在線課程的市場。
網站開發技術的自動化程度越來越高、大量入門級網站開發程序員的湧入,使得有人預測網站開發對於軟件開發人員來說將成為一個“藍領”市場。有人進一步指出,推動該市場的藍領化是大型科技公司的一個戰略。而其他一些人則說,我們正在為另一個即將破裂的泡沫而努力。
對特定技術的需求發生變化並不是新聞。語言和框架的發展總會遇到上升期和下降期。目前的網站開發(“JS為王”)會重走2000年初的網站開發之路(還記得Flash嗎?)。在決定給自己貼上“React開發者”這個標籤之前,請記住,曾經有人認為自己是“Flash開發者”。把自己的事業限制在一個特定的語言、框架或技術上就像是一場賭博。當然,要預測哪些技術能保持相關性是相當困難的,但是如果你想迎難而上,那麼我建議你以“Lindy效應”為依據,並選擇像C語言這樣已經經受住了時間考驗的東西。
未來一代年輕人的技術素養肯定更高,這是X一代甚至千禧一代的人們所不具備的。同時,CMS工具也會變成更好,以方便年輕人更好的利用這些工具。這樣,更多的年輕人會進入這個行業,從而導致低水平IT和網絡開發技能的價值大大地降低。另外,高中也會開始提供計算機科學和編程方面的課程,一些受過良好教育的高中生可能會進入勞動大軍,在畢業後立即成為一名編程實習生。
另外的一大批編程新軍是MBA和數據分析師。曾經的職位描述中要求會用Excel,而現在開始改為會用SQL,或者是熟練使用SQL。諸如Tableau、SpotFire、SalesForce和其他一些基於Web的度量系統將取代電子表格成為報告生成的主要工具。如果這種情況持續下去,那麼就會有更多的數據分析師去學習SQL,因為這比將數據導出到電子表格中處理更簡單。
那些想要轉入IT行業或者想在崗位上更進一步的人來說,在網上學習數據庫和統計類編程語言是一個不錯的選擇。在有了這些新技能之後,他們就可以把機器學習和統計庫方面的庫結合來,把自己定位為數據科學家。
最後,獲得計算機科學和軟件工程學位的人數正逐年攀升。例如,普渡大學宣稱,他們計算機科學課程的申請數量在五年內翻了一翻。康奈爾大學也報導了計算機科學畢業生數量大爆炸的新聞。鑑於軟件的增長和普及,這一趨勢並不令人驚訝。對於年輕人來說,他們很難想像計算機在我們未來生活中充當的角色將越來越小,所以為什麼不研究一些能夠保住我們飯碗的東西呢。
稀缺和期望
在這個行業中,現在有一個很普遍的觀點,認為在大學四年的計算機科學課程中學到的知識大多是沒什麼大用處的。我在培訓班、在線開發商店,以及一些大人物例如Eric Elliott的作品中都看到過類似的觀點。當然,反對意見也很多,有人甚至說:“所有的程序員都應該有碩士學位””。
我的想法跟Eric Elliott一樣,我認為對於編程來說,還是有更多其他的路可以選的,而4年的大學生活可能也不是某些人最佳的選擇。同時,我也同意威廉·貝恩的觀點,即跨學科領域應用的基礎技能對於職業生涯的長期發展來說是至關重要的,而且在大學課程之外還很難找到相關的知識。我以前曾經寫過有關一個有抱負的工程師在漫長的職業生涯中應該學習哪些基礎技能。
不同規模不同形式的編程學校到處都是,並且他們的廣告詞讓人無法拒絕。在那裡,你無需涉及底層細節、算法和數據結構,即可學會編程。然而,雖然斯坦福大學的畢業生確實會與來自Hack Reactor的畢業生爭奪一些工作,但這僅限於在一兩個子行業裡。編程學校和培訓班的學生目前還沒有進入嵌入式系統、密碼與安全、機器人,網絡基礎設施或人工智能等行業的研究和開發工作中去。然而,在像網頁開發這樣的領域中,這方面的發展十分迅速。
一些與編程相關的技能已經開始從“稀缺技能”轉向“期望標準”。推動科技發展的大公司,例如亞馬遜、Google、Facebook、Nvidia、Space-X等等,通常不會招聘對JavaScript只是基本了解的人。AWS每天為數十億用戶提供服務,為了支撐這種負載,AWS基礎架構工程師需要深入了解網絡協議和計算機體系結構,並擁有多年的相關經驗。與其他學科一樣,IT業中也有業餘愛好者和工匠。
這些著名的公司正致力於解決研究性的問題,以及構建某種真正能夠突破邊界的系統。然而,即使在基本的編程技巧越來越普及的情況下,他們仍然很難招到合適的人來填補空缺。能夠編寫算法來預測基因序列變化的人將會受到這些公司的追捧,在未來的價值將非常高。能夠給衛星、航天器和機械自動化編程的人將繼續受到企業的高度重視。這些領域並不適合成為像前端網絡開發那樣的“三個月速成班計劃”。
計算機科學脫胎於“計算機”這個詞,一些人預計,到2025年人們對它會有天生的理解。很可惜,計算機的普及並沒有造就出真正理解數學、計算機科學、網絡基礎設施、電氣工程等學科的新一代。計算機素養與計算機的研究是不一樣的。儘管數學已經存在,但統計學素養較高的人仍然比較少,計算機科學也一樣。Euclid發明了多種算法,其中有一個算法在每次發送HTTPS請求的時候都會用到。但事實上,每次我們使用HTTPS登錄網站的時候,並不會自動了解這些協議的工作原理。
雙峰薪水分佈圖
成熟專業領域的薪水分佈圖往往有兩個波峰:相對較少的人賺取了相當多的錢,他們中大多數人的薪水都很高,但在收入的前1%中卻看不到他們的身影。美國國家法律安置協會(National Association for Law Placement)收集的數據證明了這種情況。大部分法學畢業生的工資在4500美元到65000美元之間,雖然工資很高,但很難跟“頂尖專業人士”聯繫在一起。
擁有法學學位的人的收入分佈圖,來自於美國國家法律安置協會我們往往會認為,所有的法律專業畢業生都有可能成為一家律師事務所的合夥人,而事實上他們有很多的職業方向:律師助理、文員、公共辯護、法官、企業法律服務、合同寫作等等。計算機科學專業的畢業生也有很多的道路可以選擇,從網頁開發到嵌入式系統。由於基本的編程技能仍然是“期望”,而不是“具備”,因此,我猜測編程這個職業的收入分佈圖也會出現類似的情況。
雖然總會有一批IT界人士花費大量的資金來推動技術的發展,同時也會有越來越多的IT中產階級人士為新的以計算機為中心的經濟提供支持。網頁開發人員的平均收入肯定會隨著時間的推移而下降。也就是說,“程序員”的職位總數只會繼續增長。對於那些正在重新定義可能性的程序員來說,他們將繼續獲得頂級工資。
無論你在這個行業中身處哪個角色,從事技術職業就意味著你要活到老學到老。如果你想讓自己的收入出現在第二個波峰上,那麼你可能需要研究如何創造機器,而不是簡單地操作它們。
End.
轉貼自: 36大數據
留下你的回應
以訪客張貼回應