有關程序員的十個預言
作為程序員,我們總是身處于如萬花筒般變化無常的技術世界里。我們可能也是那群能夠最早感知到科技變化所帶來巨大影響的人。然而,面對這一波又一波向我們襲來的技術變革,我們是否也能從中窺見一絲規律,從而使自己更好地應對未來呢?讓我們打開腦洞,預測一下未來10年,程序員這個職業可能發生的變化。
程序員將變得更加全能
許多文章或藝術作品中將程序員的未來描繪得過于科幻或戲劇化,而基于我們看到以及正在發生著的現實,有一點卻是不爭的事實——程序員將變得更加全能。如果你是一名iOS程序員,你一定能感受到最近幾年市場的變化,從對iOS程序員趨之若鶩,到今天所謂互聯網寒冬之下的少人問津,其背后的原因之一竟是市場上數不清的培訓機構,像流水線般生產出過盛的iOS開發人員所致。同樣,對于設計師群體而言,越來越多的公司對他們的要求已從單一的UI設計,轉向能夠同時具備前端開發能力。
變化來得如此之快,很多程序員或設計師都對此抱怨連連,但這些變化卻恰恰反映了所有與技術相關的行業門檻都在不斷降低,以及專業領域間正在不斷地產生融合。借助那些唾手可得的學習資源,以及易發強大易用的工具軟件,未來的程序員將會具備更多專業技能,他們在深入掌握一門編程語言的同時,還可以熟練運用2-3門不同的編程語言以解決不同領域的問題,他們也會努力將自己的技能棧擴展到產品、設計、市場、運維等各個領域,復合型的程序員將會受到更多企業的歡迎。而擁有至少一名復合型的程序員更將成為那些初創企業的標準人員配置。
程序員將更具多樣性
未來的世界將會變得非常有趣,越來越多新興的領域將會出現,而那些傳統行業和專業領域也將被不斷細分,以滿足人們的差異化需求,世界將因此變得更加豐富多彩。而在此過程中,程序員無疑將成為這一變化的主要推動者,而他們的職業也將隨之呈現出多樣化的發展趨勢。今天我們能聽到的很多技術領域的新鮮詞匯,如:大數據,機器學習,云計算,人工智能,VR/AR,區塊鏈,無人駕駛、物聯網等等,未來都將成為可以深入研究的領域和發展方向,它們的深度的和復雜程度也絕非掌握一門編程語言所可以比擬的。過去精通一門編程語言便能通吃各個行業和領域的時代將一去不返,取而代之,程序員將變得更加“專一”,他們會盡可能早地確定自己的專業方向,并花費大量時間,努力去成為某一方面的專家,他們甚至可能不再被稱為程序員,取而代之的,一些新的稱呼將會出現,比如在大數據領域,我們會把那些從事數據分析的程序員稱作數據分析師或數據科學家,同樣的,在其他領域也會有更多新鮮詞匯被用來代表程序員吧。
工具大爆發讓程序員們效率倍增
我們正處在一個工具大爆發的時代,大量開發、設計、協作工具不斷涌現,但我想說這還只是一個開始,越來越多針對細分領域的優秀工具會被開發出來,經過一番廝殺,一批偉大的工具將會出現。這些工具通過充分利用強大的硬件能力而變得更加智能,它們甚至可以替代很多原來必須由程序員完成的工作。未來所有優秀的工具都應該是插件化的,程序員們不會再使用那些大而全的笨重軟件,而是根據自己的需求,通過安裝插件來組合出最適合的開發環境,這也使得程序員們的創造過程變得有趣而高效。
云服務加速創新
另一個巨大的變化則來自云服務,我們已經將云服務比作日常生活中的水和電,但真正能夠通過使用它們創造出優秀產品和服務的,仍然是程序員自身。云服務將能為開發者提供大量即插即用的基礎構件,這使得程序員們不再需要重復發明輪子,再去創造諸如數據存儲、圖像處理、數據加密等基礎服務,一且都將以API的形式在云端開放,基于這些基礎服務,產品的研發與迭代速度都將明顯加快,而成本卻因云服務的按需收費而得到降低,這無疑將加快創新的步伐,相信越來越多優秀的產品和服務會不斷被開發出來改善人們生活的各個方面。
程序員的職能進一步擴展
今天,互聯網行業無疑是程序員最集中的地方,幾乎所有的一切都由程序員創造和驅動。而在這桿互聯網大旗下,諸如云計算、大數據等互聯網技術與思維也正在快速滲透幾乎每一個行業,越來越多有遠見的企業提出了由IT驅動業務發展的公司戰略,IT部門在那些傳統行業中正變得越來越重要,他們不再只是負責信息系統維護的輔助部門,而需要真正理解業務,并推動業務在互聯網背景下的革新。程序員作為IT部門組成的基石,他們的職能在此期間也將得到進一步擴展,他們需要能夠將行業思維與程序思維緊密結合在一起,通過技術手段創造性地去解決企業或行業的痛點。他們可能會在整個產品或系統的生命周期內同時扮演項目經理、需求分析師、設計師、開發人員、測試人員以及運營人員中的多個角色(角色的劃分不再像過去那樣明顯),程序員們也需要能夠掌控全局,而不僅僅局限于代碼的編寫之上。
程序員成為更多人的終身職業
程序員曾一度被認為是一份吃青春飯的工作,很多人甚至感慨,到了30歲自己還在編程會是一件很失敗的事情。但隨著程序員與越來越多行業的深度結合,他們的價值被更多企業認可,甚至變得不可替代,無論在物質上還是職業發展的空間方面,他們都將獲得更穩定的發展,這也使更多的人愿意將程序員作為終身行業。只是隨著年齡的增長,他們可能不再被稱為程序員,取而代之的可能是XX專家,XX科學家,技術總監等等,但他們并沒有脫離程序員的本質,恰恰相反,他們不會像以前那些走管理路線的IT人那樣,輕易地丟棄技術,相反的,他們會更關注并擅長通過編程去解決關鍵問題。他們既是程序員,卻又是超越程序員的行業專家或管理者。
自由程序員將大量出現
近年來,由于一線城市IT用人成本的顯著提高,越來越多的大型企業正在或計劃將他們的IT部門進行拆分,成立專門的軟件服務公司,并將主要開發團隊由一線城市向二線甚至三線城市遷移,這本質上也是IT外包的一種形式。而更多中小企業在沒有自己的研發部門,以及IT經費受限的情況下,也逐漸接受了采用眾包解決企業內部IT問題的方式。隨著猿團、碼市(Coding)、豬八戒等IT眾包平臺的不斷成熟,以及遠程辦公條件的成熟,軟件開發服務將越來越多地由自由程序員或他們組成的開發團隊去完成,程序員的用人市場也將逐漸流向薪資水平總體偏低的二三線城市,自由程序員將會在那里大量出現,他們不再受到地域的限制,大部分人將在家辦公。
而者帶來的另一個變化則是:女性程序員的比例將大大提升。我認識不少優秀的女性程序員,她們完全不比團隊中任何男性程序員差,而且還總是能夠給團隊帶來一些驚喜,比如出于女性視角的優秀建議,以及更富情感的功能設計等等。自由程序員對于女性來說會是一個不錯的職業選擇,由于可以在家工作,她們能夠更好地兼顧家庭,也能根據情況,自由地選擇適合自己的工作時間和工作量。
程序員更加國際化
今年,我參加了一些技術大會,比如云計算大會、架構師峰會等等,在會上我經常可以看到用英文來進行演說的國外技術專家,但他們卻就職于像百度、阿里或華為這樣的國內公司。而我也曾和來自美國、德國、印度、新加坡、馬來西亞等不同國家的程序員一起合作過,大家可以打破地域或語言的限制,為了相同的目標或興趣進行很好的協作。
同時,我們也看到越來越多的主流互聯網企業樂于將他們的核心技術開源,并借助開源社區的力量推動一項技術的發展。今天,幾乎在每個技術領域,我們都能看到2-3個主流開源技術,越來越多的國內程序員也開始參與到這些社區,并成為這項技術的貢獻者。程序員正變得更加國際化,通過與國外優秀程序員的合作,他們可能成長為某一技術領域的專家,而且通過這種國際化的協作,能夠幫助他們建立影響力,從而獲得更多優秀的機會。
出現許多偉大的程序員
在你的心目中,一定會有幾位偉大的程序員,比如Linux之父Linus,Java之父James Gosling等等,他們對軟件領域的貢獻不言而喻,但說到對人類的貢獻,卻可能并不那么顯著。而這一情況很可能在未來發生變化。
遠古時代的人們只能創造出用于獵捕的長矛,而今天借助來自各行各業人們的智慧,我們卻可以創造出高鐵、大型飛機、并探索宇宙。但要更進一步解決人類所面臨的那些難題,光憑某一群聰明人的智慧可能已經很難實現。未來那些偉大的程序員,他們的貢獻可能并不在于創造了一門新的程序語言或是一款優秀軟件產品,而是利用他們開創性的思想,借助諸如大數據、人工智能等技術,幫助人類戰勝疾病、能源、饑餓等世界難題。想象一下,未來的一天,某一領域的諾貝爾獎可能同時授予一名生物學家和一名計算機科學家,因為他們一起攻克了今天我們無法戰勝的疾病。
編程全面普及教育
國外越來越多的學校已經將編程作為一門必修課,納入中學甚至小學的教育體系之中。國內也有越來越多的家長開始讓孩子從小學習編程。編程并不是教會一門開發語言那么簡單,它讓人們得到 一種新的思維方式,而這種思維方式如果能在更小的年齡階段掌握,會讓孩子們長大后更適應未來的工作和生活。
同樣的在專業教學領域,我們也會看到大學內的相關科目設置將呈現多學科交叉的形式,這將更加貼近于實際工作的需要。新一代大學生可以同時選擇學習UI設計、編程、大數據、機器學習、人工智能等學科中的兩個或者任意多個的組合。更多企業也會向大學生們提供諸如訓練營這樣貼近實戰的培訓。而更多希望自學編程的人,則可以借助在線視頻、互動教學平臺、培訓班等方式來學習編程。總之,你將看到越來越多通過不同途徑掌握編程的人出現在我們身邊。
程序員的未來會怎樣,短期內,它仍會是一個各行各業都會需要的熱門職業,但長期來看,隨著程序員這個職業本身的自我進化以及被納入基礎教育所產生的放大效應,未來,我們可能再也看不到傳統意義上只會寫代碼的程序員,取而代之的,每個人都會是一名程序員,他們在各自專注的領域內,利用編程解決問題,實現目標,進行創造。
來自:http://www.techug.com/post/10-prediction-of-programmer.html