1. 程式人生 > >馬拉松式學習與技術人員的成長性

馬拉松式學習與技術人員的成長性

你的朋友圈裡總有一些人具有某種特殊的技能點。比如我的一位鐵哥們波仔,就是這樣的人。

波仔,江湖人送外號波哥,是我認識的程式設計師裡面最能跑的。國內的馬拉松賽事,他幾乎一次不落地參加。只要哪個城市舉辦馬拉松比賽,不管多遠,他都一路飛奔過去。這不,前兩天剛冒雨跑完了無錫的馬拉松。雖然淋得跟落湯雞似的,但感覺就一個字——爽!

波仔年輕的時候曾是專業運動員,有著令無數少女尖叫的健康體魄。後來做了程式設計師,雖然跑步從此成了業餘愛好,但仍然威風不減當年,很隨意地就跑能個半馬,緊接著再跑個全馬,都是小菜一碟。我們搞程式的,誰沒經歷過沒日沒夜加班的日子。常言道,身體是革命的本錢。這說起來,好的身體也是程式設計師的核心競爭力之一呢。

義大利「文藝復興之父」彼特拉克曾經說過:「肉體和心智的能力必須大到足以滿足文學活動和妻子兩方面的需要。」如果換做程式設計師的角度,這句話應該修正一下:肉體和心智的能力必須大到足以滿足熬夜寫程式碼和女朋友兩方面的需要。當然啦,這個說法也還遠沒有表達出生活真實的複雜性和嚴峻性。

所以,跑步是鍛鍊身體很好的手段。但是馬拉松,除了鍛鍊身體,同時也是對人性的考驗。一件接近身心極限的事情,你的身體能否承受,你的精神能否堅持下來。

波仔多次邀請我一起去跑個馬拉松,都被我毫不猶豫地拒絕了。這身體條件,咱不能強求。沒有準備的極限運動還是比較危險的。但是,對於有能力跑下來的朋友,我在精神上表示羨慕和支援。

有時候我會把學習比作跑步。對於類似程式設計師這樣的職業,新技術更新換代的速度確實比較快,這需要你總是保持在學習的狀態。

應該說,在一般情況下,程式設計師們對新知識進行學習的能力都還是比較強的。工作中碰到以前沒做過的東西,只要能在網上找到對應的開發文件,仔細讀一讀,再看幾個 Demo,就基本能解決問題了。這種規模的學習過程,一般幾天就搞定了,可以看做是一次「短跑」。

當然,這種「短跑式」的學習過程,也只對於「一般性」的情況有效。而對於一些「專業性」的領域,我們就需要「馬拉松式」的學習姿態了,做好充分的準備,並且長時間投入,半年,一年,甚至更長。

實際上,程式設計這門工作,門檻說低也不低,說高也不高。很多學歷不高或者非科班畢業的同學,也都能把這份工作從事得很出色。但是按技術領域來區分的話,程式設計還是可以分為「一般性」和「專業性」兩大類的。對於「一般性」的技術領域,你只要具備一點計算機基礎,懂得一門程式語言,能理解業務邏輯,就能勝任了。但是「專業性」的技術領域就不一樣了,除了計算機基礎知識之外,你更需要掌握一整套知識體系,可能對數學知識還有特殊的要求。這樣的領域有哪些呢?比如說,分散式系統,資料庫理論,音視訊處理,3D遊戲引擎,作業系統和虛擬化技術,大資料處理,還有最近火爆的人工智慧技術,等等。

對於「專業性」的這些知識,如果你打算涉足其中,就得需要拿出跑馬拉松的精神了。據說馬拉松跑到一半,很多人就會產生強烈的「想放棄」的想法,後半段就靠毅力支撐了。「馬拉松式」的學習過程也是一樣。可能一門「專業性」領域的知識,最開始吸引你的是興趣,它非常有意思,可能聽起來還很酷,但隨著研究的深入,你就不可避免地遭遇很多沮喪時刻。你會發現,你學得越多,未知就越多。這時候你肯定會產生放棄的想法,甚至對自己是否適合做技術產生一絲懷疑,但是沒有關係,每一個在某一領域走得足夠遠的人都會碰到這樣的情況。只要你咬牙堅持下去,隨後你得到的獎賞必然是恍然大悟或醍醐灌頂的感受。我相信 ,這與一場馬拉松終於跑到終點的勝利喜悅是一樣的。

有長跑經驗的人都知道,真正能在馬拉松上取得好成績的人,基本上都是勻速跑者。開始跑得多快並不關鍵,關鍵在於「後勁」足不足。我們的職業生涯也是一樣,不管是程式設計師還是其他職業,這個道理都適用。

我時常在想,不同技術人員之間的區別到底在哪。是在於工作經驗,還是在於他們的聰明程度,或者是在於他們是否有名校的教育背景?為什麼本來基礎差不多的人,多年之後會產生巨大的差異?與此相關的一個很實際的問題是,我們在招聘新員工時,到底應該看重他們的哪些特點?我最後想到的答案是,決定不同技術人員之間的真正分野,在於「成長性」,也就是持續學習和提高自身的能力。換句話說,「後勁」足不足。一個人的成長過程,什麼都可能隨時變化,但成長性本身不應該有絲毫減弱。

設想一個稍微極端一點的情況,假設你要自己創業,現在要物色合夥人的角色。你會怎麼選?你必須考慮他們的成長性。你放眼四周,也許你周圍的很多朋友都能幫你解決當前的問題。但你物色的人選,他們能否隨著公司一起成長?他們身上有沒有自我超越的基因?都說找合夥人比找物件還難,的確如此。跟不上公司發展節奏的合夥人,註定將是一場災難。

而創業公司的 CEO,作為掌舵人,他自身的成長性其實要求更高,因為這決定了公司和團隊的未來,責任極其重大。Facebook 的 CEO 馬克·扎克伯格,每週都堅持讀一本新書,就是為了保持自己的成長性。有些自私的老闆,他們忽略了這份責任,可能認為「我給你發工資你給我幹活」是理所當然的事情。但是,確保團隊成長的責任,和公司發展的責任,同樣重要。

實際上,凡是帶團隊的人,都有這份責任。如果你自己混日子,不能一步步成長,那你的團隊成員又怎能獲得突破自己的機會呢?職位越高,責任越大。當你的 leader 或某個機遇把你推到那個位置的時候,你為進一步的成長做好準備了嗎?估計很多人是想不到這一點的。還聽說有些極端的團隊 leader,甚至整日擔心下屬會超過自己,不但不給團隊成員創造成長的機會,還打壓下屬。真是不理解這些人是怎麼想的。所以,跟對人很重要。

投資人是否會投資一家公司,看重的是公司的成長性;我們買股票也是一樣,都會選擇成長性好的股票。甚至女孩子找老公,也希望找個「潛力股」。所有這些選擇,都是在追求「成長性」帶來的升值。

只要想明白這一點,我們就不再會為一些不必要的擔憂而煩惱。比如,很多人擔心年齡大了就再也做不好技術,或者擔心年齡大了之後的職業發展問題。顯然,年齡並不是決定成長性的關鍵因素,這頂多是一個心理因素。成長性更應該是一個人的本質特徵,是他所具備的基因。人與人的不同究竟在哪裡?具體技能總是會變化的,但基因是不變的,也不應該隨著年齡的變化而變化。

人的可貴之處就在於學習和塑造能力,這是造物主賦予我們的可貴品質。

甚至現在的人工智慧模型也要以學習的方式來訓練,才能產生它需要的職能。一個複雜的模型,需要大規模的訓練,餵給它很多資料和模式,才能讓它獲得新的知識,不斷提高「智慧」。

我們可以想象,人腦其實也是一個智慧模型,只不過這個模型更龐大,引數更多,容量更大;訓練它需要的資料更多,時間也更長。如果你想成為某方面的專家,就需要花費很多年的精力來進行專業訓練。

一個人,要想在某方面獲得睿智,唯一的辦法就是持續地學習、調整、提高、成長。這個過程需要耐力和堅持,而最終你會收穫成功和樂趣。

一句話,保持學習,保持「後勁」,保持成長。