1. 程式人生 > >我在華為的五個瞬間

我在華為的五個瞬間

從08年7月28日正式加入華為,到12年1月17日正式離開華為,三年半的光陰,我一直沒有機會好好整理一下我的行囊。現在回過頭來,卻又發現故事太多,無從下筆。也罷也罷,挑選我在華為五個令我深刻的瞬間,這些故事我帶著不同的感觸經歷。不管現在開放的網際網路上如何風言風語,不管在其中經歷了多少歡樂或者悲傷,有多少感慨和抱怨,我依然非常感激華為帶給了我這波瀾跌宕的時光,謝謝我的朋友們,是你們,一直陪伴我走完這段旅程。

我參與的第一個專案

我參與的第一個專案是服務端的一個產品的研發,做一個涉及到營銷業務的需求,對當時的我來說,業務邏輯還比較複雜,而且實現基本上要落到儲存過程中實現;介面層只需要實現一個SOAP介面即可,相對來說簡單得多。那個時候還沒有開始大規模推行敏捷實踐,而且設計文件也較為講究,專案組成員,尤其是結對測試,給我的方案提出了相當多的疑惑,被迫我一頭扎到業務裡面去,到最後,好歹把流程梳理清楚。

我實現的整個程式碼量只有2K左右,但我依然感到自豪,做了一個完整的版本,體驗了整個基於瀑布模型的流程。期間,專案經理在專案中及時的反饋和自我反省,給我留下的深刻印象。

北京出差的經歷

出差時忙碌而痛苦的,在兩個半月的時間裡,要搭建環境、調測、維護、保障、客戶約談、交付等等等等,算是真正的接觸一線。

工作地點開始在上地的機房內,每天對著N臺龐大的機架,巨大的噪音震得我腦袋直疼,出了大樓耳朵還是嗡嗡叫個不停。我們就拿紙箱子當桌、漆包線軸當椅,通宵若干次,硬是堅持到基本的調測完成。

之後搬到了金融街,每天接電話接到吐血,經常遇到需要同時接兩個電話的情況,其中有一週左右還需要24小時支援,一晚被迫起來好幾次處理問題,天天掛個眼袋,看誰都是凶神惡煞的眼神。

從零開始做,一個大型的電信門戶專案

這個專案最開始只有幾個開發人員,到後來發展到若干個分支版本累計足足有數百人的大團隊,我們視這個專案,就像看自己的孩子一樣,看著它從無到有,逐步成長、成熟。

開了動員會,接了軍令狀,大家充滿熱情,心裡卻都又沒有譜,我們就是在這樣的狀態下動工的。最開始計劃一週多的迭代,足足做了將近一個月才完成。我們缺少的是這個領域內全方位的經驗,產品的初創總是陣痛的。我一直覺得,一個程式設計師的成長,不能只經歷那些成熟穩定的專案,一定要去體味那些從無到有的過程,無比的激動人心。

在專案剛開始的這段時間內,我們每天都在9、10點鐘或以後回家,每天除了貢獻許許多多專案的想法,做設計、搭框架、立規約,還充實自己這方面的內容,那段時間的自己,真可以稱得上十足的奮鬥者。

一個失敗的方案

這個方案的罪魁禍首是我。一個關於頁面整合的方案,即一個頁面要引入其他子頁面,有多種可以實現的方式。通篇都是我完成的方案設計。最開始使用ajax引入外部div的方式,被證明頁面複雜、結構混亂,而且很容易遇到頁面上的問題;後來我們還考慮過用iFrame等替代方案,都沒能成行。最後,我主導設計了把被引入的頁面以自成plugin的形式加入到父頁面所在應用的方式,另一個同事細化了這個辦法,實踐證明這是一個比較好的方案。

這件事情對我觸動很大,我做了回溯,把我自己的總結和完整的問題追加到了專案組團隊的部落格上。程式設計師總要經歷大大小小的失敗,沒有失敗就沒有成長。之後再做一個設計的時候,我會想,哪些特性才是實際需要的,怎樣去避免過度設計和冗餘實現。

持續的效能優化

效能優化對於任何一個大型網站來說都要涉足。有的效能和穩定性問題定位複雜、解決困難,非常折磨人。

最開始我以解決實際的具體問題為主,輔以一些通用的、框架官方推薦的優化方案,並且處理了一些開源框架內部和我們自己程式碼中不合理的實現,如成為瓶頸的全域性鎖等等。

之後的階段我開始做一些簡單的頁面靜態化,這部分對效能提升有很好的效果,但是它是雙刃劍,也帶來了一些業務展示方面的問題。

隨著頁面靜態化方案的不斷落實,我總結了一些資料採集工具和問題定位工具,參考了一些網際網路網站的效能優化方案,給專案做了從Linux平臺引數調優到程式碼呼叫分析的全面體檢,並且給出了後續專案在效能方面改進的方向。

PS:關於那些我要感謝的人

還有無數像以上一樣的故事,都是你們陪我一起經歷。沒有華為,我不會成長成為現在的自己;沒有你們,就沒有我的今天。願你們一切都好。我要尤其感謝的朋友們包括:

WWJ:你是我的導師,我新員工階段對我影響最大的人;

榮哥:從你身上我閱讀到了執行力,一個最腳踏實地的優秀專案經理;

曉君:你是我的好朋友,我們一起吃飯、一起加班,也一起聊天,你是我最願意分享技術、體驗和感受的物件;

YL:你負責的效能專項測試是我經歷過的當中最優秀的,沒有之一;

尹老大:從你身上我學到了優秀的工作方法、待人處事的方法,這些將令我受益很長時間;

……

文章系本人原創,轉載請註明出處和作者