衛(wèi)向軍:程序員,如何三十而立?

衛(wèi)向軍,國內(nèi)資深互聯(lián)網(wǎng)技術(shù)專家,有多年的高并發(fā)、高可用、高可擴展大中型系統(tǒng)架構(gòu)設(shè)計經(jīng)驗,擅長大規(guī)模分布式系統(tǒng)架構(gòu)設(shè)計,曾參與和推進億級用戶下的新浪微博平臺架構(gòu)演進,國內(nèi)網(wǎng)盤先驅(qū)金山快盤商業(yè)版本研發(fā)負責(zé)人,系統(tǒng)從0到百萬的設(shè)計者和推動者,在面向企業(yè)的音視頻會議系統(tǒng)方面有深厚造詣,參與和推動微軟的Lync統(tǒng)一通訊產(chǎn)品向移動平臺的轉(zhuǎn)型工作,活躍于國內(nèi)知名的中高端技術(shù)社區(qū)InfoQ
1.席文奕:您是否可以簡單的做一下自我介紹?
衛(wèi)向軍:大家好,我是衛(wèi)向軍,畢業(yè)后在微軟工作五年,先后參與研發(fā)微軟的Visual Studio建模工具(Spec Explorer)、面向企業(yè)的視頻會議系統(tǒng)Lync,在微軟的這段時間積累了深厚的音視頻協(xié)議棧經(jīng)驗。
接著去了金山云,作為負責(zé)人主導(dǎo)了金山快盤商業(yè)版的研發(fā)工作,在一年時間內(nèi),成為國內(nèi)企業(yè)網(wǎng)盤領(lǐng)域的領(lǐng)頭羊,期間帶過產(chǎn)品、技術(shù)、設(shè)計、測試,積累了產(chǎn)品研發(fā)從0到1探索的寶貴經(jīng)驗。
14年在國內(nèi)網(wǎng)盤的熱潮退卻后,來到新浪微博,重頭搭建微博的文件存儲服務(wù)平臺,這是一個面向短視頻、圖片、附件、長微博等各種文件的存儲代理中間層,以及消息箱基礎(chǔ)架構(gòu)的優(yōu)化和迭代,并積極推動億級用戶下的新浪微博平臺架構(gòu)演進。
3個月前,來到在線教育創(chuàng)業(yè)公司三好網(wǎng),擔(dān)任CTO職位,負責(zé)公司的產(chǎn)品研發(fā)和技術(shù), 主要有教育P2C平臺交易系統(tǒng)、后端CRM和供應(yīng)鏈管理系統(tǒng)、面向老師和學(xué)生的1對1直播教學(xué)系統(tǒng)、好學(xué)寶智能學(xué)習(xí)硬件、搜索推薦統(tǒng)計平臺、移動App等。
2.席文奕:從一名普通程序員成長為一線互聯(lián)網(wǎng)公司的架構(gòu)師,您的進階之路是怎樣的?換言之,您從一個菜鳥,到微軟,到金山云,再到新浪微博,您的職業(yè)生涯經(jīng)歷了哪些轉(zhuǎn)變?
衛(wèi)向軍:從我的個人經(jīng)歷來說,每一次職業(yè)生涯的轉(zhuǎn)變,在個人專業(yè)能力和管理水平上都有質(zhì)的提升。
微軟工作的5年,在進階之路上是打基石的階段,微軟的工程師文化和世界一流的軟件開發(fā)管理流程對我的影響深遠,在微軟經(jīng)歷了Mentor審核我的代碼,到不需要審核,到審核其他人的代碼,其嚴(yán)謹、認真、精益求精的工程師文化為自己打下深厚的技術(shù)基礎(chǔ),同時全球化的跨團隊開發(fā)經(jīng)驗也鍛煉了自己的組織協(xié)調(diào)能力和良好的溝通能力。
在金山云的2年時間,個人提升最大的還是研發(fā)團隊管理能力以及技術(shù)的廣度,當(dāng)時項目在內(nèi)部是當(dāng)成創(chuàng)業(yè)孵化項目來做,自己從一個單純的技術(shù)人員,轉(zhuǎn)變?yōu)榧夹g(shù)管理者,在產(chǎn)品設(shè)計、架構(gòu)設(shè)計、項目管理上投入了非常多的精力,在項目推進過程中遇到各種難題不斷的解決, 逐步成長為真正的項目負責(zé)人,個人的主動性、執(zhí)行力都有了質(zhì)的提升。
新浪微博的1年半時間,現(xiàn)在回頭看是跨越了一個瓶頸,過去的技術(shù)積累,在新浪微博億級DAU的磨練下,逐步積累了寶貴的千萬級高并發(fā)、高性能、高可擴展的互聯(lián)網(wǎng)架構(gòu)和研發(fā)經(jīng)驗。當(dāng)然,這其中也離不開自己的辛苦努力,自己所帶的業(yè)務(wù)發(fā)展快,每隔1、2個月就有新的流量挑戰(zhàn),需要不停的重構(gòu)系統(tǒng),團隊晚上經(jīng)常一起加班到深夜,另外開始嘗試主動在網(wǎng)上發(fā)表技術(shù)文章,其實過去也一直有寫文章的習(xí)慣不過沒有公開分享,嘗試過以后,發(fā)現(xiàn)效果非常顯著, 公開文章不進會給自己更大的壓力逼迫自己去總結(jié)、去思考有沒有邏輯漏洞,同時技術(shù)同仁的討論交流可以開闊自己的視野,有時候甚至能解答自己一直沒理解清楚的技術(shù)疑點。在微博這段時間,自己帶領(lǐng)團隊進行技術(shù)攻堅的能力也得到了很大的提升,團隊管理、團隊招聘和培養(yǎng)、團隊激勵、復(fù)雜人事關(guān)系處理能力都越來越得心應(yīng)手 。
加入三好網(wǎng)只有四個月左右,需要管理整個產(chǎn)品、技術(shù)、設(shè)計團隊,我們的在線1對1業(yè)務(wù)做的事情又非常多,在團隊人員管理、技術(shù)攻堅、項目管理上都遇到非常大的挑戰(zhàn),目前通過加班勉強能把負責(zé)的事情搞定,自己給自己打59分,離夢想中的自組織式戰(zhàn)斗力一流的團隊還有很大的距離,希望經(jīng)過一年的磨練,在構(gòu)建高效的研發(fā)管理體系上有所心得。
3.席文奕:對您來說一個優(yōu)秀的架構(gòu)師需要具備什么樣的技能?或者什么樣的知識結(jié)構(gòu)?
衛(wèi)向軍:我想從架構(gòu)的本質(zhì)談起之后,希望大家理解在做一些建構(gòu)設(shè)計的時候,它的出發(fā)點以及它解決的問題是什么。
架構(gòu),剛開始的解釋是我從知乎上看到的。什么是架構(gòu)?有人講,說架構(gòu)并不是一個很懸乎的東西,實際上就是一個架子,放一些業(yè)務(wù)和算法,跟我們的生活中的晾衣架很像。更抽象一點,說架構(gòu)其實是對我們重復(fù)性業(yè)務(wù)的抽象和我們未來業(yè)務(wù)拓展的前瞻,強調(diào)過去的經(jīng)驗和你對整個行業(yè)的預(yù)見。
我們要想做一個架構(gòu)的話需要哪些能力?我覺得最重要的是架構(gòu)師一個最重要的能力就是你要有戰(zhàn)略分解能力。這個怎么來看呢,第一,你必須要有抽象的能力,抽象的能力最基本就是去重,去重在整個架構(gòu)中體現(xiàn)在方方面面,從定義一個函數(shù),到定義一個類,到提供的一個服務(wù),以及模板,背后都是要去重提高可復(fù)用率。第二,分類能力。做軟件需要做對象的解耦,要定義對象的屬性和方法,做分布式系統(tǒng)的時候要做服務(wù)的拆分和模塊化,要定義服務(wù)的接口和規(guī)范。 第三,算法(性能),它的價值體現(xiàn)在提升系統(tǒng)的性能,所有性能的提升,最終都會落到CPU,內(nèi)存,IO和網(wǎng)絡(luò)這4大塊上。
4.席文奕:程序員如何合理做好時間管理?您有哪些好的建議?
衛(wèi)向軍:在時間管理上,我個人的經(jīng)驗是首先要對生活和工作保持熱情,這是基礎(chǔ)。在此之上尋找合適的自己的時間管理方法將會達到事半功倍的效果。針對程序員來說,根據(jù)“二八原則”,找尋自己每天最清醒的時間來做最重要的事情,每天留出一段時間來思考個人未來的發(fā)展,做好遠期規(guī)劃,了解行業(yè)、技術(shù)前沿知識,不斷更新自己的知識結(jié)構(gòu)。市場上也有一些不錯的時間管理的書和網(wǎng)站,比如番茄工作法、GTD等都很不錯,推薦大家看看,找到適合自己的時間管理方法。
除了留出20%的時間充電,不斷提升個人的能力和素質(zhì),剩下80%的時間中,同樣遵循“二八原則”,80%的時間專注于20%重要的事情上,提早規(guī)劃安排,盡量減少分配在緊急事情上的時間。
最后說一點,隨著移動互聯(lián)網(wǎng)的沖擊,大家花在智能手機上瀏覽碎片化信息的時間越來越多,這種情況下,逐步建立自己的閱讀習(xí)慣和閱讀體系, 把時間花在一些有價值、有內(nèi)涵、有深度的文章上,不要浪費在大量無關(guān)緊要的突發(fā)、娛樂新聞上。
5.席文奕:知乎上有相關(guān)的討論,碼農(nóng)35歲以后怎么辦?您怎么看待這個問題?
衛(wèi)向軍:這是一個非常好的問題,如果一個碼農(nóng)有意識思考35歲以后做什么,說明他是有危機意識的。從我的過往經(jīng)歷和感悟來說,每個人35歲以后在職場中處于什么位置和踏入職場后每一步的規(guī)劃和堅持執(zhí)行息息相關(guān)。所以從當(dāng)下開始要思考自己想要什么,給自己設(shè)立清晰的目標(biāo),基于SMART原則制定相應(yīng)的執(zhí)行方案來一步步達成自己的目標(biāo)。對于技術(shù)人員來說,技術(shù)路線還是管理路線?電商行業(yè)還是社交行業(yè)?創(chuàng)業(yè)公司還是大公司?專注于技術(shù)還是轉(zhuǎn)型產(chǎn)品、測試?后臺技術(shù)還是前端技術(shù)?朝九晚五還是996?如何選擇呢,在我看來最重要的是追隨內(nèi)心深處的聲音,做自己喜歡的事情,保持長期的熱情和堅持,在35歲時一定能達到一個滿意的人生狀態(tài)。

