如何成为一个很厉害的工程师
有很多人,包括我也困惑的一個問題,就是如何成為一個很厲害的工程師。類似的問題也有很多,如何成為一個很厲害的運營,如何成為一個很厲害的產(chǎn)品,或者跨行業(yè)的,如何成為一個很厲害的醫(yī)生,如何成為一個很厲害的作家等等。
如何成為一個很厲害的工程師,我想是我的畢生追求,至少目前是。
榜樣的力量
一個很好的方式,就是以業(yè)界成功或者知名的人來作為目標。從阿里來說,就有很多很厲害的人物,比如多隆,“他從阿里的第一位程序員,做到了阿里的合伙人,是神一樣的人物”、“阿里掃地僧”、“一群工程師幾天無法排查的問題,多隆一眼定位問題根源”。
比如吳翰清,“輕松癱瘓阿里內(nèi)網(wǎng),防御16億次黑客攻擊”、“20 歲入職阿里,馬云 500 萬聘請的天才少年”。類似這樣的阿里人,多如牛毛,以上兩個已經(jīng)在互聯(lián)網(wǎng)順手拈來的神話般的人物。從阿里內(nèi)部看,可能就更多了,無數(shù)的P10和P11都有各自的神話故事,也是每個技術人榜樣。
不可復制的神話
在學校起,就涌現(xiàn)了很多互聯(lián)網(wǎng)的天才人物,10歲的黑客,百萬年薪的阿里星天才等。讓人的感覺,此類人物天賦異稟,是常人無法企及的。比如多隆,一眼能看出的問題,我等屌絲程序員首先,要拿出電腦,打印錯誤日志上下文,拉上上下游同學,DEBUG一個星期,可能勉強才能定位:這尼瑪,原來少傳了一個入?yún)ⅰ?/p>
因此除了望洋興嘆,我不知道自己能做什么。
不可復制的年代機遇
有些神話可能注定是神話,成功的人很多,但是沒有一個成功是可以被復制的。成功不僅自身天賦很重要,也需要同時具備天時地利人和。
在互聯(lián)網(wǎng)野蠻生長的十年,涌現(xiàn)了很多技術牛人,但是到了如今互聯(lián)網(wǎng)紅利吃緊的時代,缺沒有新的技術大牛嶄露頭角,在如今,想成為技術大牛,卻變得如此艱難。
從業(yè)前,
求伯君寫出了WPS第一行代碼,那時候我剛出生
馬云去美國的時候,中國沒有互聯(lián)網(wǎng)。
馬化騰QQ用戶50萬的時候,我還在高中的破網(wǎng)吧里,著急向網(wǎng)吧老板2塊錢買個QQ號。
新浪微博走紅的時候,我還在研究生期間寫論文。
從業(yè)后,
人手必備的迅雷已無人問津
紅極一時的暴風影音關門大吉
而今,
大大小小的公司紛紛裁員。
年代已不在,當初的互聯(lián)網(wǎng)有多火,現(xiàn)在可能就有多悲傷
于是乎,大多數(shù)人這么做
沒有天賦,沒有時代的紅利,如何成為一個厲害的工程師,變成了一種奢望和工匠般的追求。
大多數(shù)人,開始了搶灘逃難,有去考公務員的,有去國企的,有去開店的,當然,還有去送外賣的。
但是更多的,是在潮水褪去,光著身子,站在沙灘上,無所適從。于是,“摸魚”成為了一個程序員最佳的選擇。“摸魚”成為了一種態(tài)度,也成為了一種工作方式。
無戰(zhàn)略,無戰(zhàn)術,從以前的指哪打哪,變成了打哪指哪。
擼碼隨心所欲,跑起來是檢驗系統(tǒng)成功上線的唯一標準。
編碼狂放不羈,半年內(nèi)不出問題是編碼的唯一標準。
“可維護”,搞笑吧,半年后我可能跑路了,維護不維護跟我有啥關系;
“可擴展”,逗我玩吧,業(yè)務半年后也要掛了,擴展啥玩意;
“高可用”,瞎扯了,就幾十個幾百個人訪問,掛了幾天也無所謂。
當石匠喝完酒來建別墅,當奔馳在索馬里創(chuàng)辦工廠,當當紅小生來主演歷史劇,可想而知,我們理想中要的精致和現(xiàn)實中的粗糙會有多大的反差。
此時,一本《論演員的自我修養(yǎng)》應該給演員一個大大的耳光。同樣的,一本《論程序員的自我修養(yǎng)》也應該擺在大多數(shù)有追求的程序員面前。
至少,此時我,還想有一些追求,追求設計出優(yōu)雅結(jié)構(gòu)的系統(tǒng)、落地快速發(fā)展的業(yè)務、追求成為一名優(yōu)秀的工程師。
如何成為一個厲害的工程師
從知乎上一個經(jīng)典的理論,“以大多數(shù)人的努力程度之低,根本輪不到拼天賦”,即大部分對于自己夢想付出的努力,還遠遠不到拼天賦的地步。換句話說,每個人只要真正努力,就可以超越大部分人。
保持學習
前兩天跟公司的一位P9溝通,他說,我至少幾個月要保持學習一門新語言,從學習新語言里學習新的思考方式。對于普通程序員來說,不僅要保持學習的態(tài)度,更要保持學習的深度,學習是唯一不落后的最佳渠道。
我在項目里,就學習java8的語法,用新語法來嘗試新業(yè)務,效果出奇。而且據(jù)我觀察,往往有追求的大佬和新同學,都對新技術渴求和渴望。
即為明顯的一個例子,我根據(jù)多年的交易經(jīng)驗,設計了一套輕量級業(yè)務隔離框架,一個P9大佬,在我做完技術匯報后,硬是單獨拉著我,咨詢我框架是如何實現(xiàn),并且直接閱讀我寫的源代碼,一直到問懂了才恍然大悟。
學習,可以是學習書本知識,可以學習當下的知識付費,可以學習跨界思維,還可以學習人,學習大師,學習身邊的同事。
REVIEW
學而思,學和思本來就是互相補充的關系,而REVIEW在互聯(lián)網(wǎng)界,有著更深的含義,有CODE REVIEW、故障REVIEW、項目REVIEW、技術方案REVIEW等等。互聯(lián)網(wǎng)變得很快,有時候快是第一要素,先行搶占市場,搶占用戶才能勝者為王。但是快,往往也會忽視很多問題,忽略方案上的漏洞、忽略代碼上的缺陷、忽略團隊上的管理和溝通,此時要停下來,REVIEW自身和項目,繼續(xù)做到每日精進。
借勢和借力
前幾周末,跟CTO做技術REVIEW,我匯報的主題是交易系統(tǒng)架構(gòu)。談到跨部門的合作問題和難點,CTO一句話讓我醍醐灌頂,如何推動項目。他說,做業(yè)務,要懂得借勢和借力。借勢指的是兩者目標一樣,自然能促進業(yè)務發(fā)展和跨團隊合作,借力是指復用已有的產(chǎn)品能力、技術架構(gòu)。兩者合二為一,驅(qū)動業(yè)務發(fā)展自然水到渠成。
總結(jié)和抽象
我一直認為,從低層次往高層次走,最重要的一個特性,就是“總結(jié)和抽象”。這是一種能力,也是一種思考方式。
前兩天看到有很多同行在脈脈吐槽阿里的中臺,“徒有其表”、“炒作概念”、“無需中臺”的評論。為什么從中臺哺育了整個阿里經(jīng)濟體技術框架的中臺,在這些人里一文不名?我想除了不懂阿里內(nèi)情、視角不同外,很多人缺少“總結(jié)和抽象”的能力。
總結(jié),是把一篇文章,用一句話概括;能從下筆千言里,找到最重要的一句話;能把做了半年的系統(tǒng),用一個序列圖完美釋義。信息泛濫的互聯(lián)網(wǎng),總結(jié)變成了一種非常重要的能力,能剔除垃圾信息,找到最重要的值得付費的一句話。
總結(jié)是精煉,類似咖啡萃取,將最精華的部分提煉出來,可以理解成量變,只不過是將大的化小,化繁為簡;而抽象是質(zhì)變,將一個業(yè)務和一個系統(tǒng),抽象到更高的層次,抽象成更為通用的理解方式。抽象,用哲學來說,是還原一個事務最本質(zhì)的面目。在JAVA面向?qū)ο缶幊汤?#xff0c;一個非常重要的特性,就是接口定義,接口就是對業(yè)務具體邏輯實現(xiàn)的抽象,抽象出一個模塊具有的能力。
舉個例子來說,釘釘有很多功能,IM聊天會話、審批、打卡等,抽象起來,這個能力叫:辦公協(xié)同。
抽象可以讓用戶在更高層次上去思考,拓寬業(yè)務和系統(tǒng)邊界。這也是為什么老板一句話,屬下做一年。正是老板在更高程度的抽象,而實際落地,卻是需要補充無數(shù)的血肉,才能真正落地一個業(yè)務。
之所以老板可以高瞻遠矚,而我等屌絲只能一線擼碼,相信也是總結(jié)和抽象能力讓我等望其項背。
最后
讀一本書,不會成為很厲害的人,但是想成為很厲害的人,可以讀一下《如何成為一個很厲害的人》,知乎推薦書目。
原文鏈接
本文為阿里云原創(chuàng)內(nèi)容,未經(jīng)允許不得轉(zhuǎn)載。
總結(jié)
以上是生活随笔為你收集整理的如何成为一个很厉害的工程师的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于Flink的超大规模在线实时反欺诈系
- 下一篇: 开源应用诊断利器 Arthas GitH