天天看點

程式員中的老司機們,30 後的路該開向哪裡?

2017-12-29  葉順平 

程式員中的老司機們,30 後的路該開向哪裡?

我是程式員,也是老司機。我已過而立之年,也還沒過而立之年——年紀是到了,卻還沒有立,不論是立德、立言還是立功。你問我慌不慌,我問你路在何方。

我當程式員數數日子,八年有餘,自封老司機也不算太過分,至少寫過的代碼比吃過的鹽多。那些碰到過的臭蟲,被指派的需求,請求的網頁,搜尋的問題,都是沿路的風景。你問我風景美不美,我問你前路在何方。

我寫過用戶端、做過網站、寫過後端服務,踩過的坑,多過别人埋過的地雷。網頁開發很無聊,用戶端适配也枯燥,伺服器高并發隻能靠重新開機。你問我焦慮不焦慮,我問你午夜加班鍵盤聲,是不是如同窗外蛙鳴焦躁不安。

你問我迷茫不迷茫,我問你前方該左移還是右移。

30 了,寫代碼十年八年了,老司機們 coding 的時候很熟悉左移和右移,但是開車到這個年紀……想想當年讀着侯捷的書,看着人家「左手程式右手詩」,羨慕着他的功成名就,文筆風流。到如今,開始流行「左手右手一個慢動作」,動作一慢下來,就開始在想:

30 歲以後的路,該怎麼走?是該繼續碼代碼,還是轉管理?還是左手程式,右手做點其它的營生?那幾年以後,左邊的手藝是不是該放下了?還是勇敢創業?30 歲後的路,該左移還是右移?

代碼能寫一輩子麼?這是個問題。英國的莎士比亞并沒有告訴我們答案。85 年的我,身邊不少 30 歲左右的程式員。一起看看,在寫代碼的這條大路上,老司機們的焦慮和迷茫。

左:代碼寫到底?右:果斷轉管理?

不少朋友,30 左右,開始考慮是否要轉管理。左轉還是右走?

向左轉有什麼好處?讓我們來看看:

代碼寫到底,生活簡單。

升進階工程師,升架構師,升資深架構。從技術菜鳥,到技術大拿,到技術大神,一路打怪更新,也算是技術人的封神之路。

管理做不來,溝通好累。"與人鬥,其樂無窮",隻是可惜,咱欣賞不來。

開會好無聊。一天到晚各種開會,人生簡直各種虛度啊。

有的人很喜歡寫代碼,總感覺寫代碼的時光是最純粹、最幸福的。

管理比較虛,後面不好找工作。技術積累一步一個腳印,這家挂了,還有下一家。

程式員中的老司機們,30 後的路該開向哪裡?
程式員中的老司機們,30 後的路該開向哪裡?

上圖是網傳的百度薪資,你看,技術層級蠻多的,夠打怪更新很久了。不少人天池有限,可能到 T7 左右就到盡頭了。不過别喪氣,T7 package 上限也能到近百萬了,北京房價是貴了些,但是買個小房子過一輩子總是沒太大問題。非技術行業的人,能搞定年薪百萬的又有多少?

向右什麼好處?讓我們來瞅瞅:

代碼寫到一定層次,發現也就那麼回事。

技術轉管理,新的挑戰,新的趣味,還能接觸各種管理層,擴充人脈。

我就是這麼外向,管管人挺有挑戰,挺有趣味。

管理人是們藝術,而寫代碼隻是技術。藝術是活的,代碼是死的。

走管理,未來創業可以當 CEO,而走技術,未來創業,更多的是 CTO。

程式員中的老司機們,30 後的路該開向哪裡?

我身邊的朋友,面試過的人,多少也有類似的困惑。

有些朋友,在三五百人的公司做管理,類似總監角色,管幾十号人,技術中等,薪資和進階架構師差不多,五六十萬的樣子。朋友覺得公司發展一般,偶有混日子的感覺。身邊不少同僚都跳槽去微軟百度之類的,轉純技術了,他依然堅持做管理。

做管理不容易,找方向,做産品,執行,人員招聘,和老闆争取員工福利等,都是你的事情,可能不用忙着寫代碼, 但是心也容易累。要是一個技術崗位擺在他面前,年薪 100 萬,你問我他跳不跳槽?我相信肯定跳。從這類技術人可以看出,技術不見得薪資低,管理不見得錢多事兒煩心事少。選擇路徑的時候,要看到好的閃光點,也要看到潛在的煩惱三千。

有些朋友,技術中等,能大概知道技術選型和解決思路。一線指導不行,不過指下方向,幾個技術讨論沒有結論的時候,拍闆決定還是沒問題的。這位朋友就很擅長管理,知道怎麼招聘,知道發現人才,知道怎麼給有能力的技術空間,知道怎麼激活團隊氛圍,知道怎麼給優秀的人獎勵,知道怎麼處理好團隊和老闆的關系。

總之,技術好的人,不會覺得他技術差,不配當自己上司,反而,覺得自己的能力容易施展,有的甚至懷有知遇之恩。這類人就挺适合當管理的。他當過兩三家公司的 CTO,能說話,會演講,擅長鼓舞士氣,在朋友中算頗有人緣。這類人,天生适合轉管理。

程式員中的老司機們,30 後的路該開向哪裡?

年薪五六十萬,不高也不低,後來覺得無聊,跳槽去 BAT 或者 微軟了,反而一身輕松。可能不再帶人了, 也可能帶的人少了,兩三個,三五個,人是少了,帶的人水準卻高了,産出高,溝通簡單,寫代碼真心爽。這類朋友,就挺适合走專家路線。

凡事有利有弊,别人适合轉管理,不代表你就适合當上司。30 歲的你,在考慮轉型之前,不妨問問自己幾個問題:

我真的喜歡管人嗎?

你善于管理自己麼?

我看會的時候是不是經常在寫代碼?

我是不是讨厭開會?

自己實作代碼,實作産品功能,或者生活中的問題,我是不是莫名的滿足?

碰到别人問自己各種難纏的 Bug,我是不是很喜歡解決?

我擅長幫助别人解決問題麼?

我擅長溝通麼?别人是否喜歡問我問題?

我在學生時代是否當過計劃班幹部?

管理的人越多越有成就感,還是越少越舒服?

管理的價值是什麼?給團隊帶來的價值有哪些?

想清楚上面的一些問題,可能适不适合轉管理,你自己就有了答案了。時間的路有千千萬萬條,條條大路通大道。希望大家都能到适合自己的路。

左:做工程?右:轉算法?

我雖然工程出身,不過也涉獵算法,面試過的算法候選人也有幾百個了。有一個面試的原則是,算法得在白闆上寫寫代碼。不寫代碼,那是耍流氓。不是說模特都開始學習 Python 了麼,光簡單寫寫 Python 腳本,就敢号稱自己是深度學習的高手,那我們找一個數學系的學生得了。

人到 30, 雖然還不算人到中年,還不需要保溫杯,不過前路到底如何走,也是操碎了心。身邊有不少朋友,覺得自己寫不動代碼了,打算轉算法。

總結了一些寫代碼的人想轉算法的理由

算法工資高,年薪幾百萬美金的科學家不少。

算法可以長久做,很多科學家都是大器晚成。

擔心自己再過幾年寫代碼真寫不動了。

寫代碼的市場競争力在走低。

寫代碼有點過時了,現在人工智能和深度學習這麼火,應該趁熱打鐵。

目前是算法工程師溢價的最佳時期,正如是人工智能泡沫最大的時期(假如有泡沫的話)。

有個朋友他目前所在的團隊,工程是他從業的公司裡最好的,比一些大公司還出色。跟我說基于一些考量,想找個專注做算法的工作機會。我說,其實我身邊不少做工程的人,都能拿到年薪一兩百萬。你身邊專門做算法的,現在能拿到年薪百萬的有幾個?朋友已經做了決定,怎麼勸都沒用。

很有意思的是,我之前面試過一個學生,算法基礎很好,在微軟實習過。但是他覺得做算法很無聊,學不到太多工程的經驗,大部分時間在調整網絡結構,調試模型參數,跑實驗,改腳本。想找一個能好好寫代碼的工作。

可見,你想往東走,可能東邊的人正想往西走。如同圍城,城外的人想沖進去,城裡的人想逃出來。各有各的苦惱。做工程就一定比做算法差麼?事實并不見得:

1.工程的工資也不低。

谷歌傳奇 Jeff Dean 就是偏工程的大佬,他的工資可不見得比任何機器學習的大佬低。能搞出谷歌三大神器(Bigtable, Mapreduce, GFS),做出機器學習平台 Tensorflow,照樣牛逼。算法不夠好,我們不妨了解算法專注工程啊。算法也需要訓練、GPU、分布式、存儲、嵌入式,都是工程師的機會。

程式員中的老司機們,30 後的路該開向哪裡?

2.不見得每個做算法的都可以長久

算法幹得長久的固然有,但不見得每個做算法的都長久。舉個簡單的例子,大家回顧一下整個數學發展,出過的少年英才多,還是大器晚成的數學家多?高斯,歐拉,伽羅瓦,阿貝爾,哪個不是少年成名?

算法更新較快,更需要創造性。我敢說,國内的大部分公司,并不需要科學家,也請不到稱得上"家"稱号的科學家。原因很簡單,聰明的工程師看看論文也能實作出來。做得快,訓練快,調試快,各種超參數、網絡結構等快速做實驗,靠工程能力,快速高效搞定優質的大資料,效果比什麼都管用。

3.工程師究竟能寫到幾歲

程式員中的老司機們,30 後的路該開向哪裡?
程式員中的老司機們,30 後的路該開向哪裡?

C++ 之父

4.寫過的代碼,都是你的财富

寫過的代碼版權歸公司,但都是你的财富。寫一百遍一樣的代碼,沒法增值,但是踩過一百個不同的坑,就是你獨有的經驗和價值。剛畢業的人沒法有,正如剛畢業的人沒法有歲月雕刻的皺紋一樣。

有一個很有意思的問題,我面試的大部分工程師,哪怕比較資深的,對機器學習都沒什麼概念,别說 DNN,CNN,LSTM 等,對決策樹,SVM,CRF 也完全陌生。相反很多北大清華的應屆生,對這些目前熱門的機器學習算法都比較熟悉,不少在相關的領域中,使用這些算法發表過論文。換句話說,年輕人搞新算法更有優勢。

5.人工智能和深度學習這麼火,工程要趁熱打鐵

程式員中的老司機們,30 後的路該開向哪裡?

6.泡沫總會過去

泡沫,總是容易過去的。等你學好了吳恩達的機器學習課程,做好了面試準備,可能到時候你的競争力還不如普通架構師值錢。

上面潑了這麼多冷水,不是說做工程的轉算法就不行。什麼樣的鞋子适合自己,穿一穿就知道了。給幾個自己的看法:

AI 公司很多,這些公司的工程師職位更多。

不要什麼熱搶着去做什麼。安卓熱,你做安卓,小程式熱,你怎麼不轉小程式?

算法好的,不妨學學寫好代碼。代碼的優化,對算法的效果也很重要。

工程好的,不妨學學算法,看看機器學習的資料和論文,了解常見的 Task 使用的算法,了解主流的機器學習算法、工具、平台。

是武學奇才的話,不妨練練老頑童的雙手互搏,算法和工程兼修。向谷歌大牛 Jeff Dean 看齊。

擅長什麼,不要放棄。擅長工程,就不要眼紅人家搞算法的。堅持到底,路才能更寬,走得更遠。

左:打工賺錢? 右:創業冒險?

當技術積累到一定程度的時候,大部分人都會技癢難耐,考慮創業。原因有幾個:

給别人寫代碼,期權從幾千股到幾萬股, 比例從毫不知情到萬分之幾、千分之幾就不錯了。自我感覺很好,但并不是創始人,也不是早期員工。高回報和自己關系不大。

公司發展很快,不代表自己發展很好。

你需要給自己一次超越上司的機會,需要一次彎道超車的機會。

你喜歡什麼事情你來安排,你說了算。你不喜歡别人指指點點,尤其是那些不那麼讓你服氣的人。

你喜歡冒險,未知的世界真刺激。

你喜歡挑戰,挑戰技術、管理、産品、營運。在全方位的挑戰中,你的閱曆得到豐富,思考得到升華。

你有好的産品想法,想要讓它在你手裡變成現實。讓使用者喜歡、受益、着迷享受,你喜歡着使用者的喜歡,你憂傷着使用者的不便。

……

30 了,寫過的代碼如同作家,早已著作等身。30歲的你,坐在冷闆凳上,可能寫過了網站,寫過了 Java,寫過了 C++,甚至也趕上了機器學習、深度學習的熱潮。你發現,你需要更大的挑戰。于是,很多人創業了——不管是萬事俱備,還是僅憑一腔熱血,總之,你沖上去了。聽說創業成功的比例萬中無一,但是你管不了那麼多,且行且走吧。

一些朋友,是連續創業者。十個人以内的小團隊,堅持好幾年,這個項目不見起色,就換另一個項目。什麼都需要自己幹——融資自己想,項目自己拉,招聘自己做,核心代碼自己上——真累啊。有些人堅持了幾年,産品沒使用者,收入不見增長,終于放棄了。這類朋友,可能加入 A 輪後的公司,當個技術負責人。也許了此餘生,也許隻是短暫的休息,等待下一次的創業旅程。

程式員中的老司機們,30 後的路該開向哪裡?

面試過幾個候選人,在創業公司當過 CTO或者合夥人 ,技術深度一般,擅長的是技術廣度。其實很多創業公司的産品,技術含量并不高,哪怕你做了前端,又管理後端,你的能力在市場上不見得比 BAT T6 以上的高。加上天天會議,代碼生疏,技術深度并不夠,大公司的高管你搞不定;A 輪+明星創業公司,技術總監你也搞不定。這幾年忙各種需求,人工智能的算法也完全陌生。這類候選人,也許三四年前在 BAT 是 T6 的級别,面試過後我們也隻能給到 T6 的待遇。因為沒有人會為你全面但不突出的能力買單。

每個人都有自己的路,别人的路不一定合适你,适合你的路也不一定适合别人。大家都需要根據自己的能力,心态,綜合決策,再做出是繼續給别人打工,還是單槍匹馬出去闖江湖。

張愛玲說,「出名要趁早」。你看 00 都開始創業了,再不創業,眼看就成老老一輩了。不過,成名的畢竟少數,創業成功更是鳳毛麟角。30 歲左右的我們,在放棄穩定的工作之前,也先别慌,了解下行業,了解下商業,再決定要不要踏上創業這條孤獨的不歸路。

不創業,也沒問題。平凡之路,也有其幸福,有其榮耀。

左:打工賺錢? 右:創業冒險?

網際網路是高科技,高科技是第一生産力,生産力高,自然薪資也高。于是,這幾年,網際網路行業水漲船高。尤其是人工智能時代的來臨,各行各業都開始憂慮了起來:我們行業會不會被 AI 取代?要不被取代,如該何想辦法和 AI 結合?AI + 農業怎麼樣? AI + 醫療怎麼樣?AI + 教育呢?AI + 傳統零售呢?總之,三百六十行,行行出 AI 。

網際網路這麼火,人才這麼貴,那麼為什麼還有很多人要離開網際網路,轉行到傳統行業呢?想了想,至少有以下原因:

網際網路太累。累了容易過勞死,累了還容易脫發。君不見,網際網路行業的寫字樓電梯裡,經常看到生發的廣告—— XXX,這是一個神奇的生發靈藥。

網際網路競争太激烈。做個團購,一下子湧現出來幾千家,最後剩下一兩家。做個網際網路金融,出來一波就是幾十幾百家,一死便是幾十上百家。做個智能音箱吧,大廠小廠,先别管有 AI 沒 AI,大家一起上啊先,馬上形成百箱大戰的局面,紅海一片,過幾年肯定也是哀鴻遍野。

網際網路技術更新換代太快。前幾年還學着 ASP.NET,過兩年就開始學 C Sharp,學完了C Sharp,還沒見自己犀利( sharp )起來,大家又開始集體玩 Java了。寫 C 的人寫代碼的日子加了幾年,開始學 C++,轉眼 C++ 的那撥人,又學谷歌内部發明的 Go 語言。

網際網路人太單純。單純本來沒啥不好,但是有了孩子,有了社會關系,太單純就不容易玩得轉了。可能你錢攢了一些,但是社會地位還是低。大家自嘲叫碼農,叫程式猿,叫屌絲。最近就出了幾個碼農屆的大新聞:一個是某家公司産品更新日志裡赫然寫着要殺程式員「祭天」,真是語不驚人死不休。另一個則更是驚天動地,當老闆的某程式員,被其前妻逼死了,原因是被敲詐,要麼賠一千萬的精神損失費,要麼等着去把牢房坐穿。0 和 1 建構出來的虛拟世界很複雜,但是真實世界并非隻有 0 和 1、對和錯,真實世界複雜到程式員們玩不轉。

網際網路人才市場太火熱。太火熱本來是好事,但是當聰明人都往網際網路湧時,壓力就來了。網際網路火,奧賽冠軍們都學計算機去了,搞理論的都進産業界了,北大清華學霸們都和你搶飯碗了,海歸大牛們都紛紛回國謀求機會了,你說競争激不激烈?自诩聰明的你,也不得不今天學習統計學,明天看看深度學習,後天關注自然語言處理。

今天一個消息,網際網路巨頭網易賣豬肉去了;明天一個消息,網際網路人創業去做肉夾馍了;後天一個消息,大佬去做新零售了。你可以說他們轉行了,也可以說他們還在網際網路。

還有一些朋友,受夠了北上廣深的壓力,呼吸夠了帝都的霾和魔都的風,他們要逃離北上廣。北京,北京,「我在這裡歡笑我在這裡哭泣,我在這裡活着也在這兒死去,我在這裡祈禱我在這裡迷惘」。媽蛋,通通給我滾蛋。于是,念起了陶淵明的《歸田園居》:「歸去來兮,田園将蕪胡不歸?既自以心為形役,奚惆怅而獨悲?悟已往之不谏,知來者之可追。實迷途其未遠,覺今是而昨非。」北京不好混,那咱們一起回家混呀。

都說北平的秋好,天氣那個新鮮勁。回到老家,也許還四季如春呢?人比人,氣死人。城市比城市呢?恐怕城市裡的人隻能發瘋了。

有的朋友,在 BAT 或者其他大廠,幹了三四年,攢了一筆錢,決定離開北京等大城市,回家發展。可能回到了家,沒有了引領時代潮流的弄潮兒氣概,卻有了「采菊東籬下,悠然見南山」,「卻道天涼好個秋」的閑情雅緻。

有一個朋友告訴我說,他要從工程轉算法。同時,他老婆也要去讀個書,慢慢從網際網路行業轉出去。也許過幾年,她老婆先在老家開個超市,先賣雜貨,或者開個飯館,如果一兩年下來,沒虧并且還能賺一些錢,到時候他再辭職去幫把手,雙雙離開網際網路,開個夫妻店。他告訴我這樣安排比較穩妥。否則過幾年,兩個人都在網際網路,哪天一起失業了,風險太大。這個朋友能力還可以,有過網際網路大公司的工作經曆。我給他分析他的優勢,告訴他不用擔心失業,告訴他我有一些朋友,四十幾歲了還在一線寫代碼,告訴他我能告訴的所有事情。然而,一百條理由,頂不上他一個執拗的借口——他已經決定了走上轉行的道路。這條路也許需要幾年,但是他已經在有計劃地開展了。

程式員中的老司機們,30 後的路該開向哪裡?

有一些朋友也在想,要不在北上廣工作幾年,攢一些錢,回家去花。正如人家在美國賺美金,回中國來花人民币。老家也許房子還不貴,也許一百萬就能買不錯的房子?咱們大城市奮鬥幾年,小城市買上它三套房,一套用來住,兩套用來租,每天一覺呼呼到天明,我們也過上小時候夢想的收租金的生活啦——翹着二郎腿收租金的日子,過得真他媽舒服啊。

當然,回家做個小生意,開個小賣部,或者開一個超市,或者開一個飯館,都是路。30 歲了,既然前進的路多歧路,那就看看退路——到處都是退路。條條大路都是餘生的路。

有人在退,也有人在進。不少其他行業的朋友,也在看着網際網路的機會。比如我有個朋友,在小縣城,但是眼光卻一直在網際網路。教書的閑暇時光裡,他營運着幾個網站和公衆号。一個公衆号十幾二十萬粉絲,注冊個公司,請兩個小編,讓外面的技術做些小活,一個月接幾單廣告,一年下來也有三五十萬的收入了。在他們眼中:

網際網路充滿機會。前年你開個網店,你可能就月入十萬了。去年你做個代購,可能就财務自由了。今年你營運個公衆号,抄一些網上的水貨文章,可能就錦衣玉食了。明年你做個小程式,興許就衣食無憂了。

程式員中的老司機們,30 後的路該開向哪裡?

網際網路裡人人都能當英雄。買賣域名能撈得盤滿缽滿,倒騰流量也能做到肥得流油。機會少了?沒關系,咱還有消費更新呢。機會有的是,慢慢來。快速試錯,勇敢疊代,這才是網際網路的風格和做派。

程式員中的老司機們,30 後的路該開向哪裡?
程式員中的老司機們,30 後的路該開向哪裡?
程式員中的老司機們,30 後的路該開向哪裡?

不管是出于帝都魔都居之不易的考慮,還是你本來就喜歡傳統行業,厭惡網際網路,總之在考慮要不要換行前,以下幾點值得思考:

你是不是單純的技術人。線下真實世界的玩法你熟悉嗎?你習慣嗎?

你能玩轉傳統行業的人情世故麼?你能喝酒麼?你會抽煙麼?

你的口才怎麼樣?你善于應酬麼?

你是否善于管理?你會催款麼?

你喜歡快節奏還是喜歡悠閑?

其他行業就沒有競争麼?那裡的競争,你是否更有競争力?

網際網路好多于壞?對你而言,網際網路的種種好,是否真的已經超過了壞?

結語

程式員中的老司機們,30 後的路該開向哪裡?

做工程,還是轉算法?

代碼寫到底,還是果斷轉管理?

打工賺錢,還是創業冒險?

網際網路混到底,還是轉行收房租?

30 歲了,不管是否三十而立,總歸我們都是成年人了。面對困惑,我們都應該深思熟慮,做出成年人的選擇。

這世界真好。

繼續閱讀