天天看點

廢掉一個程式員的武功(技術),就一直讓他忙(閑)...

程式員的忙:

昨天晚上因為一個BUG又戰鬥到了深夜,問題的細節一直在腦裡盤旋,甚至好不容易睡着,在睡夢裡也在解決問題。

作為程式員的我們每天都在很努力地工作、不停的Coding寫業務代碼,每天都非常忙碌,甚至周末都不休息。強忍着“996”和“KPI”,但卻唯獨忘記了留出時間“自修内功”。

廢掉一個程式員的武功(技術),就一直讓他忙(閑)...

對于大多數技術人員來說,在一個崗位上幹着幹着突然發現自己的技術停滞了,甚至不如以前。

首先來說一個NB技術人員并非靠自己讀幾本書寫幾萬行代碼就能練就的,我更關注于底層的環境,也就是程式員實實在在的工作環境。

除了忙,還有毀掉你的閑。

在《深度工作》這本書中,納斯研究所指出。

如果你生活中潛在的每一刻無聊時光,都是用浏覽智能手機來打發的,那麼你的大腦就有可能被重新編排,這時你的大腦已經不能夠勝任深度工作了。

如果你長時間進行的是浮淺工作,你的大腦裡的髓磷脂就會不斷下降,與大腦的連接配接力也會跟着下降,當髓磷脂缺乏到一定程度,大腦就會産生病變,納斯研究所稱之為“心智殘疾”。

為什麼每個人每天同樣擁有24個小時,交出來的卻是不一樣的成績?差別正是在于每個人對于注意力支配的不同。

我們使用注意力的方式,就是我們塑造自己的方式。

作為一個主體,忙和閑要懂得轉換,最終的目的就是你這個主體更快更好的适應。

網際網路公司的“忙”對程式員的影響:

網際網路公司的“忙”其實有時也是真忙,從原因來說,網際網路公司認為是程式員(其實也有其他員工,但本文不涉及讨論)造成的,程式員認為公司造成的。而根據“一個巴掌拍不響”原則來看,應該是公司與程式員合作不協調出現的惡性循環造成的。深層原因大家自己研究去吧。不過從我這裡的表象來看,這種“忙”有這麼幾點,這幾點如果不代表大家的意見,大家可以補充:

  • 項目開發與計劃脫節,表現為項目開發慢于計劃。
  • 突如其來的事件。
  • 為某種說不清道不明的原因,像是作秀。
  • 假忙。
  • 真忙。
  • ······

上面說的第一種情況最常見,這涉及到軟體工程的話題,其實也是網際網路公司做不大,程式員水準提不高的核心。

上面說的第二種情況也常有,比如偶爾趕個标書,比如客戶那裡突然出現了BUG,急着去改等等。

第三種情況就很讓人暈菜了,有點無病呻吟的感覺,比如不知道從哪裡冒出一個會議,開到個七八點;

第四種情況很特别,也比較常見,大家同室坐、彼此各自心。一片共同耕作的美好景象,但果實見不到兩顆豆呢。這可是大家齊心虛度時光。程式員可以拿出這個時間提高自己嗎?當然不可以了,你表面上還是得幹活呢。

第五種情況就不說了,因為這是正根。

總之網際網路公司是“忙”的,一般是以上三種“忙”,偶爾這三種都沒有了,第四種就馬上出來的。

這種情況對程式員的影響:混亂無序、怨由心生、虛僞做作、學習時間少。

一位在世界500強公司工作了十年的HR說,企業裁人不看年齡層,往往是那種看起來很忙,卻沒有生産力的人,他們嚴重影響公司效率。

例如,在程式員的圈子裡,比如我的朋友小曹。他從事PHP開發三年了,在我眼力,小曹是個不折不扣的“拼命三郎”,在工作中一直是一個兢兢業業、任勞任怨的模範員工。公司“996”不說,就連下班也是帶着電腦修BUG,上司一個電話,立馬現場給你表演一個“原地搬磚”。本想指望着他能升職加薪走上人生巅峰,但卻沒逃過“網際網路寒冬”。

這是為什麼?因為他太忙了,忙到根本沒有時間成長。作為三年的職場老鳥,卻隻會寫業務需求和MySQL、TP,一旦涉及性能優化、高并發、Swoole、Laravel源碼這些技術的項目就不知道怎麼下手。

“幹活最勤勞的人未必是最有價值的人”,公司不是慈善機構,用人講究成本效益,這樣的情況下小曹難免被優化。

網際網路公司的流程不規範對程式員的影響:

無像樣的需求、無像樣的設計、沒有測試、沒有文檔、沒有維護(所謂維護也大都是客戶測試出BUG來改一改)。

其實說到需求這一塊也并非完全是公司的問題,大多數情況下,客戶也是根據程式員直接上來編碼後暴露出來的問題才漸漸明白自己的需求是什麼的。

“什麼都沒有”的問題在于,什麼也不清楚,如果寫一堆以不變應萬變的代碼,第一,時間不允許,第二,難度太大。要是稀裡糊塗去實作,擴充與維護性又差,整個一堆豆腐渣工程,總之是沒法下手。長了一堆“打鐵”技巧,神不像神,程式員不像程式員的。

這種情況對程式員的影響:無規劃性、代碼品質低、手忙腳亂、技術永遠停留在“打鐵”水準。

網際網路公司對程式員員工的“全能型”要求對程式的影響:

裝系統、修列印機、寫文檔、編代碼、見客戶、掃地搬桌子、接網線,在國内軟體公司中程式員做什麼事都有可能。單單說技術方面,也是要求事事能做,看一下招聘要求就知道了。

這種情況對程式員影響:術業無專攻。

題外話:身邊很多人一直嘗試全棧。

很多人不明白,其實全棧的真正意義并不在于多學了幾門技術,而在于說,你擁有了将一個想法完整的轉化為一個産品的能力。

這種能力讓你從一個不能脫離生産線的螺絲釘、不能離開公司獨立生存的雇員,變成了一個對自己的工作,對自己的生活,對自己的事業擁有選擇權的一個人。

你當然可以到大廠裡面去打工,因為掙錢快嘛,但是當你不開心的時候,不想要這種生活的時候,可以自己開公司,可以自己做軟體賣;當你有一些非常好的想法的時候,你不用去說服投資人和找幫你補前端或者後端工作的小夥伴,隻需要用自己空閑的時間,就可以慢慢的把它給做出來。

當你創業的時候,你不用天天擔心,技術部門裡面某一個單點的程式員突然離職(創業公司裡非常常見),因為你知道最差的情況下,你是可以自己去把這個地方的東西給做掉的。大不了邊熬夜邊招人呗。

這種控制力非常棒。

我也不是在忽悠說,你現在就要去學一個什麼全棧的課程,而是說你可以在自己現有技術棧的基礎之上,以很低的成本去補全自己的這種能力。

js的把node和混合app搞搞,android的順便用java搞定下後端,php的同學補下小程式開發。再多做幾個産品練練手找找感覺,這種能力就慢慢出來了。

網際網路公司的工資拖欠對程式員的影響:

很悲哀,這是存在的。我向來認為一個員工與公司合作的最底線應該是按時按量發工資。但很多公司打破了這個底線。一個朋友開玩笑地說過:“家庭有錢,誰幹程式員呀!”這話雖隻可信一半,但是從國内情況來看,程式員的生活品質還是不高的,工資的拖欠直接影響到程式員的心态,甚至影響到程式員的生活。

這種情況對程式員影響:低調、迷茫、心态不穩、思想徘徊、生活困難。

網際網路公司對軟體開發的要求對程式員的影響:

網際網路公司對軟體開發的要求一般是實作即可。如果說寫一個和記事本一樣的程式,公司感覺程式員應該在一天内搞定;如果寫一個WPS,公司也就感覺程式員應該在兩到三個月搞定。這不是浮誇,事實就是這樣的。公司所着眼的點在于“就這麼一點功能”,而非在于“怎麼實作這‘一點’功能。

這種情況對程式員的影響:開發難度大、維護難度大、壓力大、難溝通。

網際網路公司的承諾對程式員的影響:

國内網際網路公司一般實際行動能力差,但沒理難說話,他們也知道自己沒理,是以比較愛承諾,把實際問題抛向以後解決。然而承諾也隻是口頭的,有一點“我以人格擔保”的意思。不過一般情況下,國内的程式員還是比較有忍耐能力的(從上文來看不忍耐還能混嗎),但公司層面的“人格”卻是不可信,多承諾少兌現,員工面試時聽到的說話到幹了兩年走了都沒做到的事根本不少見。然而路遙馬乏力,日久人變心,這樣的結果往往是使公司與員工走入惡性循環。

這種情況對程式員的影響:不滿、被動、拿不起放不下、進退兩難。

對于自己,不要當窮忙一族:

據一則調查研究:每天8小時的工作時間裡,上班族每天真正集中注意力在工作上的時間,其實隻有2個小時。

而在實際生活中,人們真正專注在工作上的時間,可能遠低于2小時。

想起剛進公司的時候,負責帶我的同僚,是一個叫阿孟的女孩。

她經常是一邊對接工作,一邊閑聊,或者刷刷手機,明明可以半小時交代清楚的事情,硬是花了整整一個上午。

最後還和同僚抱怨說,自己真的是太忙了,手上好多工作沒做完,還要教育新人。

逐漸熟絡之後,發現她的做事原則,永遠是不到最後一刻絕不開始。

早上一開電腦,便開始和朋友發微信閑聊,一叨就是一兩個小時。

下午開始動手做PPT,1小時找素材,20分鐘做封面,伸個懶腰一看到了下午茶時間,立刻起身去樓下咖啡廳……

直到臨近下班,手上的事情還沒完成一半,看着同僚一個接一個的回家,自己隻能憤怒地敲打鍵盤,抱怨事情為什麼這麼多~

阿孟不是别人,是你我拖延的縮影。

人遵循最小阻力原則,往往傾向于喜歡做那些小阻力的事情,聊微信刷手機很容易,但寫報告很費腦,不願意馬上行動,是以造成了拖延,隻能用加班來彌補。

結論:

消極、軟弱無主見、虛僞、對前途渺茫、混亂無序、怨由心生、虛僞做作、學習時間少、無規劃性、代碼品質低、手忙腳亂、技術永遠停留在“打鐵”水準、術業無專攻、低調、迷茫、心态不穩、思想徘徊、生活困難、開發難度大、維護難度大、壓力大、難溝通、不滿、被動、拿不起放不下、進退兩難。

上面這些短語概括了程式員的性格、心态、生活環境、工作環境等方面,它們就像毒素一樣,日久能把一個健康的程式員毀掉。在這樣的環境下,還問為什麼你的技術這麼低?太搞笑了。

---- 程式員段子 ----

為什麼每次團建後會有很多人離職?這位知乎網友的回答太精辟啦!

廢掉一個程式員的武功(技術),就一直讓他忙(閑)...