程序員是一門靠手藝吃飯的工做,最根本的就是技術能力。從初級到高級,從高級到資深,從資深到架構,就像爬樓同樣,站的越高須要看到的視野越開闊。30歲前程序員靠體力,30歲後須要靠腦力,須要靠技術視野打開更廣闊的職業生涯。程序員們很苦惱,技術層出不窮讓人目不暇接,須要不停學習新的技術避免被淘汰,可是僅僅靠學習新技術就行了嗎?所謂的技術視野究竟是什麼,又如何去提高呢?前端
首先須要明白作一件事情必定須要必定的驅動力,那麼對於提高技術視野的驅動力在哪呢?git
興趣
興趣愛好是最好的老師,因此興趣是第一驅動力。若是你對一門技術充滿好奇心,你必定想盡辦法弄清楚它的原理,而且火燒眉毛的進行實踐。
谷歌有一個20%的計劃,規定員工能夠拿出20%的時間從事本身興趣愛好的事情。因而從中誕生了Gmail, Google Glass等創新性的產品。這些產品的誕生第一原動力就是興趣愛好!程序員
態度與使命
興趣不等於工做,平常工做每每枯燥乏味讓人提不起勁,這時候靠什麼支撐,能夠多想一想本身的態度和使命。每一件事情作完後能夠反思,是否用了100%的能力,不要留有遺憾。作事也須要有使命感,好比阿里的"讓天下沒有難作的生意"、騰訊的"科技向善"、美團的"Eat better, live better",每一家偉大公司都有一個偉大使命,讓你的平常工做和公司使命關聯起來,瞬間是否是以爲本身在從事一項拯救地球的事業。算法
機遇和危機
吳軍在<浪潮之巔>一書中描述了科技行業在過去幾十年的巨大變化,基本上每隔十年都會迎來一次科技浪潮,90年代是PC時代產生了微軟,00年代是互聯網時代產生了谷歌、百度,10年代是移動互聯網時代產生了Facebook、微信,下一個十年就在眼前,沒有人能夠知道將來十年的技術方向是什麼,也許是人工智能? 是AR,VR? 是腦機聯通?
對於程序員而言,技術的浪潮迫使你們要不斷學習,若是不能成爲時代的弄潮兒就會被後浪拍在沙灘上。舉個前端技術的例子,最開始是HTML+CSS++JS三件套,後面JQuery解決瀏覽器兼容問題,而後出現MVVM框架Backbone,再到目前三大框架React、Vue、Angular,同時還有NodeJS可讓前端從事部分後端工做,跨平臺從hybrid到RN到Flutter,平臺從PC Web到移動端,再到小程序再到PC桌面端。能夠看到短短10年內前端技術就發生了翻天覆地的變化,若是你不能緊跟技術的變化,那麼很快就會被淘汰。小程序
求知慾
這個和興趣驅動力是同樣的,要提高技術視野就須要本身永遠保持對新事物的好奇心,要對新技術保持敏感度,若是聽到不了解的事情要有興趣弄明白,興趣永遠是最好的考試。
保持和外界交流的渠道,例如參加公司行業的會議、培訓,普遍的閱讀,多多跟蹤領域內有名的行業專家的博客,關注行業著名的技術會議,例如Qcon、GMTC、Archsummit,也能夠了解大廠的開發者會議例如WWDC、Google IO、Facebook F8等等,這些會議資料都是對外免費開放的。後端
避免捨近求遠
你們每每會追求高大上的酷炫技術,但不少時候都是淺嘗輒止瞭解不深刻。其實不少開拓技術視野的機會就在身邊,例如咱們都會用的git代碼倉庫,裏面涉及的Graph的存儲、index技術、文件系統等等。咱們能夠多多觀察平常接觸的技術,挖掘其中的實現原理,每每能夠開拓你的視野。
參與開源社區也是提高技術視野的一個好辦法,能夠從平常常用的框架入手,經過提issue或者PR參與進去,加入前期的討論必定會有幫助。瀏覽器
追求極致
對於技術須要精益求精,遇到問題不要簡單知足於經過Google 或者 Stack Overflow找到解決方案,而要弄明白具體緣由。每每平常工做中瑣碎的問題中潛藏着很多能夠挖掘的技術點,遇到問題不逃避,問題背後多是你巨大的盲區,解決這個問題,將意味者你掌握一個新的領域。
常常重構系統,每次重構都是漸進式的,每次重構都要追求比之前更好,在重構中可以採用新的技術、新的架構,從而擴充本身的知識體系。微信
加深對技術的理解
每個技術都是爲了解決某些問題而產生的,對於每項技術都應該瞭解其背景,瞭解其試圖解決的問題域和了解技術如何解決這些問題。例如在多平臺跨端這個問題上面,RN的出現就解決了原來Hybrid方式依賴瀏覽器渲染慢、不夠流暢的問題,因而經過Virtual Dom渲染原生組件提高了渲染效率和用戶體驗。Flutter在此基礎上更進一步,直接基於自身跨平臺的渲染引擎來繪製UI,解決了RN在多平臺體驗不一致的問題。
在調研學習一項技術的時候,能夠代入思考,技術提高之關鍵點先思考,後對比,而後反思,不少時候思路比實現更重要。網絡
舉一反三
任何新技術不是空中樓閣,要了解技術血緣關係和演進的歷史,由點到面造成知識圖譜。不少時候技術也是跨學科,例如神經網絡算法和生物學實際上是頗有淵源的,目前大熱的神經網絡系統最初的設計靈感就是來自人類大腦神經元的鏈接方式。架構
一個好的團隊氛圍可讓提高技術視野變得事半功倍,須要打造學習型團隊
• 鼓勵團隊成員瞭解和學習前沿技術,並樂於分享
• 鼓勵同窗不放棄,遇到問題不是簡單繞過,並且須要努力弄明白深層次緣由
• 學習與實踐結合,將新的技術應用於項目中
• 團隊的成長就是你的成長
Github: 碼農交友平臺,提高視野、交友學習不二之選
國內知名的會議:
國外知名開發者大會
國內外知名公司博客
有興趣同窗能夠關注微信公衆號奶爸碼農,不按期分享投資理財、IT相關內容: