UCloud資深工程師邱模炯,講述他的經歷與成長

發表於2019-05-11
邱模炯,UCloud資深工程師,北京大學計算機系研究生畢業,擅長作業系統、虛擬化和資料中心自動化等雲平臺的基礎技術。
在採訪邱模炯的過程中,也是經歷了很長的一段時間,沒有機會與這位高材生大牛人物面對面的採訪,但是從郵件採訪中,可以感覺出他是一個認真周到而又注意細節的人,當然也是非常忙碌的開發者。

以下是小編的整理報導:

回想起來在成為開發者一路上都是有很多機緣巧合聯絡起來的。我是2007年北京大學計算機系研究生畢業的。那時國內還沒幾個人做虛擬化,而研究生實驗室剛好有Xen虛擬化的專案,於是學習了大量核心知識,並對虛擬化底層技術形成濃厚興趣。除了研究生方向是個巧合,畢業工作也是。

國內的核心開發崗位非常少,更不用提虛擬化方向的核心開發。所幸的是,VMware恰好進入中國,並在次年搭建了核心開發團隊。所以我走上了核心開發道路,實際參與到VMware這個最優秀的虛擬化核心。離開VMware後,騰訊的工作機會也是巧合。

那時是2010年,BAT(BAT又指百度騰訊阿里這三家公司,分別是B百度、A阿里巴巴、T騰訊的首字母。所以縮寫BAT,指的是目前中國IT行業3巨頭的簡稱)發展很快,需要建立核心團隊去做深層次工作。在這樣的背景下來到了騰訊建立作業系統團隊。

時過境遷,現在則大大不同。國內不少公司都提供了核心開發崗位,比如BAT、UCloud等。從核心角度講,這是新的大環境,鑄就優秀核心人才的大環境。我也看到了越來越多的後起之秀,他們在這個大環境茁壯成長,青出於藍而遠勝於藍。

我的技術經歷有兩個特點:一是偏核心,作業系統和虛擬化以核心為主;二是研發和運維相結合,經常需要和運維打交道,資料中心自動化更是如此。


工作經歷:
 VMware期間:曾經參與過VMware虛擬化產品,負責以及參與幾個特性的開發:時間同步、Host Guest File System核心檔案系統、還有Record/Replay回放,這些都是核心技術。

VMware核心開發是當時我夢寐以求的工作,進步很快。我見識到虛擬化領頭羊產品的方方面面,包括核心原理,應用架構,解決方案,前沿課題等。五六年後的今天,我仍然感到早年做的一些工作還未過時。

作為核心工程師,有幸在最優秀的虛擬化產品上貢獻自己的程式碼,這段經歷除了技術得到提升外,更重要的是養成了受益終生的研發習慣。

受VMware那段經歷影響很大。對產品開發的認識,對核心的經驗習慣都是那時培養的。
VMware工作期間參與了最核心的VMM(Virtual Machine Monitor)的工作,與一批最頂尖的博士一起討論問題,從技術到團隊合作到個人品行都有很深的體會。

我的mentor是VMware美國的華人資深工程師徐旻博士,很幸運得到了他的手把手指導。大到模組設計必須嚴謹推演,小到每一行核心程式碼都要多人review仔細推敲,程式碼註釋裡連一個標點符號都不能錯。VMware產品之所以優秀不是偶然的。核心程式碼容不得半點大意。

欣賞VMware期間的mentor,VMware美國的資深工程師徐旻。不光研究做得出色,工程理念也是一流的;能耐心教一個剛入門沒兩年的工程師,幫助成長。這份耐心和奉獻的精神要繼承下來。我一直努力向他靠齊,並試圖傳導給我所指導過的工程師。

騰訊期間:離開VMware後來到了騰訊,從零建立起作業系統團隊,為公司建立了tlinux作業系統。tlinux是基於開源社群成果僅在騰訊內部使用的Linux,執行於公司幾十萬臺伺服器上。核心採取類似於商業Linux公司的道路自主維護,使用者態發行版基於CentOS6。

     這個專案的意義在於構建穩定且高效執行於海量伺服器的Linux。騰訊的資料中心伺服器規模國內第一,即使放在全世界也罕見。這樣的海量規模下,伺服器的穩定和高效意義非常大。關於穩定,只要軟體故障率(按月計)比起商業Linux優越哪怕千分之一,那麼會給業務帶來很大的價值,也節省大量人力無力。同樣由於海量規模,作業系統運維工作很繁重,為此我們開發了一大堆自動化工具,所有的操作都是傻瓜式的一鍵操作。

    雖然tlinux故障率遠低於商業Linux,但還是因為海量規模,我們每天仍然能觀察到幾十上百臺當機,如果靠人工去分析,得幾十個人才能應付,為此我們還開發了核心故障的自動定位,大量節省了人工並提高相應速度。關於高效,主要從效能考量,為重點業務定製核心幫助提升特定場景下的效能表現,改進業務架構等。

   除了作業系統工作外,我還負責了幾個運營自動化專案。龐大的資料中心是運營自動化實踐的絕好機會,這點我很幸運。我對海量伺服器的一切很痴迷,騰訊期間的工作廢寢忘食,一心在工作上。

    騰訊的tlinux專案幫助我形成了產品、運營和研發的概念及其協同。和VMware傳統軟體產品開發不一樣,騰訊是個網際網路公司。在騰訊,產品、運營和研發處處體現網際網路思維,如先抗住再優化,小步快跑等。tlinux專案還讓我學會如何帶領團隊,學會了要像家人一樣對待團隊:包容、幫助。

UCloud期間:現在在UCloud參與核心和平臺開發。非常看好雲平臺的長遠意義,同時想更接地氣,於是來到了UCloud。在UCloud負責各產品後端的公共平臺開發,包括核心和運營自動化系統。

雲平臺最重要的是穩定性。核心直接影響到雲平臺的穩定性,我們結合產品需要對Linux核心進行深入分析並開發了包括熱補丁在內的配套技術。雲平臺的穩定也和運維關係很大,我們正在開發相關的運營自動化系統,避免人工運維引入的操作失誤,主要包括自動部署,配置管理資料庫,集中管理分發,基礎監控和自動統計分析等方面。

在UCloud進一步深化了我的網際網路理念。UCloud是雲平臺領域的創業公司,而云平臺對技術的廣度和深度要求都很高。雖然如此,公司以產品和運營為先,技術為後盾。這其實是體現使用者服務的網際網路理念。

接觸計算機至今沒有參加過任何培訓,也沒有獲得過任何認證,屬於“無證程式設計師”。從我個人經驗看,底層開發(核心開發)技術能力的培養一是跟專案,二是專注思考。不管在VMware、騰訊還是現在,每一個專案只要細心做好就會有進步,思考得越多越有收穫。比如,工作以來的3項美國專利均來自於對專案所涉及技術點的思考。

又比如,騰訊海量伺服器每天的當機都不少,如果每次當機都要人工分析,需要耗費大量人力,所以我們就開發了核心當機自動定位分析的系統。在UCloud,每一臺伺服器直接為使用者服務,是不能重啟的,所以我們只能搞定核心熱補丁技術並應用進生產環境,這些在國內都屬於領先的工作。

邱模炯也提到了他的遺憾:“多年前就想多講課,與人分享技術和經驗,但一直沒有切實行動,一次主動演講都沒有,只有被動應付式的。這點很失敗。有時確實忙得沒時間,但主要是沒有足夠重視。這也和性格有關係。我比較保守,專注於技術鑽研而不喜歡宣傳。希望一年後改變這點,多和外部討論技術。”

對於工程師們的生活習慣,一直很好奇,邱模炯每天以工作為主。和很多程式設計師一樣有個“壞習慣”:喜歡深夜工作。有時進入狀態後,特別是感興趣的事情,就會沒日沒夜,連睡覺都很少。不過不時會去附近學校鍛鍊身體,偶爾打一下乒乓球羽毛球、爬山之類。

關於之後的職業計劃邱模炯說:做感興趣的工作,繼續從事作業系統、虛擬化和資料中心自動化這幾個領域,鍛鍊相關的巨集觀判斷力。同時希望能幫到更多的剛畢業的學生,把我認為值得發揚的技術和經驗傳授給他們,而具體的方式比如撰寫文章、講課(目前做得很少)等是我後面想要發展的。

邱模炯推薦了《失控》這本書給我們。

《失控》,全名為《失控:機器、社會與經濟的新生物學》(Out of Control: The New Biology of Machines, Social Systems, and the Economic World)。
這是一部思考人類社會(或更一般意義上的複雜系統)進化的“大部頭”著作,對於那些不懼於“頭腦體操”的讀者來說,必然會開卷有益。

這本書的作者必須要提一下,是前段時間來華的凱文·凱利Kevin Kelly,人們暱稱他為 KK。《連線》(Wired)雜誌創始主編。在創辦《連線》之前,是《全球概覽》雜誌(The Whole Earth Catalog,賈伯斯最喜歡的雜誌)的編輯和出版人。1984年,KK發起了第一屆黑客大會(Hackers Conference)。他的文章還出現在《紐約時報》、《經濟學人》、《時代》、《科學》等重量級媒體和雜誌上。
凱文·凱利被看作是“網路文化”(Cyberculture)的發言人和觀察者,也有人稱之為“遊俠”(maverick)。

 如非註明,本站文章系極思維原創,轉載請在正文中標註並保留原文連結
評論(2)

相關文章