寫這篇文章前的我,剛剛整頓完開發項目組。望著透亮的藍天,泡著一杯熱茶,打開一本軟件工程的書,反思著早會上的自己,是否在做一件正確的事情。在一些公司,應該也有和我一樣的人,處于同樣的困境,在沒有任何資源和權利的狀況下,艱難的運轉著一支研發隊伍。
我也是一個工程師,我深知開發工作的不易,深知需求變更的痛楚,也深知重構代碼沒有文檔時的手忙腳亂,但是這次我想說:
你們想做好程序員,請有一點追求。
自我定位
碼農?程序員?工程師?你屬于哪一種。
大學同學聚會遇到老同學時,問我:做碼農很苦吧。我會率先糾正他,我是工程師,不是碼農。
(軟件)工程師是我的職業,我通過構建一個軟件來提供服務,服務于社會發展和人類活動。雖沒有hacker那樣的野心和欲望,但也有想通過自己的能力改變世界的一點追求。
程序員是一個不錯的定位,但更多定位在軟件工程和程序設計上。掌握一門技術,實現軟件設計,完成任務,達到業務部門的需求。
碼農在百度上的定義是種代碼的農民。簡單的復制粘貼,寫代碼不計后果,產出的軟件不可維護。
如果你還有一點自尊心,有對得到尊重的那么一丁點追求,你就沒理由心安理得的被別人嘲諷為碼農。
對工作的態度
找每個人聊天的時候,每個人都說希望做的好啊,希望更優秀啊,成為更出色的工程師啊。但是實際行動并不是這樣,而真實的內心獨白也不一定一樣。
很多人想著理想的工作就是“錢多,事情少,離家近”,最后沒有幾人達成。那我就拆解一下這個公式吧。
“錢多事少離家近”等于你單位時間內提供的剩余勞動價值高且產出內容不受空間限制的工作。能夠單位時間提供高價值輸出的勞動者,要么是某個領域的專家(大師級工程師),要么就是冒著極大風險的行家(掘金者)。
成為專家,需要的是常年的鉆研和努力。就是那一次次練習設計模式,一次次跑數據模型,一次次修改UI,在挫折中不斷前進得到的收獲。多少人,遇到一時解決不了困難就置之不理,又有多少人遇到需求的變更就叫苦連天。
最初的時候,都會抱怨人艱不拆。直到有一次,硬著頭皮恨不得把匯編代碼擺出來分析,在需求變更時及時修改方案應對未來可能的變化,才發現并沒這么難。
勤學好問,刻苦鉆研,嚴謹求實。
這些品質才是拆掉工作里的墻的好方法。
當整個世界都不一樣
區塊鏈很火,AI很火,機器學習很火。
就像一兩年前,python很火。
就像5-6年前,Android很火,iOS很火,PHP很火。
就像多年前,java,C#......
多少人去追了這些很火的方向,又有多少人在這些方向上精通和成功。
再高的平均工資,落到自己頭上,都無法平均;再新的技術熱點,浪潮褪去,拍在沙灘上的總歸是數不勝數。
只有優秀的選手,能在每次逐浪中展露頭腳;只有頂尖的工程師,才能在每次技術浪潮中,披荊斬棘,拔得頭籌。
在有生之年還有機會成為開拓型的程序員,創造更多的價值,完成出色的產品。對大師級的程序員更多的是仰望和尊重。
沉下心,讀文檔,寫代碼,做工程,總結反思。
在這個不一樣的世界,好好做自己。