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