最近看了幾篇他寫的文章,感覺還可以手幢,查了一下他的經(jīng)歷捷凄,分享一下。
2016-07-18 17:44
人物簡介:陳皓 前亞馬遜围来、阿里巴巴技術(shù)專家超過15年軟件開發(fā)相關(guān)工作經(jīng)驗跺涤,8年以上項目和團(tuán)隊管理經(jīng)驗。擅長底層技術(shù)架構(gòu)监透,團(tuán)隊建設(shè)桶错,軟件工程,軟件研發(fā)咨詢胀蛮,以及全球軟件團(tuán)隊協(xié)作管理院刁。曾在Amazon中國任研發(fā)經(jīng)理,負(fù)責(zé)電子商務(wù)全球化業(yè)務(wù)(全球開店)和全球庫存預(yù)測系統(tǒng)的研發(fā)粪狼。曾在阿里巴巴北京研發(fā)中心退腥、商家業(yè)務(wù)部曾任資深專家一職任岸,負(fù)責(zé)電商云平臺、開放平臺狡刘,云監(jiān)控和電商多媒體平臺享潜。曾在阿里巴巴核心系統(tǒng)專家組從事阿里核心系統(tǒng)和阿里云ECS相關(guān)虛擬化平臺的開發(fā)工作。
2011年陳皓在亞馬遜工作期間
在接受采訪的前一天嗅蔬,陳皓剛剛在他的科技博客上更新了一篇文章剑按,主題是“性能測試應(yīng)該怎么做?”文章下面有幾十條留言評論澜术,大半都是探討交流文章中的技術(shù)問題吕座。
在這個微信泛濫的時代,陳皓仍然堅持在博客上定期撰寫專業(yè)技術(shù)文章瘪板,他更愿意使用blog這樣的方式分享文章吴趴。他希望自己的文章能成為生態(tài)圈的里的一部份,所謂生態(tài)圈是相互融合侮攀,不是唯我獨尊锣枝,而微信公眾號并不能很好的支持±加ⅲ“這和做開源軟件的道理一樣撇叁,開源軟件不是把源代碼開出來就好了,而是要去和已有的其它軟件互相融合畦贸,互相兼容陨闹,互相支持,這本就是軟件設(shè)計的真諦薄坏。所以我想趋厉,寫文章也一樣〗鹤梗”
與博客里的都是程序員之間交流不同君账,在新浪微博上,他是一個有將近20萬粉絲的大V沈善,除了技術(shù)問題乡数,他還會對很多公共議題發(fā)表自己的看法,經(jīng)常語出驚人闻牡。他因為旗幟鮮明的反對某家互聯(lián)網(wǎng)大型企業(yè)净赴,還被業(yè)內(nèi)戲稱為“黑XX第一人”。他的微博ID是“左耳朵耗子”罩润,卻經(jīng)常被同業(yè)晚輩和粉絲尊稱為“耗子哥”乃至“陳叔”玖翅。
雙子座的陳皓評價自己是“一個既沉穩(wěn)、也粗野的人”,“我做事情會比較沉穩(wěn)烧栋,但是有的事情我做的卻很瘋狂∪颍”工作將近20年审姓,陳皓是一個技術(shù)的信徒。他在那篇性能測試的博文中詳細(xì)講述了金融系統(tǒng)響應(yīng)時間的性能測試要求:99.9%的請求必須小于1ms祝峻,所有的平均時間必須小于1ms魔吐。
文章最后他反問道:“是不是很繁鎖?是的莱找,只因為這是工程酬姆,工程是一門科學(xué),科學(xué)是嚴(yán)謹(jǐn)?shù)陌履纭辞色!弊鹬乩硐耄?4歲就知道自己想要什么
陳皓是地地道道的昆明人,為了離家近考上了云南大學(xué)浮定,那還是在90年代中期相满。因為動手能力強,學(xué)計算機專業(yè)的他在上學(xué)的時候就幫著老師做項目桦卒。大三的一天立美,系主任找到他說:現(xiàn)在你有兩個工作機會,一份在北京的一家IT公司方灾,一份是在昆明的工行建蹄。區(qū)別在于,去了工行你的技術(shù)會越來越差裕偿,但公司不會倒洞慎;而北京的工作會讓你技術(shù)越來越好,但可能有風(fēng)險嘿棘。
當(dāng)時除了幫老師做項目外拢蛋,陳皓連正式實習(xí)的經(jīng)驗也沒有,也沒有人可以問蔫巩。因為家庭和父母的原因谆棱,最終他很自然的選擇去了工行。
在銀行工作是簡單甚至有些單調(diào)的圆仔,做IT技術(shù)保障的大部分事情都是讓外面的人來做垃瞧,而他們只需要像包工頭一樣做實施和運維,這讓他感覺很不習(xí)慣坪郭。與此同時个从,陳皓每天都能看到很多震撼而刺激的科技新聞:新浪搜狐搜狐三大互聯(lián)網(wǎng)門戶,以及微軟、雅虎嗦锐、惠普嫌松、甲骨文等這樣的大公司的新聞不斷出現(xiàn)在各種媒體上。
當(dāng)然奕污,互聯(lián)網(wǎng)對于他的沖擊是更是無法想象的萎羔,直到今天他還是清楚的記得第一次上網(wǎng)是通過14k的貓(調(diào)制解調(diào)器)撥號進(jìn)入一個聊天室,以及認(rèn)識的第一個網(wǎng)友來自湖南碳默。
當(dāng)時在銀行陳皓有一位讓他特別佩服的同事贾陷,比他大概大10歲左右,業(yè)務(wù)能力特別強嘱根,但由于一些歷史原因只是一名臨時工髓废,頗有些《天龍八部》里掃地僧的感覺。一天他們倆吃飯時聊天该抒,談到理想時慌洪,那位同事說:為了實現(xiàn)理想而奮斗,就算失敗了凑保,就算很慘蒋譬,也不后悔。這句話給陳皓的震撼特別大愉适,那天晚上他躺在床上想:“我覺得自己生活在了一個正確的時代犯助,也選對了專業(yè),那一定要去一個正確的地方實現(xiàn)理想维咸〖谅颍”那一年他24歲。
于是癌蓖,陳皓毅然選擇了離開瞬哼,離開銀行、離開昆明租副,放棄單位剛剛分到的房子坐慰。陳皓坦誠當(dāng)時這個決定受到家人朋友以及外界的強大阻力,但是用僧,“當(dāng)時不做這個決定结胀,我就沒有今天。拿得起是比放得下更難的事情责循,很多人是拿不起糟港,但更放不下。你愿不愿意放棄現(xiàn)在的工作去爭取未知的東西院仿,你不確定能不能拿到秸抚,就會懷疑自己速和。”
多年后陳皓看到羅爾夫·多貝里(Rolf Dobelli)所著《清醒思考的藝術(shù)》一書剥汤,里面一個觀點和他的想法不謀而合:絕大多數(shù)人會思考他失去的東西而大過于得到的東西颠放,在做選擇的時候,也通常會花更多的時間去考慮自己失去的東西吭敢。
多年以后碰凶,已經(jīng)成為業(yè)界專家的陳皓經(jīng)常會收到很多年輕人的郵件,甚至打來電話省有,請他做職業(yè)選擇輔導(dǎo)痒留,以及要不要來北京谴麦、要不要轉(zhuǎn)行等等這些問題蠢沿。“我聽到的全部都是會擔(dān)心失去匾效,他們從來沒有想到自己的得到舷蟀。而我更多的是考慮我會得到的東西,而不是考慮會失去什么面哼,所以我做任何選擇從不糾結(jié)野宜,這在我24歲的時候就清楚的明白了,我要的是有意義的刺激的經(jīng)歷魔策⌒僮樱”
[圖片上傳中...(image-31238e-1535686252133-2)]
在Platform工作時的陳皓
外企很棒,但對中國公司更有信心
2000年陳皓離開昆明時恰好趕上了第一次互聯(lián)網(wǎng)泡沫闯袒,這讓一直心儀互聯(lián)網(wǎng)公司的他只能暫時回到傳統(tǒng)行業(yè)虎敦,在上海一家做銀行業(yè)務(wù)的大型IT公司做軟件技術(shù)開發(fā)。2年后政敢,一直想去外企歷練的陳皓其徙,進(jìn)入了加拿大知名軟件開發(fā)商Platform。
剛進(jìn)入Platform時讓陳皓備受打擊喷户,才入職第一個月領(lǐng)導(dǎo)就不讓他寫代碼了唾那。“因為之前沒有受過專業(yè)的訓(xùn)練褪尝,人家一眼就看出你是野路子闹获、業(yè)余水準(zhǔn),于是他就被安排做測試河哑〔郑”做測試的時候陳皓閑不住,在系統(tǒng)出故障的時候會自己去找BUG灾馒,看到底是什么原因茎用。找出來后還把故障原因和可能出現(xiàn)的相關(guān)問題寫在內(nèi)網(wǎng)里。這引起了加拿大總部的重視,正巧客服部門由于滿足不了客戶專業(yè)的需求轨功,于是陳皓被派往客服部做技術(shù)支持旭斥。
做客服的這段經(jīng)歷陳皓受益頗多。他當(dāng)時聽到了不同國家各種各樣口音的英語古涧,其中印象最深的是德國客戶和日本客戶垂券,德國人會一個單詞一個單詞極其慢速的說英語,這也讓陳皓慢慢的把每個單詞說清楚羡滑,從而也練好了英語菇爪。而日本客戶會在過程中不斷問新的問題,這使得陳皓必須看更多的東西柒昏,而對方會因為知道了這些再問更多的問題凳宙。一次在解決一個日本客戶的問題后,陳皓看了其間的往來郵件职祷,他在一個月的時間竟然把整個軟件100萬行代碼讀了2/3氏涩。
2007年,陳皓加入了湯森路透有梆,4年多時間從一名普通技術(shù)人員做到了部門主管是尖,最多的時候他負(fù)責(zé)北京研發(fā)中心八個項目組的技術(shù)管理和產(chǎn)品研發(fā)工作。陳皓相信“技優(yōu)則管”泥耀,技術(shù)優(yōu)秀了自然就可以管理指導(dǎo)團(tuán)隊饺汹。“我不覺得管理別人非要放在一個職位痰催,管理是一種現(xiàn)象兜辞,是別人遇到問題會來問你,而不是高高在上的權(quán)威陨囊∠掖”。
離開路透后蜘醋,陳皓去了自己一直很心儀的一家公司——亞馬遜胁塞。這家看起來在賣書、實際上做出世界上第一個推薦算法和云服務(wù)的公司压语,深深的吸引了他啸罢。多年之后通過對比幾家服務(wù)過的外企,陳皓覺得每一家都有自己的特點胎食,Plateform和路透有著完善的培訓(xùn)體系扰才,“尤其是路透的有些培訓(xùn),我覺得跟讀一個MBA是一樣的厕怜●孟唬”路透會請國外一些高級機構(gòu)蕾总,經(jīng)常就是5天的workshop,把全球各個國家的員工集中在一起琅捏,會學(xué)習(xí)到很多東西生百。
而亞馬遜的經(jīng)歷陳皓更是坦言自己是被“洗腦”了,“因為亞馬遜聰明人很多柄延,和這些聰明人在一起的時候蚀浆,你就會明白這個世界會變的非常簡單,這實際上并不是一件簡單的事情搜吧∈锌。”所以每年去亞馬遜西雅圖總部出差的時候陳皓都會約幾位Principle SDE(資深技術(shù)專家)吃飯,“我跟他們在一起滤奈,不管他們說什么我都愿意聽摆昧,哪怕就講一道菜〗┕危”
在外企自認(rèn)為已經(jīng)待了足夠長的時間后据忘,陳皓選擇加入了阿里巴巴鹦牛,原因很簡單搞糕,“就是想?yún)⒓与p11、明白本土企業(yè)是怎么成功的”曼追。幾個月的觀察窍仰,讓陳皓覺得阿里這個公司和外企有很大區(qū)別,“阿里的員工很有熱情礼殊,也很有積極性驹吮,那種精神狀態(tài)是我很喜歡的精神狀態(tài)【祝”尤其是到了雙11之前碟狞,所有參與的同事沒有周末沒有節(jié)假日連續(xù)工作三個月。到最后一個月倒計時婚陪,氣氛緊張到自己必須要加班族沃,時間感覺完全不夠用。像陳皓這個級別每周都要熬三四個通宵泌参。
陳皓負(fù)責(zé)的是天貓云服務(wù)平臺“聚石塔”的技術(shù)保障工作脆淹,之前每到雙11,淘寶和天貓的服務(wù)器宕機都是困擾阿里的一個大問題沽一。在陳皓加入的2013年盖溺,他和同事提前連續(xù)做了四個月的測試,確保系統(tǒng)萬無一失铣缠。
2013年的雙11烘嘱,阿里幾千名員工連續(xù)好幾天都待在一起昆禽,就像打仗一樣。當(dāng)零點一過的第一分鐘蝇庭,陳皓看著服務(wù)器壓力一下上百倍地沖了上去为狸,接近峰值,也如之前的反復(fù)測試的結(jié)果一樣遗契,很快又降下來了辐棒,之后系統(tǒng)便順暢無恙。陳皓和同事反而沒有了事做牍蜂,于是他們找了一個會議室喝酒漾根,看著在大屏幕上不斷創(chuàng)新高的銷售額數(shù)字,看著不同部門同事們亢奮的精神狀態(tài)鲫竞,看著馬老板請來的各種明星辐怕,“像過節(jié)一樣”。
“你覺得外企會干這個事从绘?他們根本不懂這些寄疏。中國人要努力的多愉老,我對中國的未來很有信心联喘。” 從1998年到現(xiàn)在逗载,陳皓眼見著中國的互聯(lián)網(wǎng)公司發(fā)展起來批什,可能會有這樣那樣的問題农曲,但很明顯看到它們有一個非常強勁的成長勢頭。
[圖片上傳中...(image-9f9d93-1535686252133-1)]
陳皓在湯森路透工作時最多負(fù)責(zé)北京研發(fā)中心八個項目組的技術(shù)管理和產(chǎn)品研發(fā)工作
技術(shù)是門工程驻债,工程是門科學(xué)
在加入第一家外企Platform后乳规,陳皓就明白了技術(shù)需要一個非常系統(tǒng)的訓(xùn)練『夏牛“那個時候我才知道什么叫工程暮的,就像蓋房子,寫代碼只是在砌磚淌实,而真正的技術(shù)是一項工程冻辩。”這種感受在之后的幾家公司中都在不斷加深翩伪。
由于要照顧父母微猖,陳皓離開阿里后沒有再從事一份全職工作,但由于上門求助的公司很多缘屹,陳皓也會偶爾做一些技術(shù)管理的咨詢工作凛剥。通過接觸眾多大大小小的公司,陳皓發(fā)現(xiàn)中國已經(jīng)跟美國一樣轻姿,創(chuàng)業(yè)公司越來越多的同時犁珠,但技術(shù)人才卻越來越缺乏逻炊,這成為很多公司發(fā)展的一大瓶頸。
有很多知名的企業(yè)家和創(chuàng)業(yè)者找到陳皓犁享,希望他能夠幫助搭建和管理技術(shù)團(tuán)隊余素。一次一位知名的創(chuàng)業(yè)者請他吃飯,陳皓問他:“你們請我過去可以炊昆,但你們尊不尊重技術(shù)桨吊?尊不尊重技術(shù)人員?”對方一愣凤巨,說已經(jīng)給了技術(shù)人員很好的配置视乐。陳皓搖頭:“技術(shù)是門工程,工程是門科學(xué)敢茁,科學(xué)有它的規(guī)律佑淀,就像懷孕十個月就是十個月,馬虎不得彰檬,尊重技術(shù)就是尊重科學(xué)伸刃。”
在陳皓看來逢倍,一般創(chuàng)業(yè)公司的發(fā)展都會經(jīng)歷三個階段:一是想法變成產(chǎn)品捧颅,這個時間很快,就像在一條小河上架一個木板就可以過去了瓶堕。二是獲取用戶隘道,這時候就開始需要搭建技術(shù)架構(gòu)症歇,會面臨獲取用戶的渠道變得很容易的同時郎笆,河的寬度也擴(kuò)大了,之前搭的木板需要不斷擴(kuò)大來滿足用戶需求忘晤。這個時候經(jīng)常會出現(xiàn)兩個問題宛蚓,系統(tǒng)掛掉,人才跟不上设塔。因為以前欠的債越來越多凄吏。三是業(yè)務(wù)擴(kuò)張,這個時候闰蛔,企業(yè)需要的是非常龐大的系統(tǒng)架構(gòu)和工程能力痕钢。很多人都覺得技術(shù)就是找?guī)讉€人來寫代碼這么簡單,這就好像他們覺得在家里安個自來水安個電燈很簡單序六,他們忘了水籠頭后面的那個自來水廠那個發(fā)電廠有多復(fù)雜任连。
這個時候很多公司的辦法是請牛人來解決,但陳皓認(rèn)為這根本不是解決辦法例诀,“是把牛人拉下來玩之前這套不尊重技術(shù)的玩法随抠?還是把公司拉上來用工程的方法發(fā)展裁着?工程的方法可能會公司發(fā)展慢下來,但未來會越來越快拱她。而把牛人拉下來二驰,還要牛人有什么用呢,就像中國足球秉沼,是不是把馬拉多納桶雀、羅納爾多、C羅唬复、梅西請來背犯,中國足球就能成功了?不會的盅抚,結(jié)果是這幾個人廢了漠魏。”
陳皓堅信體制更重要妄均,他認(rèn)為90%的技術(shù)問題都是管理問題柱锹,而且試錯的成本很大》岚“羅馬不是一天建成的禁熏,亞馬遜、阿里也不是一天建成的邑彪,但現(xiàn)在整個創(chuàng)業(yè)龐大的環(huán)境很浮躁瞧毙,很多公司抓不住重點,技術(shù)管理就變得很混亂寄症≈姹耄”
陳皓認(rèn)為自己不是一個聰明人,唯一覺得可取的地方是基礎(chǔ)打的牢有巧,因為基礎(chǔ)知識一通百通释漆。陳皓有一個比他小10歲的朋友,他很羨慕這個年輕人篮迎,“他對于很多技術(shù)知識都懂男图,我花了18年,他就花了不到10年甜橱。不是所有的人都是聰明人逊笆,笨的人要多花點時間,如果笨的人再浮躁岂傲,就什么都沒有了难裆。”
“因為技術(shù)是門工程譬胎,工程是門科學(xué)差牛,而且技術(shù)更新很快命锄,很多10年前學(xué)的東西都沒有用了,必須活到老學(xué)到老偏化∑甓鳎”
來源:華創(chuàng)資本
文章配圖由陳皓提供
(轉(zhuǎn)載)
一、個人簡歷
陳皓侦讨,coolshell.cn博客博主驶冒。
14年以上軟件開發(fā)相關(guān)工作經(jīng)驗,8年以上項目和團(tuán)隊管理經(jīng)驗韵卤。
擅長底層技術(shù)架構(gòu)骗污,軟件工程。
對高性能沈条,高可用需忿,分布式,高并發(fā)蜡歹,大規(guī)模數(shù)據(jù)處理系統(tǒng)有一定研究屋厘。
技術(shù)擅長C/C++/Java和Unix/Linux/Windows。
二月而、軼事和思考
2.1汗洒、毅然辭掉銀行工作
我當(dāng)時在銀行做銀行網(wǎng)絡(luò)、銀行的電子郵件系統(tǒng)和辦公自動化系統(tǒng)父款。當(dāng)時正處在銀行信息化的階段溢谤,加上當(dāng)時互聯(lián)網(wǎng)和IT業(yè)剛剛火起來,得到這份工作其實是很幸運的憨攒。銀行正值擴(kuò)張電子信息化業(yè)務(wù)的時候世杀,其實應(yīng)該有很多事可做,但是當(dāng)時的主要工作都是由廠商來干浓恶。比如說IBM或Cisco拿下單子來玫坛,會把工作外包給系統(tǒng)集成商。作為一位技術(shù)人員包晰,其實可以發(fā)揮的空間并不大,多數(shù)時間我只是出了問題打電話的角色炕吸。沒有人會教你任何事伐憾,出了問題,就是打電話赫模,然后按照他們的指導(dǎo)來完成工作树肃。但這個還不是促使我離職的最主要原因,我離開是因為互聯(lián)網(wǎng)和IT業(yè)的興起讓我有些心向往之瀑罗,有想去看一看的沖動胸嘴。我還記得當(dāng)時的辭職書是這么寫的:“本人對現(xiàn)有工作毫無興趣雏掠,申請辭職”。處長說劣像,“你可以這么寫乡话,但是要加上‘經(jīng)調(diào)解無效’,另外耳奕,分給你的房就不能要了”绑青。我說好啊。就這樣就辭去了工作屋群,去了上海闸婴。老實說,這個決定真不好做芍躏,因為幾乎所有的朋友和親人都很反對邪乍。
2.2、選擇上海闖蕩的原因
當(dāng)時選擇上海是有原因的对竣,我覺得在當(dāng)時的環(huán)境(2000年)下溺欧,上海的發(fā)展比較不錯。沒有選擇深圳的原因是個人感覺那是因為政治原因憑空冒出來的一座城市柏肪,我不是很喜歡姐刁。北京我有很多同學(xué),而我想去一個陌生的地方烦味。但是后來發(fā)現(xiàn)上海也不是做技術(shù)的地方聂使,過得有些壓抑,初來到上海的時候經(jīng)常會被人瞧不起谬俄,畢竟是剛剛來到大城市柏靶。
我當(dāng)時感覺銀行束縛了我,想看看自己可以跑多遠(yuǎn)溃论,能發(fā)揮出多大的價值屎蜓。于是決定出來闖一闖,主要就是要去經(jīng)歷一些應(yīng)該去經(jīng)歷的事情钥勋,不希望老了以后會后悔年輕的時候沒有去炬转。當(dāng)時IT產(chǎn)業(yè)的發(fā)展是一個大趨勢,我感覺我必須要去一座大城市算灸,去經(jīng)歷一些東西扼劈。在小地方基本沒有這些機會。要學(xué)會游泳就必須要跳到水里去嗆兩口水菲驴,所以我就義無反顧地出來了荐吵。
2.3、工作挫折和自省
我仍然記得自己拎著皮箱站在上海火車站的樣子先煎,舉目無親贼涩。原來在老家的時候覺得自己還挺厲害的,自以為不愁找不到好工作薯蝎。不過事實卻不是這樣的遥倦。
我還記得第一次去面試時,(面試官)問了很多和C相關(guān)的問題良风,問了我半個小時谊迄,我一個問題都答不上來。我一直低著頭烟央,好像被審問的犯罪分子一樣统诺。我從大學(xué)畢業(yè)出來就沒經(jīng)歷過什么面試,再加上自己內(nèi)向的性格疑俭,所以粮呢,整個過程我都在低著頭,不敢看別人一眼钞艇。最后啄寡,面試官問了我一個問題是“有不懂的問題你會怎么辦”,這樣的問題我都不敢回答哩照,其實這道題的答案不過就是“問別人”或是“自己看書”或是“上網(wǎng)查資料”什么的挺物。很顯然,這場面試我肯定是被滅掉了飘弧。但這還沒完识藤,最后面試官對我說:“你出來干什么,像你這種性格根本不適合到大城市來”次伶。
我當(dāng)時被嚴(yán)重地打擊了痴昧,感覺到自己確實有一些東西很差。第一個是性格差冠王,不知道怎么與人交往赶撰;第二個是技術(shù)差,很多問題不知道柱彻;第三個就是視野狹窄豪娜,沒見過世面。后面的幾家公司的面試都大同小異绒疗。一個人在異地他鄉(xiāng)侵歇,經(jīng)歷了這些事情,心里會非常地恐慌吓蘑,“我這條路是不是走錯了?”,我經(jīng)常這樣問自己磨镶。
面對這樣的情況溃蔫,我被逼迫著一定要改變自己。因為琳猫,離開銀行時伟叛,我的家人、同學(xué)和朋友都很反對我出來脐嫂,如果這樣灰溜溜地回去统刮,我面對不了他們。而前面的人還看不起我账千。我當(dāng)時的處境真的很難堪侥蒙,就像爬在懸崖中間,上不去也下不來匀奏。所以鞭衩,當(dāng)時只有一個想法,就是要證明自己不是那么差的人娃善。人被逼到那個份上论衍,活得就比較簡單,哪有什么職業(yè)發(fā)展規(guī)劃聚磺,只想拼命地多學(xué)技術(shù)坯台,提高自己的能力。這個經(jīng)歷有點像是一劑興奮劑瘫寝,同時也相當(dāng)陣痛蜒蕾。但是回頭想想,第一個面試官應(yīng)該是我最感謝的人矢沿。
2.4滥搭、瘋狂成長
在同學(xué)的幫助下我找到了在上海的第一份工作。南天公司捣鲸,這是一家給銀行做系統(tǒng)集成軟件的公司瑟匆,大學(xué)畢業(yè)時本來也可以進(jìn)去,現(xiàn)在繞了一圈而且還是靠同學(xué)幫助進(jìn)去的栽惶,所以那時的心態(tài)還很不平穩(wěn)愁溜;另一方面因為以前是做銀行的,是甲方外厂,現(xiàn)在成了乙方了冕象,兩邊的人都用異樣的眼光看我,心態(tài)非常不好汁蝶。
不過渐扮,這是個技術(shù)不錯的企業(yè)论悴,國內(nèi)早期很多搞Unix/C的高手都是從這個公司培養(yǎng)出來的。我當(dāng)時的技術(shù)還是不行墓律,比如說到了用戶站點以后膀估,不知道怎么做,我曾經(jīng)誤操作把用戶的數(shù)據(jù)刪掉了耻讽。經(jīng)常犯低級錯誤察纯,不但沒做好自己的工作,反而還給別人添了麻煩针肥。這些經(jīng)歷都讓我有一種“技術(shù)焦慮感”饼记,或者叫“技術(shù)憂郁癥”。我覺得自己這也不行慰枕,那也不行具则。這也是我今天仍然在拼命學(xué)習(xí)的原因。這就好像我們經(jīng)常在參加工作多年后還會夢見自己的英語四級沒過捺僻,或者是期末考試沒過一樣乡洼。我經(jīng)常會夢見的是項目又做砸了,又把用戶的系統(tǒng)搞亂了匕坯,一大堆人要審我束昵、要訓(xùn)斥我。
因為技術(shù)差葛峻,溝通差锹雏,不會面試,所以术奖,我決定經(jīng)常出去面試礁遵,基本上每周都要去,不管懂不懂采记,也不管是什么公司佣耐,也不管別人鄙不鄙視我,反正一有機會就去面試唧龄,多見見人這樣可以讓我的性格有所改善兼砖,同時,也可以知道社會上需要一些什么樣的技能既棺,把別人面我回答不上來的東西都記下來讽挟,然后回頭找答案。那個時候我會經(jīng)常去上海書城看書丸冕,看很多很多的書耽梅。我學(xué)的東西很雜,什么做網(wǎng)頁胖烛,Windows眼姐,Unix诅迷,Java,.NET妥凳,flash竟贯,連3DMax/Photoshop我也學(xué)答捕,還去考CCNA的認(rèn)證等等逝钥。這樣散亂地學(xué)習(xí)兩年后,我才慢慢確定了要走C/C++/Unix/Windows系統(tǒng)底層的路子拱镐。而這樣撲天蓋地學(xué)習(xí)的結(jié)果有一個好處就是艘款,我成長的速度相當(dāng)之快。我自己摸索到了適合我的學(xué)習(xí)方法(從基礎(chǔ)和原理上學(xué)習(xí))沃琅,從而不再害怕各種新的技術(shù)哗咆。那時,所有人都在休黃金周出去玩的時候益眉,我還呆在辦公室或住處看書學(xué)習(xí)晌柬。
等到一年半之后,用句趙本山的臺詞說郭脂,我在面試中學(xué)會搶答了年碘。面試官的問題沒問完,我就能說出答案了展鸡。其實屿衅,基本上是面一個公司過一個(當(dāng)然都是一些小公司),此時莹弊,我就開始挑公司了涤久。
感到技術(shù)能力不行就去學(xué)技術(shù),交往能力不行我就去面試忍弛,這兩個問題都可以通過大量地實踐和努力來彌補响迂,但是眼界這個東西沒有辦法通過努力來彌補。所以细疚,當(dāng)時非常想去一些更大的公司看看蔗彤,如果能去外企更好。
2.5惠昔、變得不一樣
我還記得幕与,有一天,有一個和網(wǎng)絡(luò)相關(guān)的技術(shù)問題镇防,同事們搞了三四個通宵啦鸣,也沒弄明白,后來想起我好像在看這方面的書来氧,他們就讓我去看看诫给、試試香拉,結(jié)果我只用了20分鐘就搞定了≈锌瘢基礎(chǔ)真的很重要凫碌,這受益于我看了《TCP/IP詳解》這套書。
后來胃榕,我去了一家做電信軟件的公司盛险,他們讓我做PowerBuilder,盡管我當(dāng)時想做的是C++勋又,但是因為當(dāng)時各種原因很需要這份工作苦掘,就去了。進(jìn)了那里的第一天發(fā)現(xiàn)公司里有一個論壇楔壤,上面都是一些技術(shù)上懸而未決的問題鹤啡,都是關(guān)于Windows/C++的。我一看蹲嚣,都是些很簡單的問題递瑰,一下午的時間就被我全部解決掉了,我的基礎(chǔ)知識發(fā)揮了作用隙畜。于是抖部,當(dāng)天下午我一下子就被調(diào)到了核心組。不過禾蚕,我只在那里呆了兩個多月您朽,因為那時我已經(jīng)不愁找工作了,這期間有兩家北京的公司錄用了我换淆,于是哗总,02年我就來到了北京,去到一家做分布式計算平臺軟件的公司倍试。
在上海的這兩年的時間讯屈,從什么都不是,到得到工作上的全面肯定县习。那段時間感覺自己牛得不得了涮母,有些狂妄和驕傲了,經(jīng)常上網(wǎng)和不認(rèn)識的人爭論一些很傻的問題躁愿,后來發(fā)展到對當(dāng)時的領(lǐng)導(dǎo)以及銀行客戶的領(lǐng)導(dǎo)不敬叛本,總覺得這些人太二。現(xiàn)在回頭看過去彤钟,我覺得那是我人生特定時期的記號来候,人生的痕跡。
2.6逸雹、建立coolshell.cn的原因
我2002年在CSDN開了一個blog营搅,當(dāng)時叫專家專欄云挟。開個專欄很簡單,只要發(fā)6個帖子转质。我也不是什么專家园欣,只是喜歡看書、喜歡學(xué)習(xí)而已休蟹,也喜歡做一些學(xué)習(xí)筆記沸枯。那時候沒有筆記本也沒有臺式機,市面上好像也沒有U盤和移動硬盤鸡挠。正好有CSDN這么一個地方辉饱,就去CSDN的站點上把自己的一些學(xué)習(xí)筆記放在了上面。后來03年的時候技術(shù)專欄轉(zhuǎn)到了博客拣展,因為CSDN對其博客經(jīng)營得不好,我09年就離開了csdn缔逛,創(chuàng)建了酷殼备埃。花了4500塊錢褐奴,租了一個server按脚。我離開那里主要有兩個原因,一個是因為當(dāng)時CSDN博客有一些性能上的問題敦冬,.NET架構(gòu)嘛辅搬,大家都懂的。另外一個原因就是當(dāng)時出現(xiàn)了很多博客營銷的站點脖旱,有點像今天的36氪堪遂。好像那時候出現(xiàn)最早的叫煎蛋,那上面會有一些報紙上不會出現(xiàn)的國外的趣聞萌庆,是以博客的方式形成的媒體溶褪。這和常規(guī)的以日記形式出現(xiàn)的博客大不一樣。煎蛋践险、有意思吧等這些博客讓我看到了博客還能這樣寫猿妈,我覺得很好玩兒。而我當(dāng)時也經(jīng)常會去國外社區(qū)看一些文章巍虫,也能看到一些有意思的東西(因為我當(dāng)時有了學(xué)習(xí)瓶頸彭则,國內(nèi)的網(wǎng)站已經(jīng)滿足不了我了)。心想占遥,既然這些東西這么有意思俯抖,我為什么不自己開一個博客呢?
我老婆是學(xué)新聞編輯的筷频,她鄙視我說蚌成,你的博客雖然有很多人讀前痘,但是只能算是個書呆子的博客,全是一些書呆子式的文章担忧。我有些不服芹缔,我覺得技術(shù)人員不全是書呆子,我們這個圈子里也有很多有趣的東西瓶盛,只不過是你不知道而已最欠。于是我想弄一個有意思的、有娛樂性質(zhì)的東西惩猫,里面都是技術(shù)圈里面有意思的事兒芝硬,但是很多技術(shù)圈以外的人也能看懂。一開始酷殼和CSDN博客的風(fēng)格完全迥然轧房,如果有技術(shù)性的文章我還會在CSDN上貼拌阴,但是后來我就完全拋棄了原來CSDN上的博客∧滔猓酷殼的初衷是希望很多人都可以來上面發(fā)表一些東西迟赃,但是可能是我寫得太多了,別人就被壓制住了厂镇。
現(xiàn)在博客更新頻率是一周一篇纤壁,一開始的時候一周三篇。磨刀不誤砍柴工捺信,總是有時間來做這些事的酌媒。我經(jīng)常看書迄靠,需要把學(xué)到的東西整理成學(xué)習(xí)筆記秒咨。自從在CSDN上寫博客的時候,就有這樣的習(xí)慣了梨水,而且又有“技術(shù)焦慮癥”拭荤,害怕跟不上,所以維護(hù)博客的事對我來說是很自然的疫诽。
現(xiàn)在我已經(jīng)不用自己再租服務(wù)器了舅世,由于酷殼的訪問量比較有保證,我提供了廣告位奇徒,就免費得到服務(wù)器了雏亚。
2.7、對于新技術(shù)的態(tài)度
遇到新技術(shù)我會去了解摩钙,但不會把很大的精力放在這罢低。這些技術(shù)尚不成熟,我只需要跟得住就可以了。我的團(tuán)隊自己想學(xué)什么我都不干涉网持,但是用到項目里的技術(shù)宜岛,必須是很成熟的,(技術(shù)應(yīng)用)十年以上可能是一個門檻功舀。有人說技術(shù)更新?lián)Q代很快萍倡,我一點兒都不這樣想。雖然有不成熟的技術(shù)不斷地涌出辟汰,但是成熟的技術(shù)列敲,比如Unix,40多年帖汞,C戴而,40多年,C++翩蘸,30多年所意,Java也有將近20年了……,所以鹿鳖,技術(shù)并不多啊扁眯。還有很多技術(shù)比如Ruby,Lisp這樣的翅帜,它們沒有進(jìn)入主流的原因主要是缺少企業(yè)級的應(yīng)用背景。
如果要捋一個脈絡(luò)下來命满,70年代Unix的出現(xiàn)涝滴,是軟件發(fā)展方面的一個里程碑,那個時期的C語言胶台,也是語言方面的里程碑歼疮。當(dāng)時所有的項目都在Unix/C上,全世界人都在用這兩樣?xùn)|西寫軟件诈唬。Linux跟隨的是Unix蛹稍,Windows下的開發(fā)也是C巧勤。這時候出現(xiàn)的C++很自然就被大家接受了,企業(yè)級的系統(tǒng)很自然就會遷移到這上面,C++雖然接過了C的接力棒烦却,但是它的問題是它沒有一個企業(yè)方面的架構(gòu),否則也不會有今天的Java薪伏。C++和C非常接近台谊,它只不過是C的一個擴(kuò)展,長年沒有一個企業(yè)架構(gòu)的框架八酒。而Java出現(xiàn)之后空民,IBM把企業(yè)架構(gòu)這部分的需求接了過來,J2EE的出現(xiàn)讓C/C++捉襟見肘了羞迷,后面還有了.NET界轩,但可惜的是這只局限在Windows平臺上画饥。這些就是企業(yè)級軟件方面語言層面這條線上的技術(shù)主干。
另外一條脈絡(luò)就是互聯(lián)網(wǎng)方面的(HTML/CSS/JS/LAMP…)浊猾。這條脈絡(luò)和上述的那條C/C++/Java的我都沒有放抖甘,作為一個有技術(shù)憂慮癥的人,這兩條軟件開發(fā)的主線一定不能放棄与殃。無論是應(yīng)用還是學(xué)術(shù)单山,我都會看,知識不愁多幅疼。何必搞應(yīng)用的和搞學(xué)術(shù)的分開陣營米奸,互相看不起呢?都是知識爽篷,學(xué)就好了悴晰。
技術(shù)的發(fā)展要根植于歷史,而不是未來逐工。不要和我描述這個技術(shù)的未來會多么美好铡溪,用這個技術(shù)可以實現(xiàn)什么花哨的東西。很多常青的技術(shù)都是承前的泪喊。所以說“某某(技術(shù))要火”這樣的話是沒有意義的棕硫,等它火了、應(yīng)用多了咱們再說嘛袒啼。有些人說不學(xué)C/C++也是沒有問題的哈扮,我對此的回應(yīng)是:如果連主干都可以不學(xué)的話,還有什么其他的好學(xué)呢蚓再?極端一點滑肉,我要這么說:這些是計算機發(fā)展的根、脈絡(luò)摘仅、祖師爺靶庙,這樣的東西怎么可以不學(xué)呢?大部分學(xué)校雖然都會教授C娃属,但是教得都不好六荒。學(xué)校喜歡教微軟的東西,老師好教學(xué)生好學(xué)膳犹。我不是說Windows不好恬吕,但那不是計算機文化的主干,那只是微軟的主干须床、PC的主干铐料。整個計算機文化的主干肯定是源起于Unix/C這條線上(注意,我說的是文化不是技術(shù))。我也寫過很多與Unix文化相關(guān)的文章钠惩,大家可以看看我寫的“Unix傳奇”柒凉。
2.8、對于學(xué)校計算機科學(xué)教育的看法
學(xué)校教的大部分都是知識密集型的技術(shù)篓跛,但是社會上的企業(yè)大部分都是勞動密集型的膝捞。什么是勞動密集型的企業(yè)呢?麥當(dāng)勞炸薯條就是勞動密集型的工作愧沟,用不到學(xué)校教授的那些知識蔬咬。如果有一天你不炸薯條了,而要去做更大更專業(yè)的東西沐寺,學(xué)校里的知識就會派上用場林艘。有人說一個語言、一個技術(shù)混坞,能解決問題能用就行了狐援,我不這樣認(rèn)為。我覺得你應(yīng)該至少要知道這些演變和進(jìn)化的過程究孕。而如果你要解決一些業(yè)務(wù)和技術(shù)難題啥酱,就需要抓住某種技術(shù)很深入地學(xué)習(xí),當(dāng)成藝術(shù)一樣來學(xué)習(xí)厨诸。
我在“軟件開發(fā)‘三重門’”里說過镶殷,第一重門是業(yè)務(wù)功能,在這重門里微酬,的確是會編程就可以了批钠;第二重門是業(yè)務(wù)性能,在這一重門里得封,技術(shù)的基礎(chǔ)就很管用了,比如:操作系統(tǒng)的文件管理指郁,進(jìn)程調(diào)度忙上,內(nèi)存管理,網(wǎng)絡(luò)的七層模型闲坎,TCP/UDP的協(xié)議疫粥,語言用法、編譯和類庫的實現(xiàn)腰懂,數(shù)據(jù)結(jié)構(gòu)梗逮,算法等等就非常關(guān)鍵了;第三重門是業(yè)務(wù)智能绣溜,在這一重門里慷彤,你會發(fā)現(xiàn)很多東西都很學(xué)院派了,比如,搜索算法底哗,推薦算法岁诉,預(yù)測,統(tǒng)計跋选,機器學(xué)習(xí)涕癣,圖像識別,分布式架構(gòu)和算法等等前标,你需要讀很多計算機學(xué)院派的論文坠韩。
總之,這主要看你職業(yè)生涯的背景了炼列,如果你整天被當(dāng)作勞動力來使用只搁,你用到的技術(shù)就比較淺,比較實用唯鸭,但是如果你做一些知識密集型的工作须蜗,你就需要用心來搞搞研究,就會發(fā)現(xiàn)你需要理論上的知識目溉。比如說明肮,我之前做過的跨國庫存調(diào)配,需要知道最短路徑的算法缭付,而我現(xiàn)在在亞馬遜做的庫存預(yù)測系統(tǒng)柿估,數(shù)據(jù)挖掘的那些東西都需要很強的數(shù)學(xué)建模、算法陷猫、數(shù)據(jù)挖掘的功底秫舌。
我覺得真正的高手都來自知識密集型的學(xué)院派。他們更強的是绣檬,可以把那些理論的基礎(chǔ)知識應(yīng)用到現(xiàn)在的業(yè)務(wù)上來足陨。但很可惜,我們國內(nèi)今天的教育并沒有很好地把那些學(xué)院派的理論知識和現(xiàn)實的業(yè)務(wù)問題很好地結(jié)合起來娇未。比如說一些哈希表或二叉樹的數(shù)據(jù)結(jié)構(gòu)墨缘,如果我們的學(xué)校在講述這些知識的時候能夠結(jié)合實際的業(yè)務(wù)問題,效果會非常不錯零抬,比如:設(shè)計一個IP地址和地理位置的查詢系統(tǒng)镊讼,設(shè)計一個分布式的NoSQL的數(shù)據(jù)庫,或是設(shè)計一個地理位置的檢索應(yīng)用等等平夜。在學(xué)習(xí)操作系統(tǒng)的時候蝶棋,如果老師可以帶學(xué)生做一個手機或嵌入式操作系統(tǒng),或是研究一下Unix System V或是Linux的源碼的話忽妒,會更有意思玩裙。在學(xué)習(xí)網(wǎng)絡(luò)知識的時候兼贸,能帶學(xué)生重點學(xué)一下以太網(wǎng)和TCP/IP的特性,并調(diào)優(yōu)献酗,或是能做一個網(wǎng)絡(luò)上的Pub/Sub消息系統(tǒng)或是做一個像Nginx一樣的web server寝受,那會更好。如果在學(xué)圖形學(xué)的過程中能帶領(lǐng)學(xué)生實踐開發(fā)一個作圖工具或是一個游戲引擎罕偎,那會更有意思很澄。
總之,我們的教育和現(xiàn)實脫節(jié)太嚴(yán)重了颜及,教的東西無論是在技術(shù)還是在實踐上都嚴(yán)重落后和脫節(jié)甩苛,沒有通過實際的業(yè)務(wù)或技術(shù)問題來教學(xué)生那些理論知識,這是一個失敗俏站。
2.9讯蒲、如何在壓力下,享受技術(shù)帶來的快樂
中國人中庸的思想肄扎,入世和出世墨林,每天的工作就是入世。舉個例子犯祠,在上海的時候旭等,給交通銀行做項目的時候,每周休息一天衡载,早九點到晚十點搔耕,每天工作12個小時,這樣的工作持續(xù)了一整年痰娱,沒有節(jié)假日弃榨,項目上的技術(shù)也沒什么意思。當(dāng)時我晚上十點回到住處梨睁,還想學(xué)一些C++/Java和Unix/Windows的技術(shù)鲸睛,于是就看書到晚上11:30,每天如此坡贺,一年下來學(xué)到很多東西腊凶,時間沒有荒廢,心里就很開心拴念。我覺得當(dāng)時是快樂的,因為有成長的感覺是快樂的褐缠。
現(xiàn)在的我政鼠,工作、寫博客队魏、養(yǎng)孩子公般,事情其實更多万搔。我早上7:30起床,會瀏覽一下國外的新聞官帘,hacker news瞬雹,tech church,reddit刽虹,highavailability之類的站點酗捌,9點上班。晚上6涌哲、7點鐘下班胖缤,開始帶孩子。十點鐘孩子睡了覺阀圾,我會開始重新細(xì)讀一下這一天都發(fā)生了些什么事情哪廓。這個時間也有可能會用來看書。學(xué)習(xí)的過程我是不喜歡被打斷的初烘,所以從十點到十二點涡真,家人都睡了,這正是我連續(xù)學(xué)習(xí)的好時間肾筐《吡希可能從晚上11:30開始,我會做點筆記或者寫博客局齿。我現(xiàn)在對酷殼文章的質(zhì)量要求比較高一些剧劝,所以大概積累一個星期的時間才可以生成一篇文章。每天我大概都在一兩點鐘才會睡覺抓歼。沒辦法讥此,我有技術(shù)焦慮癥。但是覺得這樣的生活很充實谣妻,也很踏實萄喳。
另外,任何一門技術(shù)玩深了蹋半,都是很有意思的他巨。有些人形成了一個價值取向,“我只做什么减江,絕不做什么”染突。前段時間有一個剛來亞馬遜的工程師,他原來做的是數(shù)據(jù)挖掘推薦系統(tǒng)辈灼,后來公司重組要他做前端份企,他不肯。我覺得巡莹,前端后端都是編程司志,Javascript是編程甜紫,C++也是編程。編程不在于你用什么語言去coding骂远,而是你組織程序囚霸、設(shè)計軟件的能力,只要你上升到腦力勞動上來激才,用什么都一樣拓型,技術(shù)無貴賤就是這個意思。
回到問題贸营,怎么才能享受到快樂呢吨述?第一,入世和出世要分開钞脂,不要讓世俗的東西打擾到你的內(nèi)心世界揣云,你的情緒不應(yīng)該為別人所控,也不應(yīng)該被世俗所污染冰啃,活得真實邓夕,你才會快樂。第二點就是要有熱情阎毅,有了熱情焚刚,你的心情就會很好,加班都可以是快樂的扇调,想一想我們整個通宵用來打游戲的時光矿咕,雖然很累,但是你也很開心狼钮,這都是因為有了熱情的緣故碳柱。
2.10、做自己是最難的
我承認(rèn)我活在我的精神家園里面熬芜。我推薦大家看一下王小波的《我的精神家園》莲镣,這篇文章對我的影響非常大∠牙看了這篇文章瑞侮,你就會明白我為什么要躺在自己的池子里,如果不想被這個社會所污染鼓拧,就必須要躺在自己的池子里半火。做大眾是很容易的,做自己是最難的季俩。當(dāng)你老了的時候慈缔,回想過去,如果你是為自己而活的种玛,你總會覺得很踏實藐鹤。可能有人會覺得我偏激赂韵,沒關(guān)系娱节,為什么要所有人看法都一致呢?世界因為不同而美麗祭示,多元化的價值觀并不沖突肄满。