做一個很出色的程序員

架構師大劉的故事,斷更有一段日子了,彆着急,今天我們續上:

今年春節大劉響應國家號召,過年沒有回老家。

春節假期裏,大劉約了許久不見的、同樣也沒回老家的小馬吃了頓飯。

小馬是大劉以前的同事,比大劉小好幾歲。小馬剛畢業的時候,去了大劉所在的公司,正好進了大劉所在的項目。

當時的小馬基本上啥也不會,大劉很是帶了他一段時間。小馬這人聰明、又努力,進步非常快,後來,小馬換了公司,職業生涯一路高飛。

小馬一直認爲大劉對他很好,很照顧他。其實,他不知道,是因爲小馬本身的出色,讓大劉和他搭檔非常愉快,這纔是大劉非常願意和他一起做事情的原因。

飯桌上,大劉和小馬談了許久,也談到了一些他們那些曾經的同事。其中,有些同事特別優秀,他們和小馬一樣,年紀輕輕已經成爲了極其出色的程序員,在行業中,也獲得了很多的物質報酬和名譽。

在這次飯桌聊天中,大劉和小馬一起總結了這些程序員共同共性。

1. 擁有旺盛的好奇心,並能轉化爲求知慾

擁有好奇心,就意味着你可能會建立求知慾。
——大劉

好奇心是什麼東西?

其實就是人的一種想要探索未知的短暫行爲。

有很多程序員或者在工作中偶然碰到了一些新概念,或者自己業餘主動探索了一些新概念。然後,覺得這些東西很好玩兒,就興起了探索的慾望,這玩意兒就是好奇心。

但大劉也見過不少程序員,尤其是年紀大點的,那見了新概念和新技術,就跟給媳婦交公糧一樣,避之唯恐不及。這對嗎?這不對。

所以,年輕程序員的好奇心,它就跟圍棋建立了先手優勢一樣,可以不講武德,有了直線超車老同志的資本。

可是,只有好奇心還不夠。好奇心這玩意兒就跟普通人看明星八卦一樣,是個人有興趣了,都能追追,沒啥門檻。

有門檻的是什麼?求知慾。

這可厲害了,就像普通人追明星八卦覺得不夠,於是變身成爲狗仔隊,直接幹成了職業的。狗仔隊要追明星隱私很辛苦的,上山爬樹,裝電線杆子,啥都得幹。

求知慾就類似這種,你得把好奇心轉化成一種穩定的認知慾望,需要堅持不懈,需要付出辛苦,這就是門檻。

大劉原來就有個同事,不知道從哪裏知道了 go 語言,那時候,go 語言剛出來不久,連個成熟的編輯器也沒有。

大劉這同事,人家就有那種好奇心,先去搜了搜概念,然後又研究了下 go 語言的技術文檔。頓時,他覺得 go 很有前途,好奇心就變成了求知慾,一路跟着 go 成長。工作中,也是想辦法用 go 做點小項目,小工具。

得,短短三四年,人家就成了 go 語言領域的大牛,出書,講座不斷。這就是好奇心轉化成求知慾的好處。

有了好奇心,你可能就有了一個進入新的技術藍海的機會,而有了求知慾,就意味着你可能有了在藍海建立自己的話語權的資格。

所以,大劉的那些後來發展的非常好的前同事們,大多數人都擁有這種鮮明的共性,這個共性,讓你的職業生涯很可能將會擁有別人沒有的先發優勢。

2. 勇於嘗試新技術並能快速掌握

一個人有了好奇心求知慾就完了嗎?那不能,這可不夠。

除了好奇去探索外,你還得有把探索所得,轉化成自己經驗的能力。這種能力的外在表現就是勇於嘗試新技術,而且還得快速掌握。

再舉個大劉另一個同事的例子,這個同事在工作中遇到了一個問題,就是存儲海量數據的問題。那時候,還是 2008 年,這人剛畢業不到一年。他知道了 HDFS 這技術,就想着能不能把這東西用到項目上。

可是,他只是個小年輕,人微言輕,怎麼辦?他也有本事,人家利用業餘時間,沒日沒夜花了一週時間,自己搞了環境,又寫了 Demo,還寫程序模擬了大量數據去測試。

然後把這些拿給領導看,得,有理有據,最牛的是這哥們兒還弄了個像樣的圖表。

OK,徹底 KO 了領導。

這個小夥子後來逐漸成了這個項目中的最懂大數據的人。再後來,小夥子跳槽去了百度搞鳳巢,如今人家又去了 Google,再 Transfer 到美國,活得有聲有色的。

所以,有了好奇心,有了求知慾,你還得把學到的東西落地,形成自己的獨到經驗,還得讓別人知道你掌握了它,這樣這個先發優勢就進一步落了地,你的職業生涯可能開始有了自己的小地位了。

3. 用批判性思維批判下

你有了求知慾,又有了落地的能力,但是要把握好怎麼落地?何時落地?

一般來說,在我們工作中,如果想應用新技術,就得找到現有方案的不足。有了不足,把不足作爲切入點,和領導談談,在項目的某些小地方可以先嚐試你想搞的新技術。一般來說也沒啥問題。

除了找現有項目的茬,你還得明白新技術有哪些坑。

新技術一般爲了快速推廣,往往誇大其詞,搞得世界沒了它就要滅亡一樣。

這時候,怎麼找到新技術的問題和不足,是至關重要的。找到不足,你既可以把控落地到項目中的風險,也有了去當這項新技術 Commiter 的機會,再不濟去提個 Issue 刷刷存在感也是好的。這對將來職業發展都是大有幫助的啊。

那找新技術的不足就需要批判思維了。這批判性思維的前提,就是要求你能獨立思考,獨立判斷,不是做做樣子,找個小問題就行了的。

有一陣子,大劉的公司項目一直是用的 Spring MVC 搞 Web 項目。有個同事用了覺得很麻煩。爲啥?因爲在 Spring MVC 需要大量的配置,每次搞一個小項目都需要大量的改動配置。如果再加個 Hibernate,那配置把人要搞瘋。

於是,這個同事就想到了 SpringBoot。但是在用 SpringBoot 之前,他認爲,SpringBoot 也是剛推出不久的,肯定也有自己的問題。於是,他就去 Google 上用 SpringBoot challenge 這種關鍵字,挖出了不少坑出來。

同時,又發現 SpringBoot 封裝的太好了,他又認爲封裝的太過易用,如果出現了一些底層問題,估計不好解決。他把這些優勢和劣勢統統搞了個報告,去申請 SpringBoot 試用。申請過後,他又從各方面審視項目的各種不足,不斷改進問題。

獨立思考,以批判的眼光找到現有的不足,以批判性思維找到可以改進的方向,你將在自己的團隊中擁有自己的行業話語權,項目前進的方向也可以在你的主導下進行。

4. 現實點,別吹牛逼

大劉和小馬談到現在行業內存在的一些弊病的時候,不禁搖頭嘆氣。現在行業內,做事飄得多,踏實的少。

掌握點兒 Docker,就給你吹自己掌握了雲技術。瞭解點兒 SpringBoot、SpringCloud,就告訴你精通了微服務。

可是,就大劉的經驗,真能成功的,那都是腳踏實地的實幹者。

實幹者們對一個項目,有着充分的評估,能在最壞的情況時,拿出早就準備好的方案。能在項目出現延期風險的時候,作出提前而精準的判斷。

而這些,可不是那些誇誇其談的營銷類、建立類、PPT 類程序員能搞定的。

需要沉下心來,去了解項目可能出現的問題的每一個核心原因。沉下心瞭解問題核心,可不僅僅是給項目帶來好處。這東西可以直接訓練人們處理問題的思路,也能加強對項目風險預測的嗅覺。這兩種東西對將來團隊管理、項目管理的好處就不言而喻了。

做事兒踏實點,錯不了。

青銅聖鬥士有了第七感能打敗黃金聖鬥士。你有了敏銳的解決問題思路和預先嗅到風險的感覺,就能踢開阻擋你突飛猛進的攔路虎。

5. 啥都知道點,關心些職責之外的

大劉、小馬身邊那些成功的程序員們,做事可不是隻悶頭做自己眼前這點兒就行了。

人家從小兵子的時候,工作除了擰螺絲,還會關心整個航母。當個後端工程師,人家把前端的活兒也攬過來,把前端框架了解的透透的。寫個業務代碼,順便把底層框架摸了個滾瓜爛熟。

工作態度主動點兒,幹好自己手頭工作之餘,儘可能的去多多瞭解整個項目。把項目弄的越熟悉,項目就越離不開你,這時候,別人還會把你看成小兵子嗎?

以上說了這麼多,大劉自己全都做到了嗎?沒有,知易行難嘛,大劉只是像數學的極限一樣,不斷地逼近這些特點。大劉期待自己最終也會破繭而出,能變得更加出色。

我們下篇大劉的故事見。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章