作者:沉默王二
01、
9 年前,我從象牙塔裡走出來,正式踏入社會,懵懵懂懂地在一家日企開始了職業生涯。那時候,技術功底非常差,因為在學校的時候每天就一副吊兒郎當的樣子,程式設計自然也沒有好好學。
和我同一時間入職的新人有 19 個,大家都懷着一顆敬畏的心,因為生怕自己被淘汰出局。畢竟是實習期,如果工作表現不符合預期的話,是直接被辭退的,沒有任何補償。
是以在簽正式的勞務合同之前,每天都緊張兮兮的。記得有一次,上司說我筆試的成績非常差,可能會被辭退,晚上躺着宿舍的床上輾轉反側,想着第二天被辭退後茫然不知所措的樣子,那叫一個沮喪啊。
驚險的是,上司認為我筆試差,是因為沒有看到我答在背面的答案——還是上司的上司當着我的面提醒了上司,那一幕至今記憶猶新。
初入社會的我,性格内向、沉默寡言,操着一口隻有自己才能聽得懂的“國語”,之是以能留存到最後(我們那批人被辭退了 10 個),靠的就是——日漸過硬的技術。
其實,程式員這行業,入門是比較難的,需要你十足的勇氣,和被 bug 無數次吞噬後仍然不折不撓的堅持。一旦你入了門,還肯花時間去讀理論知識,敲代碼實戰的話,成長是肉眼可見的——我就感覺實習的那一個月,進步神速。
02、
兢兢業業工作了兩年半後,我被提升為一名 Team Leader,負責技術攻堅、新人教育訓練,以及代碼 Review。
Team Leader 恐怕是一個最小的管理職位了,但畢竟是一個管理職位啊。你得參加各種會議,寫各種教育訓練資料,這都好應付,難應付的是,你得向上司彙報成員的工作表現,以及要和成員“打成一片,鼻青臉腫”。
做管理前,你所有的重心就隻有代碼,你把代碼寫得完善了、優雅了,再把難點攻破了,bug 解決了,就能赢得上司的信賴,就能拿到比對的薪資。
但做管理後,就不太一樣了。與人打交道是一件很複雜、很耗時間和精力的事,還有可能會出力不讨好。
為什麼這麼說呢?
每次聚會上,你得帶領小夥伴們去給上司敬酒啊、奉承啊——這是一件極其難為情的事!很多程式員不喜歡這一套,我也不喜歡,但總有人喜歡你這樣做。
你不去做的話,某些上司可能就要給你上上課,教育一下了,批評你不通情達理,不知道人情世故,以後要多學着點,最後不忘加上一句:“不然的話,你的上升空間就很有限了。”
這可比單純做技術難多了——不能純粹地做一名理想主義的程式員,這不是我的初衷。
03、
5 年前,我回到了洛陽,在一家迷你型的公司做開發——沒有人需要你管理,唯一需要管理的就隻有自己。
是以,我的重心又回到了代碼上,人也變得輕松了起來。
我每天有了大把的時間去鑽研技術,甚至還能夠在 ITeye、CSDN 上寫部落格,甭管開始的時候寫得有多差,總會時不時有讀者留言說:“謝謝部落客啊,你的分享解決了我的問題。”
那時候,也沒有“知識付費”的概念,單純就是為了分享,把自己在技術上遇到的坑、填的坑像記流水賬一樣記下來——這種狀态讓我内心非常地踏實。
一般情況下,工作了三五年的程式員,都會面臨一種選擇,要不要轉型做管理呢?
個人拙見是,有機會的話就嘗試做——技而優則仕嘛。畢竟做了管理就能夠拿到更多的話語權,有了話語權就能夠做更多的事,也就是所謂的大展宏圖。
崇尚技術的程式員可能會比較崇拜比爾·蓋茨,因為蓋茨的技術功底有目共睹。創辦微軟賦予了他更多的權力,也就有了創造神話的可能性——個人電腦真的“飛入了尋常百姓家”。
但假如不适合管理崗的話,還是要盡早退出,不要陷入辦公室政治鬥争的泥沼中。大丈夫要能屈能伸嘛,安心做技術、做開源,沒準會開辟一片新的天地。
借此機會,厚着臉皮再吹噓一下自己。你看我,回洛陽之前,還是一名“富有權力”的 Team Leader;回洛陽之後,喪失了繼續在管理崗上晉升的機會,但真的開辟了一片新的天地。
首先,出版了一本技術書籍,把積累的經驗和知識分享給了初學者,還能順便掙點版稅。
其次,靠着不斷地分享原創文章,在網際網路上積攢了一些名氣,讀者樂于和我交流;更多的機會也随着而來。
04、
我生于八九年,算是趕上了八零後的末班車。八零後成長的三十多年,是我們國家瘋狂造富的三十多年,經濟增長的速度能維持在 10% 左右,是絕對的奇迹。
經濟之是以如此迅猛地發展,一方面是因為我們的起點低,另一方面在于我們對未來的樂觀主義——我們不斷地擁抱世界,拿來的同時默默地努力着、奮鬥着、改善着。
我們程式員是幸運的,趕上了經濟發展的浪潮。并且網際網路的世界是開放的、包容的,是以我們不必深谙人事、逼迫自己陷入辦公室政治的泥沼中也能體面的生存。
可能有人會說,“35 歲是程式員的年齡天花闆,你能寫多長時間的代碼,要未雨綢缪”。但我想表達的是,作為一名正兒八經的程式員,我想做一名純粹的理想主義者,每天敲敲代碼,活在程式的世界裡。
到底理想主義的程式員是什麼樣子呢?
他首先是一個單純快樂的手藝人,其次有着天真爛漫的好奇心,最後還樂于分享。他不想被管理,也不太想去管理别人,一旦需求來了,他就會立馬全情投入,直到傳遞一個至善的産品。
那怎樣才能做一名理想主義的程式員呢?
1)保持專注,别總去想賣個肉夾馍發點額外的财。
2)善于思考,面對一個 bug 的時候,不急躁,不慌張,能夠從容地思考 bug 背後發生的原因。
3)富有自我驅動力,哪怕剛入職的時候工資很低,依然能夠全身心地投入,不被外界因素幹擾,直到把自己錘煉成不可或缺。
4)不找借口,敢于承擔責任。
5)善于管理時間,人這一輩子,最缺的不是金錢,而是時間。
那程式員的理想到底應該是什麼呢?
我希望未來有一天,因為我的代碼,讓這個世界上的一些人生活的更便利,感覺到一點點幸福或愉悅。不管這些人多還是少。
< END >