[轉] 記錄我在華爲的經歷
轉自:http://blog.tianya.cn/blogger/trackback.asp?BlogID=1185537&PostID=10754599
我離開華爲已經將近一週了,在新公司上班也將近一週了,忽然感覺差不多要忘記在華爲的經歷,所以決定還是把難得的經歷寫下來,做一個紀念。可能文中涉及一些華爲的數據,本來我不應該給出的,但是既然是一個總結,那就儘量的記錄一下吧。
我對華爲的感情是很複雜的,我至今仍熱愛華爲,不知道爲什麼,真的不知道,就是愛。但是我肯定不會再回去,真的不會再回去了。
嚮往
我在XX大學度過了6年半的大學時光,拿到了研究生的學位,在大學本科畢業的時候,我也跟着大家涌到大學的報告廳,聽華爲中興大唐這些企業的招聘會,當時是2002年,網絡泡沫幻滅後的第一個高校畢業期,大批高科技企業招人的門檻大大提高,雖然薪水還是挺高的,但是給你的感覺就是,你去不了,沒有資格。
本科讀的是熱力發動機,也就是汽車發動機,我是和一大批高考不理想的同學被調配到這個專業的,可想而知,大家對這個專業沒有什麼感情,雖然這個專業是XX大學的重點學科。在大二的時候,由於成績較好,我可以選修另一個專業,我高考的第一第二志願是通訊和計算機,所以我決定報這兩個專業之一,猶豫不決之下,硬幣背後隱藏的命運幫我決定學習通信學科,也許我和華爲的淵源就此開始。
本科畢業了,考研就考了通信,分數還行,所以研究生階段每年也就交800塊的住宿費,沒有其他費用。由於X大通信研究生沒有什麼活兒做,生活還是有滋有味的,雖然X大的通信專業很一般,但是既然是和計算機沾邊的,按葛優的話講:“沒想到你也是IT界的人了”,前途似乎很不錯。
就這樣,結束了沒有什麼回憶的研究生生活,我準備考上交大博士,因爲太浮躁,沒有堅持下來,就和大家一起找工作。
應聘
其實找工作挺容易的,X大畢竟是國內不錯的工科大學,只要不是要求太高,工作一抓一大把,2004年10月末,日月光集團來X大開招聘會,算是最早進X大的企業,對這種公司的招聘會,通信系的同學根本懶得參加,或者去看個熱鬧。
11月4號,華爲來X大開招聘會,我投了一份簡歷,11月5號,ST來X大開招聘會,我也投了一份簡歷,並當場進行了一面。當時比較單純,認爲進華爲是很容易的事情,就再也沒有投過紙件形式的簡歷,果然,華爲安排的筆試在9號進行,我應聘的是算法工程師,筆試在大學的大階梯教室進行,有考算法的,有考軟件的,發試卷前,HR宣佈:如果考算法的人看到題目較難,可以臨時改主意去考軟件工程師,果然,試卷一發下來,原來考算法的10幾個人,呼啦啦差不多都跑去考軟件了,我和另外2,3個人還是流下來考算法。因爲研究生課題就有一點算法的內容,加上準備考博的複習,算法的題還是沒有難倒我。
很快就是華爲的一面,華爲的效率還是高啊,給我面試的考官叫張XX,本來我是沒有必要記着他的名字的,但是有時記住和記不住就是像蝴蝶揮動的翅膀,說不準帶來怎樣的影響。一面很順利,編程題很簡單,鏈表排序什麼的,我做了一會就作出來了,不過卷面很髒,我就忙着向他解釋,他不太理我,看了一會就說做的沒有什麼問題。然後又問問我的一些研究生課題相關的內容,很明顯,他想看看我到崗後能不能儘快的開始工作,因爲他問了很多仿真軟件的東西,我就應付着。
一面很難受,算法方面我確實還比較薄弱。
一面結束的時候,考官跟我說讓我回去等通知,我很坦然,既然讓等那就等吧,考官很快補充道,算法工程師二面考官還在深圳,由於各地應聘算法工程師的人員比較少,算法的二面考官要集中的來北方的幾個城市,所以請我不要着急。我想這個理由很合理,就回宿舍了。
等了一天
又等了一天,我有點着急,XX大學一共就考了幾個算法工程師,二面的考官不會不來了吧,打個電話問問,我打了好幾通電話,總算接入了華爲HR的手機,她叫什麼我忘記了,很遺憾。她是一個好HR,很負責。我把情況和她說了,她還是讓我等,我就建議說,不如安排電話面試吧,她考慮了一下,說要找一面考官確認一下。因爲當時已經是深夜11點多了,我就沒有再電話跟蹤這個事情。
第二天,應該是12號上午,我很無聊,上網聊天,打聯衆,投網上簡歷。到9點多的時候,張XX打電話給我,讓我儘快過去參加電話面試,我很高興,去了,在賓館的房間裏,跟電話那邊聊了好長時間,聊完了,張XX讓我在門外等,他進去和對方交流,然後代寫了二面的意見。二面的過程中,聊的比較開心,都是我很熟悉的東西。
張XX填寫好二面意見,就告訴我在賓館大廳了等一會,大概2個小時後安排三面,到中午的時候,本來我要去領盒飯吃了,因爲裏面好像有我愛吃的紅燒肉,但是就被叫去三面,二面結束和三面開始也就隔了半個小時。
三面就是HR的面試了,是個女的,話不多,主要是我講,我是比較能瞎侃的,什麼話好聽就侃什麼唄,聊到那個女的嘴角上翹,我就知道基本上也就進入華爲了。
三面結束也就隔了10分鐘就是四面,我又沒有吃到盒飯,因爲沒有了,四面的是一個上海研究所的什麼部門經理一類的,聊的甚歡,印象較深的是他問我是否知道華爲的某個口號似的東西的時候,我比較乾脆的答了一個“不知道”。
當天晚上籤約,我成了華爲的一員,畢業後要去深圳從事算法工程師的工作。薪水是5千,還算滿意。
那以後的幾天,我把盟軍敢死隊幾個版本從頭打倒尾,打發時光唄,工作定下來了,還有什麼好說的。偶爾跟大家去擠招聘會,看看熱鬧,還有就是幫我的一個好朋友看看招聘信息,很遺憾,他沒有通過華爲三面,後來都沒有找到什麼合適的工作,一氣之下跑到上海交大讀博士去了,至今在讀。
簽約後的一週左右,華爲的HR給我電話,問我願不願意到北京做軟件工程師工作,有北京戶口,條件是要12月就入職,我當時對北京沒有什麼好印象,考慮一下就回絕了,後來我的父母和姐姐都勸我到北京工作,我又考慮了一天,打電話給HR,說我願意改到北京做軟件,她們就讓我到天津今晚大廈改簽協議。北京,而不是深圳,還是北京好一些,我本人沒有什麼特別的偏好。
11月的後半個月,電腦遊戲和QQ就是全部,在QQ上我認識了一批共同赴深圳參加入職培訓的北京研究所的同學。12月15號晚,我們坐上臥鋪火車,見到了原來在QQ那邊的同學們,其中一些人成了我現在最好的朋友。12月16號晚,火車經過23個半小時的旅途,到達深圳,又打車去華爲基地
兩週的培訓沒有什麼好講的,隨便說說吧,一是我們男生要西裝領帶,當時是冬天,深圳的氣溫不是很高,中午30度左右,這個要求還可以接受,我這個人懶,這是我平生第一次穿這麼不舒服的衣服;二是深圳的服務業真的很發達,商場的營業員絕對是百拿不厭的,買了東西,可能很貴,但是心裏很舒服。比天津的營業員,唉;三是華爲基地的食堂真不錯,也是是去的時間較短纔有這個感覺,我們培訓結束的時候,到某個食堂聚餐,15塊錢吃自助,大螃蟹,對蝦,皮皮蝦,魚,蛤蜊和各種肉類,蔬菜水果,好便宜,我都懷疑是不是選擇到北京是一個錯誤的決定;四是深圳的車速太快,我們上街經常看見車禍現場,就在華爲基地百草園,在休息日那天,我們樓下就發生了一起車禍。我沒有看家事故的過程,只看到撞散的摩托和一大灘血跡。
入職
回到北研所,是12月30號晚,飛機是空客A320,滿飛機都是華爲到北研所報到的同學。坐飛機不舒服,不如火車臥鋪,飛機下降的時候,我的耳朵有點疼。
12月31號到北研正式報到。分配了部門,由於我被分到一個新產品,還沒有成立部門,就暫時掛在北研的總體技術部下面。
在這裏我認識了很多前輩,都是技術上的牛人,我的思想導師對我也很好,我做事有些不精益求精,毛躁,由於華爲的產品對產品質量要求比較高(產品的質量不好評價,但是相對於系統的複雜程度,華爲的產品質量還是可以的),部門對質量的強調也很突出,所以華爲會花很多的精力用於提高員工的質量意識。我的導師對產品質量的認真程度對我影響很大。
華爲北研地處北京海淀區上地地區,屬於中關村比較靠北的地區,交通不是很方便,剛去的時候甚至人煙稀少,當時華爲北研所也就1000來人,除了北研自有的大廈,還租借了另外兩個大廈的部分房間。華爲北研大廈一開始建設的時候可能不是用於寫字樓的目的,每層樓的天花板都不是很高,在二層裏面走會感覺比較壓抑,而三樓以上有一個天井,陽光可以透過玻璃射入天井,如果太陽不是很毒,天井裏明媚的陽光還是很讓人愉快的。中午的時候很多人在天井了踢毽子。
新員工入職的時候必須要經過的一個培訓是MINIPRO培訓,這個培訓是關於IPD-CMM流程的培訓,華爲很注意流程的規範性,所有開發的員工都要進行流程的培訓,教你怎麼去進行一個完整的項目,這個流程意識在小公司是沒有的,在華爲這樣的大企業裏,是十分重要的。MINIPRO培訓就是Mini Project,也就是通過在一週內學員們完成一個標準的CMM項目來完成教學。項目很小,但是基本的項目過程都會有,因爲時間少,很多項目階段會精確到小時。一邊由質量部的人講課,一邊實踐。一個產品生命週期會有概念,設計,開發,發佈,GA,終結等階段,一般軟件項目就是指的開發階段,不會包含設計階段。軟件開發階段就是MINIPRO培訓關注的部分。項目的細節不方便說,總之感覺就是文檔很多。真正編寫代碼的時間是很少。經過一週的培訓,會有一個考試,及格好像是80分,我考了84,本有機會再考,我沒有再考。
我報道的時候,產品已經在設計階段,軟件設計是老大們的事情,而我們一批的新同學得以有時間學習未來所需的知識技能,除了導師的指導,TCP/IP詳解第一卷的一些基礎內容是必看而且要考覈的,新員工也會被要求定期開會交流學習的知識,前後處於這種狀態大概有一個半月的樣子,我感覺那時候自己提高的確實很快,很快就對基本的數據通信產品有了較多的認識,也算是入門了吧。
基礎學習結束後,離各軟件項目進入開發立項還有一段時間,我的導師安排我到另一個產品的實驗室去,給我找了一個座位,就是看代碼,我要做的這部分代碼不是業務相關的,所以也沒有平臺化,也就是沒有進入VRP,每個產品都根據自己的需要重新做。我去的那個產品形態上與我們即將要開發的產品類似,所以代碼值得參考。華爲內部一般使用SourceInsight寫代碼看代碼,這個工具開始用的不熟,但是一旦習慣了就很難擺脫了,確實好用。當時讓我看的代碼很多,我也一下子搞不清輕重緩急,但是也沒有辦法,就硬着頭皮看吧,在大學生階段,寫過代碼不少,但是真正和操作系統打交道不多,這次要看的代碼不僅排版凌亂,註釋風格不統一,最要命的就是看不懂,最後只能一點一點的一邊參考C語言教程(美國佬的,決不是譚浩強版,據說美國大學常用的教材,不錯,基本我後來想查C語言的任何知識都有)一邊啃代碼,這時候原來沒有用過的操作系統的API很多,幸虧我以前也研究過操作系統原理,很快能對各種API的內部原理猜個八九不離十,加上我對硬件多少有點了解,雖然這個工作的前一兩天還比較痛苦,後來就適應了,反覆看幾遍,對整個構架就很熟了。前後也就一週的時間,後來想起來,我在華爲相當長的時間裏,就是靠着這一週培養出來的能力在支撐着我的績效。
大概到了2005年的3月,我記得在我回學校做答辯和畢業活動的那個月,我們的軟件項目啓動了華爲開發一個新產品會同時啓動一批項目,軟件的硬件的邏輯的測試的資料的整機的等等,按照計劃要幾乎同時關閉項目,而我所在的項目成員就是兩個人,我和我的思想導師,項目規模估計是10K,時間是3-4個月,這是很危險的指標,按照北研的能力基線,我們是不可能完成的,也就是說按照北研以往項目的數據平均,我們不可能在這樣的時間中生產這麼多的代碼。CMM流程是好的,但是華爲的產品時間點都是倒推的,什麼時候要拿出產品是根據市場需求的,但是又沒有足夠的人去做,只能硬性的倒推時間,玩玩數字遊戲,濛濛質量部,其實質量部的人都是研發出身,裏面的貓膩都清楚,但是總不能因爲人員不足,條件不成熟就不做了吧,大家都知道是怎麼回事兒,那還有什麼不能搞的?質量部也就是喊兩句,某某階段要注意質量啊什麼的。
其實北研大部分軟件項目上人員的矛盾不會像我們這麼厲害,我們的產品是全新的一款產品,軟件要從無到有,很多方案都要臨時的討論決定,加上新成立的部門,人員也少,相比之下,這個問題就突出一些。
開發階段是辛苦的,但是很規律,由於進度緊張,不管什麼人,從部門經理到最基層的員工,都要加班,而且一般加到10點以後(從培訓開始我們部門就經常10點後),在華爲上班有點好處就是晚8點半下班有免費的班車到北京的各個地點,10點以後下班可以打車回家,車票可以報銷。開發階段就是文檔寫的很多,前面我也寫到了,一個文檔要寫,寫完了要請一些有經驗的人和相關項目組來評審,評審完了要修改,每個文檔都要這樣,很花時間,但是卻能在儘早的階段發現問題,減小項目的成本,既然你有相關項目組,你也就可能是別人的相關項目組,你也要給別人的項目文檔評審。在寫了N多的文檔和修改了N多的文檔後,就進入編碼階段,編碼是很快的,一天幾百行沒有問題,很多項目的代碼在寫文檔的似乎就寫出框架了,所以編碼階段通常不會延期。
我們每天工作到深夜,一些艱苦的項目組(包括我)通常是12點以後纔會離開公司。可以說是充分發揮了人的主觀能動性,但是畢竟客觀條件是存在的,我們所有的項目都在延期這倒是一件在不能按時完成情況下的一件好事,如果大部分項目不延期,而只有少部分項目延期,那麼延期項目的項目leader(PL)還不得急死。我的思想導師兼PL人很好,他承受了很大的壓力,但是很少傳遞給我,很少在語言上給我壓力,我不是傻瓜,當然知道項目的情況,我只能更加拼命的趕進度。
編碼結束是測試,按照一般的要求,需要先做單元測試,對每一行代碼測試,但是我印象中,我們項目沒有做,道理很簡單,前方的硬件回板了,我們不先上,其他項目組都不能上,等我們做完UT,其他組都休息半個月了。我之所以不太確定這段時間,因爲我這個時候病倒了。
意外的闌尾炎
2005年4月29日,我的研究生同學,也是華爲的,要去南京出差,我們在附近的飯店吃了一段飯,我大家吃的很高興,我吃的也很多。第二天上班我就覺得胃不舒服,有點像吃的酸東西太多的那種燒心的感覺,我越來越難受,上班不長時間就向PL請假回家了,路上我到小區的門診部看了看,診斷是胃炎,我沒有在意,拿了點胃藥就回去了,我在家吃了藥,藥的味道很特殊,總結起來就是難吃。還是不見好,我就躺着休息。胃疼的厲害,還嘔吐了,下午的時候胃不疼了,右下腹部開始疼了,疼痛難忍而且顯然不是胃病,我叫上同住的同事,送我到醫院,我北京的親戚也來了,幫我墊付了醫藥費,後來同住的幾個人都來看我。醫生診斷是闌尾炎,急性很重,但是沒有牀位,大家很着急,我還好,醫生開藥打點滴先維持着。在做B超檢查的時候,醫師很負責,兩個人一起看了很長時間,開始就判斷是闌尾炎,又花了很長時間確認,並且說闌尾炎一開始的症狀很可能就是胃部疼痛。後來我就坐在椅子上一直打點滴等着空手術檯。晚上很晚的時候我才被推進手術室,經過一番折騰,主要是打麻藥,已經是5月1號的凌晨0點多了,手術開始了,護士給我氧氣,我把頭扭過一邊,因爲氧氣面罩裏一股新鮮橡膠味,麻藥的作用很好,我感覺不到書上說的手術刀拉開腹部的動作,只是知道兩個人在操作,而我的胸部以下似乎不是我的一部分,好像我的胸部以上是長在石頭上。後來可能是困了,我就睡去了,直到手術做完,他們推我出來,醫生把我叫醒,我的親戚也在,同學也在,醫生比劃着說,打開腹腔後,看見闌尾已經全部腫大,初步判斷就是闌尾炎,還要進一步確認,反正就是醫生的那種固有的“官方”語言來解釋我的並。
手術後的那天上午是最難受的,麻藥實效後,傷口會疼,醫生又要求手術後一段時間不能枕枕頭,沒有經歷過手術的人可能不知道,傷口疼都好忍,誰沒有劃過口子什麼的,但是長時間不枕枕頭對人絕對是一個考驗。
由於我的闌尾炎拖了一段時間,有點嚴重了,別人傷口是3針,我的是5針,加上恰好是5.1節,給我做手術的醫生沒有上班,別的醫生不願意管我,我就只好一個人在醫院,傷好的差不多了,我也走不了。中間部門的領導來看過我,我當時也很感激,但還是很慘,除了我的同學偶爾來看我,我只能一個人在病牀上躺着,在病房裏走着,由於行動不便,前幾天甚至沒有洗頭髮的機會,整天蓬頭垢面,後來還是我的一個女同事和他男朋友幫我洗的。5月9號左右,我纔出院。
正是這些天,我的PL進行了系統的聯調,是最累的一段時間,而我沒有和他並肩戰鬥。
歸隊
出院後我又在家休息了兩天,我的一些主管來看我,帶了一些營養品,可惜這種東西都是做禮品的成分多,實際會吃的人比較少,經過搬家,這些東西都扔掉了。
在家大概休息了3天,我自認爲傷口已經痊癒而且體力恢復了,就回到公司上班了。大家見到我除了打個招呼,問候一下我的健康,沒有太多的不同,但是我很快意識到身體還是處於極度虛弱狀態,我沒有幹活,但是不能平躺,過了兩個小時左右我就累得要死,當天我很早就回去休息了。不過很快,也就幾天的時間,我就恢復了體力,開始的一兩週我還不會加班很多,後來就完全恢復正常了。
新的項目
一般來說,軟件項目結束後就是測試人員測試提問題單,開發人員解決,但是我參與解決的問題單較少,主要的原因是這個時候產品規劃新增了一塊新單板,又要挑人開發,我被選中了,我開始是稍稍有些不快,我辛辛苦苦開發的代碼,基本沒有經過我的調試,又讓我開發新的代碼,我一直放心不下原來的代碼。
新的項目很大,以下就稱爲B項目吧,第一個稱爲A項目,大概2005年的中期立項,事後證明,至少在我看來是產品的一個失敗的決策,華爲在數據通信產品市場上與思科和Juniper等企業相比處於明顯的劣勢,華爲的數通人經常自嘲8年抗戰,因爲在數通產品線成立的前8年,一直是虧損的,這裏我也確實很佩服任總的堅持不懈的精神,但是相比較華爲的無線和光網絡產品,數通地位就不高。爲了競爭,華爲一向強調滿足客戶需求,而我們這個新項目的單板就是應某一個國家的電信企業的需求做的,在項目開發結束後,產品這邊的信息又變成了這個需求取消了。由於在原來設計簡單高效的系統上,強行加入了這樣一個單板,構架上不協調,加上概念和設計比較倉促,導致開發出的東西存在很多原來沒有想到的問題,不得不一遍又一邊的修改,開發。這塊單板上運行的代碼不多,但是幾乎影響了原來所有的項目組,維護難度極大,我估計在問題單數量較高的一段時間內,產品差不多有一半的維護精力放在了這塊單板上,大家的士氣收到嚴重打擊,這塊單板就是雞肋,售價高,用的場景少,而成本已經付出,就只能繼續維護。
新項目在人員和時間的矛盾上緩和一點,項目成立不久,一個兩萬多號的員工離職了,不過影響不大,本來他就只投入半個人。我還是做以前的特性,不過由於是針對單板的,自然和針對主板的特性差別很大,我們的代碼需要從華爲3COM移植,由於當時華爲3COM的很多資源已經不能共享,尤其是他們的開發文檔,所以我和同事們很難從文檔着手進行代碼的閱讀,和我一起進行移植操作的同事意見是拿來就用,我的意見是一定要對代碼進行完全的閱讀,由於我工號有優勢,我專門搞了一天的時間,和他兩個人對最複雜的那段代碼,一點一點的摳,模擬每一個場景,每一個過程,最後終於將代碼的主要流程搞清楚,我後來寫了一個詳細的流程總結,算是一個結論吧。後來,這個同事離職了,他很優秀,做什麼東西都上手很快,很懂得分配時間,可是他不習慣華爲緊張的工作氛圍,加上其他的原因,他做完項目不久就離職回東北了。走的時候送給我和幾個項目組成員每人一大盒巧克力。項目項目按部就班的開發結束的時候,就是聯調了,由於很多代碼是運行在bootrom中,我又沒有什麼高級的調試器,也就是說如果按照正常的方法,就只能通過點燈和打印信息來調試,而不管那種方法,都要不斷的修改代碼,下載到板子上,在運行試試,效率很低,我受不了,就提前寫了好多test開頭的代碼,寫了一個小命令行,還有很多模擬場景的函數,後來證明這個決定很正確,這段很複雜的代碼我用了大概1天就調試通過了,直到我離職,這段代碼上的問題都很少。
剛結束項目的時候,問題單不多,雖然漲的很快,但是很快就被消滅了,一切看起來都顯示這個項目很成功,沒有人會意識到會給後來造成那麼大的影響。
這時,產品再次作出調整,軟件組抽調精銳成立維護項目組,我剛剛做完的這個項目人員全部編入這個項目,一起進行維護。時間是2005年9月左右。
對於這個項目,在我看來是失敗的,不僅是項目的,更主要是因爲對產品後繼的影響。作爲開發者,我們難辭其咎,應該承擔其中的一部分責任。
維護組的快樂生活
在維護組的時間是我最快樂的時間,如果後來沒有離開維護組,可能我也不會離開華爲
開始的時候,B項目固有的問題開始暴露,一系列重大問題開始顯露,我們B項目的人疲於應付,由於項目組的問題單數量和嚴重程度會在每週做爲獎懲的指標,所以B項目遺留的問題給維護組的壓力很大,我都覺得對不起大家。而這些問題很多涉及很多相關項目組,討論的時候協調的成本很高,B項目的後遺症一點一點的把我們對工作的熱情像銼刀一樣挫掉。我的說,就是在B項目後,我在華爲的經歷才從一種事業蛻變到一份工作。
工作就是不斷的被測試部叫過去,看現場,收集定位信息,和測試人員玩着貓捉老鼠的遊戲,收到問題單,復現,定位,修改,解決,驗證等等,開始的時候,維護組問題單壓力很大,經常是週六的晚上,維護組老大開始把能解決的問題走下去,算指標,看看週一會不會被罰款,好幾次都是剛剛好的樣子,忙完了,可能8,9點了,我們就去附近的一家飯店吃飯,由於去的晚,飯店的服務員會要求我們一次性點好所有的飯菜,我們吃完了就玩殺人遊戲,有時玩到凌晨1點鐘,大家都很高興,可能就是在這種場景下,大家每個人都是原來各個項目的骨幹(由於部門成立之初人員很少,基本上項目都是一老帶一新,這個新人不增長爲骨幹纔怪),每個人在這個過程中,使出渾身解數爲了維護組的榮譽在戰鬥,正時這個氛圍,是我很喜歡的。
最忙的維護階段過去了,現象就是問題單不再增加,而是收斂,我們的壓力變得越來越小,維護的同時,偶爾開發個小特性什麼的,還挺有意思的,後來維護組換了老大,大家仍然還是很融洽。
隨着問題單持續的減少,維護組的人員基本上每天可以8點半下班了,如果想走,6點下班也沒有什麼大問題,在華爲,加班多是很常見的,可能有各種因素,績效考覈的,歷史傳統的,實際上工作量過大等等,我不好評論,近些年來,尤其是深圳總部有員工因腦炎死亡後,公司比較限制公共加班,我就曾經因爲加班太多收到北研的幹部部部長的電話詢問。原來公司在週末加班是不用領導批准的,而那以後,加班需要批准才能生效,不過很遺憾,哪個領導會在一大堆事務要處理的時候,每週五詢問一遍手下人週六是否有加班需要呢?結果就是每個週五,各級主管就是簡單的把上一週的通知修改一下時間,就發給下屬,最多同時說一下,大家可以不來加班,但是下屬如何判斷領導的真實意圖呢?大家都加班,我不加班行嗎?而且客觀上大家工作上相互依靠很深,要求都不加班,要麼都要加班。華爲擴張很快,需要不斷開發很多產品,人員不足,就要招聘,由於華爲的工作口碑就是累,導致優秀的人才不願意進入華爲(普遍上應屆畢業生素質較高,社招就參差不齊,有很優秀的,但少),優秀的人才不願進華爲,導致產品開發質量不好,進而返工就多,額外的工作量多了,工作自然就累,這樣形成了一個循環,很不利於華爲的發展,要打破這個循環,就要看華爲的智慧了。客觀上說,華爲的薪資待遇是很好的,當然比某些特定行業不能比,但是在業界是很好的,主要是獎金和股票分紅較多。這需要在華爲熬時間來換取。
在華爲的工作中,一年中大概平均能有2個月的時間還是比較清閒的,也就是6點下班,如果是週末,來加班也不一定幹活,早上來刷卡,晚上走的時候刷個卡,中間是不是幹活了,誰也不知道,反正我不忙的時候,經常中間的時間就坐車去書店,看一天的書,或者在單位的墊子上睡大覺,又或者到附近K歌,雖然有些不夠道德,但是我平時晚上加班可是一定沒有工錢的。
所以維護組裏輕鬆的時候,分手的時候也就差不多到了。
又是新的一輪
2006年4月前後我收到的郵件,一點預兆沒有,就要很多人去開新產品的開工會,我還是做老特性,開始的時候沒有什麼事情做,比維護組的時候還輕鬆,索性就攙合攙合別人搞的東西,先後研究好幾個特性,這個新產品等於是從需求到設計再到開發都要我們來做,而不是侷限於原來做過的開發,恰好這時港灣科技的數通部分被華爲收購,李一男重回華爲,一大批的港灣員工分配到華爲的各個崗位,新產品的人員得到了補充,我得承認,由於公司規模小的原因,港灣的人技能更加全面,很簡單的原因,每個人要從上到下做很多東西,而華爲是每人負責一小塊,平時大家通過溝通解決問題。這樣我經歷了一個產品從概念起點開始的開發全過程,不斷的需求確認,分解,做都做煩了,你可以想想一個熱衷於代碼技術的人面對一堆execl的時候,將是多麼無聊,這些任務按理說是比較高級的活兒,但是我就是不喜歡。在需求確認後,進入設計階段,由於覺得總是做一個特性沒有意思,我就申請換一個特性做做,上面批准了,人員上做了調整,我接手新項目,由於人員被吸引在哪些2005年的項目上,新的這些項目都沒有什麼人,我工號排在前面,我是這個項目的老大。可是這個項目天生就有缺憾,我這個老大都不懂,要重新學,很多時候還要請教下面的人,好在我還算不恥下問吧。經過最初人家說我聽,到偶爾能在討論中插個嘴,到後來能在討論中有自己的意見,也算是看到了自己的進步。這個階段就是成天的討論方案,評審,制訂方案。
這個時候我的生活發生了變化,我認識了我的女朋友,也就是現在的老婆,爲此我經常下班很早,週末也常常加班很少,後來我住到老婆那裏,直接的結果就是我上班的路途遙遠,每天從東南三環,做公交,倒一號線,倒二號線,倒十三號線,倒公司班車才能到位於西北五環外的公司上班。下班也是如此,可謂天天16環。
真正項目啓動是在2006年11月初,我是PL,帶領另外的幾個新同學搞開發,說實在的當時我心裏沒有底,很多事情我不愛遵守流程,流程做的一團糟,人力不足就夠煩的了,還要搞流程的那些事兒,不過有質量部人員的協助,能應付就應付吧,很多的文檔就是拼湊的數據,看着沒啥問題就行了唄。忘了是什麼時候,我的直接主管調走了,我再次憑藉工號的優勢接替他稱爲PM,哈哈,管大團隊了。編碼階段是在2007年元旦前後,很順利,不外乎就是快的幫助慢的,簡單的幫助複雜的。
對於一同啓動的幾個項目,產品強調代碼的質量,我沒有很強的去推標準,大家寫出的代碼很不整齊,但是功能的缺陷不多,不過代碼規範的問題還是給領導發現了,責令我負責整改,改就改吧,反正還是下面的人交叉評審,發現不規範的就修改。由於我這個時候任務很多,沒有足夠的精力放在開發上,很多方案和代碼都是放手讓大家自己討論完成的,我只是進行大方向的指點,畢竟我對VRP的框架要熟悉很多,事後向來,雖然代碼出現一些規範的問題,但是我的隊伍得到了鍛鍊,這讓我後來的工作比較輕鬆。
項目結束的時候會進入聯調階段,這個階段是最累的時期,由於時間有限,又是剛剛寫好未經測試的代碼,一切都顯得很緊張,每天我的組員要向我發日報,每天必須加班到10點,實際上我自己每天要加班到12點左右,定位各種問題,由於這款產品的構架原因,定位問題比以前的產品要困難,溝通的工作量很大,效率較低,實在沒有辦法,只能加班加點。問題搞不定,領導就罵我,我也皮實了,無所謂了,但是由於我們特性爲別人所依賴,即使領導不急,我也不能讓身後的弟兄們着急,只能拼命的工作。這個過程持續了一個多月,後來同事們形容我當時人都瘦了一圈,很憔悴。我也很累,身心俱疲,我的老婆也很有意見,我終於覺得該是我離開的時候了。有一次,原產品的B項目特性出了一點問題,由於涉及到對市場的緊急相應,在我週六下班路上,我接到手機通知我週日加班,當時因爲工作的關係,我和老婆總是吵架,她比我還忙,我又不是一個重事業而忽視老婆的人,我一直爲不能分擔她的痛苦而內疚,所以開始我勉強接受週日加班,後來打電話過去推託掉了,那天晚上,我很痛苦,我甚至痛苦了一會兒,我知道自己遲早要離開的,可是當真的要發生的時候,還是很留戀,現在我還不能走的主要原因就是我還沒有一個合適的offer。
後來的工作就不忙了,還是B項目的那塊單板,需要在這個設備上支持,因爲基本上我是這個產品唯一對該單板構架較熟的人,我不得不在本職工作外付出大量的精力搞單板兼容,也不知道硬件兄弟怎麼搞的,硬件上前後幾款產品竟然不兼容,害得軟件大量修改代碼。而老大們的兼容方案一改再改,本來一週的工作量拖了三個月。開始我花了一週多的時間已經搞定了,老大卻堅持另一套方案,沒有辦法,只好修改,隨之產品綜合考慮了一次,又要求我往回改,改回我的方案,這不是吃飽了撐的嗎?後來又要做bootrom兼容,又要改方案,而且指派了幾個人協助我,加上我,都是PL級別的人,大家都有自己項目的事情處理,自然兼容方案一拖再拖,直到我離職前才完全搞定。
我的感謝我的項目組成員,他們的個人能力很強,在我沒有過多直到的情況下,完成了大部分的實質性工作,經過聯調的考驗,特性較爲穩定,連續幾周達成產品規定的問題單降幅目標。
離職
我有離職的想法由來已久,大概到了入職一年半的時候就有了想法,主要的原因是工作比較累,加上本來我就是比較懶散的,不願意長時間的搞得那麼累,而且也結婚了,總是加班不回家,很對不起老婆。我還是很看的開的,雖然華爲給我很好的待遇,但是不能爲了待遇而不顧一切,不要在退休的時候發現自己一輩子什麼都沒有做,都在給華爲打工。在入職華爲前,我有一些興趣愛好,但是入職以後就荒廢了,很不值得。
既然有想法就找工作吧,目前最簡單的方式也就是在幾個大招聘網站上投簡歷,等着公司來找我了,效果還不錯,很多企業都給我面試機會了,回想起剛畢業的時候,網上投的簡歷如石沉大海,看來華爲的工作經驗還是一塊好的“再就業”敲門磚。
但是我收到的面試通知我都沒有太重視,筆試和聊的時候都比較隨意,也是工作忙的原因,我沒有什麼時間準備,工作的事情就這麼一直拖着。直到我找到目前的工作,找工作這方面沒有什麼波折。
寫在後面
離職了,華爲和我沒有什麼直接的關係了,我想說說我對華爲的總體感受。
和很多人說的一樣,華爲的工作是辛苦的,忙碌的,但是華爲內部由於強調CMM流程的重要性,經常在開發階段做很多多餘的工作,也許這個流程的確不錯,但是執行的人水平有限,經常入職一年就當了PL,加上時間緊任務急,流程中一開始就有很多假的東西,真正能不能到達管理的目的就不好說了。但是也不用悲觀,對於基層的人員來講工作還是實實在在的,畢竟工作的成果是要拿去檢驗的,參與華爲產品的開發,對基層開發人員的技能提高是很有幫助的。
華爲數通的平臺軟件逐步在lib化,以後能看到的代碼越來越少,產品開發部的人想提高技能的難度加大了。
華爲的培訓很多,但是經常是一些很基礎的培訓,工作中急需的技能主要從同事那裏學來,而同事都很忙,培訓開展起來就很困難。很大程度上,要想掌握某個特性,參與開發是最好的方法,要想擴大自己的知識面,還是要自己努力。
華爲的北京研究所比較累,對比其他的研究所來講的。
華爲的工作時間一般效率很高,那麼大的工作量,能在那麼短的時間內做完,足以說明華爲的工作強度。所以在華爲做時間長了,就會比較壓抑,即使每天8小時工作也是如此。一般人認爲如果一天8小時工作是較輕鬆的,但是在華爲,不能上網,不能玩電子遊戲,不能聊天。打開電腦,除了工作就是工作,連一些內部的工作外信息都要到下班以後才能訪問。所以華爲的8小時和一般企業的8小時是不一樣的,何況華爲的工作時間遠不止8小時。
華爲人員離職手續比較簡單,只要主管放人,都好說。如果主管不放人,就不好說了。
華爲的薪資待遇還算不錯,很適合剛畢業的學生,既能快速提高技能,又能養家餬口。華爲的北研和上研地理位置都比較偏僻,這個因素一定要考慮,我上班要將近2個小時,回家一般2個多小時。而今後北研所很快還要向更遠的地方搬遷,在永豐環保園,目前北京還沒有規劃去那裏的城鐵。這個是必須要考慮的。
華爲的人際關係比較融洽,每個人都比較熱情,大概是沒有閒人的緣故吧
華爲績效考覈分爲ABCD四等,D基本沒有,A很少,在10%左右,BC差不多比例,有些人認爲這個績效直接和漲工資掛鉤,其實沒有太大關係,要是幹得好,還要輪到公司工資調整機會才能漲。我得的C比A還多一個,也沒有耽誤漲工資。
華爲的獎金不少,4-8個月的工資吧,不過要看產品線的盈利情況。
華爲的股票也不錯,是內部的股票,華爲沒有上市,這些股票還算不違法。分紅較可觀,當然與很久以前沒有辦法比了,由於華爲近兩年的規模急速擴張,後來的人什麼時候能分到股票就不好說了。和我一起進公司的一些人還沒有股票呢,跟別說後進公司的人了。
華爲北研的食堂一般是兩家供應商,有競爭,還不錯。
華爲北研的空調特點是夏天冷死,冬天熱死。
由於很多人入職後,取得北京戶口就離職,所以以後對取得戶口但在勞動協議生效期間離職的人會所要違約金,而不是之前的完全自由離開。
原文地址:http://blog.tianya.cn/blogger/trackback.asp?BlogID=1185537&PostID=10754599
我對華爲的感情是很複雜的,我至今仍熱愛華爲,不知道爲什麼,真的不知道,就是愛。但是我肯定不會再回去,真的不會再回去了。
嚮往
我在XX大學度過了6年半的大學時光,拿到了研究生的學位,在大學本科畢業的時候,我也跟着大家涌到大學的報告廳,聽華爲中興大唐這些企業的招聘會,當時是2002年,網絡泡沫幻滅後的第一個高校畢業期,大批高科技企業招人的門檻大大提高,雖然薪水還是挺高的,但是給你的感覺就是,你去不了,沒有資格。
本科讀的是熱力發動機,也就是汽車發動機,我是和一大批高考不理想的同學被調配到這個專業的,可想而知,大家對這個專業沒有什麼感情,雖然這個專業是XX大學的重點學科。在大二的時候,由於成績較好,我可以選修另一個專業,我高考的第一第二志願是通訊和計算機,所以我決定報這兩個專業之一,猶豫不決之下,硬幣背後隱藏的命運幫我決定學習通信學科,也許我和華爲的淵源就此開始。
本科畢業了,考研就考了通信,分數還行,所以研究生階段每年也就交800塊的住宿費,沒有其他費用。由於X大通信研究生沒有什麼活兒做,生活還是有滋有味的,雖然X大的通信專業很一般,但是既然是和計算機沾邊的,按葛優的話講:“沒想到你也是IT界的人了”,前途似乎很不錯。
就這樣,結束了沒有什麼回憶的研究生生活,我準備考上交大博士,因爲太浮躁,沒有堅持下來,就和大家一起找工作。
應聘
其實找工作挺容易的,X大畢竟是國內不錯的工科大學,只要不是要求太高,工作一抓一大把,2004年10月末,日月光集團來X大開招聘會,算是最早進X大的企業,對這種公司的招聘會,通信系的同學根本懶得參加,或者去看個熱鬧。
11月4號,華爲來X大開招聘會,我投了一份簡歷,11月5號,ST來X大開招聘會,我也投了一份簡歷,並當場進行了一面。當時比較單純,認爲進華爲是很容易的事情,就再也沒有投過紙件形式的簡歷,果然,華爲安排的筆試在9號進行,我應聘的是算法工程師,筆試在大學的大階梯教室進行,有考算法的,有考軟件的,發試卷前,HR宣佈:如果考算法的人看到題目較難,可以臨時改主意去考軟件工程師,果然,試卷一發下來,原來考算法的10幾個人,呼啦啦差不多都跑去考軟件了,我和另外2,3個人還是流下來考算法。因爲研究生課題就有一點算法的內容,加上準備考博的複習,算法的題還是沒有難倒我。
很快就是華爲的一面,華爲的效率還是高啊,給我面試的考官叫張XX,本來我是沒有必要記着他的名字的,但是有時記住和記不住就是像蝴蝶揮動的翅膀,說不準帶來怎樣的影響。一面很順利,編程題很簡單,鏈表排序什麼的,我做了一會就作出來了,不過卷面很髒,我就忙着向他解釋,他不太理我,看了一會就說做的沒有什麼問題。然後又問問我的一些研究生課題相關的內容,很明顯,他想看看我到崗後能不能儘快的開始工作,因爲他問了很多仿真軟件的東西,我就應付着。
一面很難受,算法方面我確實還比較薄弱。
一面結束的時候,考官跟我說讓我回去等通知,我很坦然,既然讓等那就等吧,考官很快補充道,算法工程師二面考官還在深圳,由於各地應聘算法工程師的人員比較少,算法的二面考官要集中的來北方的幾個城市,所以請我不要着急。我想這個理由很合理,就回宿舍了。
等了一天
又等了一天,我有點着急,XX大學一共就考了幾個算法工程師,二面的考官不會不來了吧,打個電話問問,我打了好幾通電話,總算接入了華爲HR的手機,她叫什麼我忘記了,很遺憾。她是一個好HR,很負責。我把情況和她說了,她還是讓我等,我就建議說,不如安排電話面試吧,她考慮了一下,說要找一面考官確認一下。因爲當時已經是深夜11點多了,我就沒有再電話跟蹤這個事情。
第二天,應該是12號上午,我很無聊,上網聊天,打聯衆,投網上簡歷。到9點多的時候,張XX打電話給我,讓我儘快過去參加電話面試,我很高興,去了,在賓館的房間裏,跟電話那邊聊了好長時間,聊完了,張XX讓我在門外等,他進去和對方交流,然後代寫了二面的意見。二面的過程中,聊的比較開心,都是我很熟悉的東西。
張XX填寫好二面意見,就告訴我在賓館大廳了等一會,大概2個小時後安排三面,到中午的時候,本來我要去領盒飯吃了,因爲裏面好像有我愛吃的紅燒肉,但是就被叫去三面,二面結束和三面開始也就隔了半個小時。
三面就是HR的面試了,是個女的,話不多,主要是我講,我是比較能瞎侃的,什麼話好聽就侃什麼唄,聊到那個女的嘴角上翹,我就知道基本上也就進入華爲了。
三面結束也就隔了10分鐘就是四面,我又沒有吃到盒飯,因爲沒有了,四面的是一個上海研究所的什麼部門經理一類的,聊的甚歡,印象較深的是他問我是否知道華爲的某個口號似的東西的時候,我比較乾脆的答了一個“不知道”。
當天晚上籤約,我成了華爲的一員,畢業後要去深圳從事算法工程師的工作。薪水是5千,還算滿意。
那以後的幾天,我把盟軍敢死隊幾個版本從頭打倒尾,打發時光唄,工作定下來了,還有什麼好說的。偶爾跟大家去擠招聘會,看看熱鬧,還有就是幫我的一個好朋友看看招聘信息,很遺憾,他沒有通過華爲三面,後來都沒有找到什麼合適的工作,一氣之下跑到上海交大讀博士去了,至今在讀。
簽約後的一週左右,華爲的HR給我電話,問我願不願意到北京做軟件工程師工作,有北京戶口,條件是要12月就入職,我當時對北京沒有什麼好印象,考慮一下就回絕了,後來我的父母和姐姐都勸我到北京工作,我又考慮了一天,打電話給HR,說我願意改到北京做軟件,她們就讓我到天津今晚大廈改簽協議。北京,而不是深圳,還是北京好一些,我本人沒有什麼特別的偏好。
11月的後半個月,電腦遊戲和QQ就是全部,在QQ上我認識了一批共同赴深圳參加入職培訓的北京研究所的同學。12月15號晚,我們坐上臥鋪火車,見到了原來在QQ那邊的同學們,其中一些人成了我現在最好的朋友。12月16號晚,火車經過23個半小時的旅途,到達深圳,又打車去華爲基地
兩週的培訓沒有什麼好講的,隨便說說吧,一是我們男生要西裝領帶,當時是冬天,深圳的氣溫不是很高,中午30度左右,這個要求還可以接受,我這個人懶,這是我平生第一次穿這麼不舒服的衣服;二是深圳的服務業真的很發達,商場的營業員絕對是百拿不厭的,買了東西,可能很貴,但是心裏很舒服。比天津的營業員,唉;三是華爲基地的食堂真不錯,也是是去的時間較短纔有這個感覺,我們培訓結束的時候,到某個食堂聚餐,15塊錢吃自助,大螃蟹,對蝦,皮皮蝦,魚,蛤蜊和各種肉類,蔬菜水果,好便宜,我都懷疑是不是選擇到北京是一個錯誤的決定;四是深圳的車速太快,我們上街經常看見車禍現場,就在華爲基地百草園,在休息日那天,我們樓下就發生了一起車禍。我沒有看家事故的過程,只看到撞散的摩托和一大灘血跡。
入職
回到北研所,是12月30號晚,飛機是空客A320,滿飛機都是華爲到北研所報到的同學。坐飛機不舒服,不如火車臥鋪,飛機下降的時候,我的耳朵有點疼。
12月31號到北研正式報到。分配了部門,由於我被分到一個新產品,還沒有成立部門,就暫時掛在北研的總體技術部下面。
在這裏我認識了很多前輩,都是技術上的牛人,我的思想導師對我也很好,我做事有些不精益求精,毛躁,由於華爲的產品對產品質量要求比較高(產品的質量不好評價,但是相對於系統的複雜程度,華爲的產品質量還是可以的),部門對質量的強調也很突出,所以華爲會花很多的精力用於提高員工的質量意識。我的導師對產品質量的認真程度對我影響很大。
華爲北研地處北京海淀區上地地區,屬於中關村比較靠北的地區,交通不是很方便,剛去的時候甚至人煙稀少,當時華爲北研所也就1000來人,除了北研自有的大廈,還租借了另外兩個大廈的部分房間。華爲北研大廈一開始建設的時候可能不是用於寫字樓的目的,每層樓的天花板都不是很高,在二層裏面走會感覺比較壓抑,而三樓以上有一個天井,陽光可以透過玻璃射入天井,如果太陽不是很毒,天井裏明媚的陽光還是很讓人愉快的。中午的時候很多人在天井了踢毽子。
新員工入職的時候必須要經過的一個培訓是MINIPRO培訓,這個培訓是關於IPD-CMM流程的培訓,華爲很注意流程的規範性,所有開發的員工都要進行流程的培訓,教你怎麼去進行一個完整的項目,這個流程意識在小公司是沒有的,在華爲這樣的大企業裏,是十分重要的。MINIPRO培訓就是Mini Project,也就是通過在一週內學員們完成一個標準的CMM項目來完成教學。項目很小,但是基本的項目過程都會有,因爲時間少,很多項目階段會精確到小時。一邊由質量部的人講課,一邊實踐。一個產品生命週期會有概念,設計,開發,發佈,GA,終結等階段,一般軟件項目就是指的開發階段,不會包含設計階段。軟件開發階段就是MINIPRO培訓關注的部分。項目的細節不方便說,總之感覺就是文檔很多。真正編寫代碼的時間是很少。經過一週的培訓,會有一個考試,及格好像是80分,我考了84,本有機會再考,我沒有再考。
我報道的時候,產品已經在設計階段,軟件設計是老大們的事情,而我們一批的新同學得以有時間學習未來所需的知識技能,除了導師的指導,TCP/IP詳解第一卷的一些基礎內容是必看而且要考覈的,新員工也會被要求定期開會交流學習的知識,前後處於這種狀態大概有一個半月的樣子,我感覺那時候自己提高的確實很快,很快就對基本的數據通信產品有了較多的認識,也算是入門了吧。
基礎學習結束後,離各軟件項目進入開發立項還有一段時間,我的導師安排我到另一個產品的實驗室去,給我找了一個座位,就是看代碼,我要做的這部分代碼不是業務相關的,所以也沒有平臺化,也就是沒有進入VRP,每個產品都根據自己的需要重新做。我去的那個產品形態上與我們即將要開發的產品類似,所以代碼值得參考。華爲內部一般使用SourceInsight寫代碼看代碼,這個工具開始用的不熟,但是一旦習慣了就很難擺脫了,確實好用。當時讓我看的代碼很多,我也一下子搞不清輕重緩急,但是也沒有辦法,就硬着頭皮看吧,在大學生階段,寫過代碼不少,但是真正和操作系統打交道不多,這次要看的代碼不僅排版凌亂,註釋風格不統一,最要命的就是看不懂,最後只能一點一點的一邊參考C語言教程(美國佬的,決不是譚浩強版,據說美國大學常用的教材,不錯,基本我後來想查C語言的任何知識都有)一邊啃代碼,這時候原來沒有用過的操作系統的API很多,幸虧我以前也研究過操作系統原理,很快能對各種API的內部原理猜個八九不離十,加上我對硬件多少有點了解,雖然這個工作的前一兩天還比較痛苦,後來就適應了,反覆看幾遍,對整個構架就很熟了。前後也就一週的時間,後來想起來,我在華爲相當長的時間裏,就是靠着這一週培養出來的能力在支撐着我的績效。
大概到了2005年的3月,我記得在我回學校做答辯和畢業活動的那個月,我們的軟件項目啓動了華爲開發一個新產品會同時啓動一批項目,軟件的硬件的邏輯的測試的資料的整機的等等,按照計劃要幾乎同時關閉項目,而我所在的項目成員就是兩個人,我和我的思想導師,項目規模估計是10K,時間是3-4個月,這是很危險的指標,按照北研的能力基線,我們是不可能完成的,也就是說按照北研以往項目的數據平均,我們不可能在這樣的時間中生產這麼多的代碼。CMM流程是好的,但是華爲的產品時間點都是倒推的,什麼時候要拿出產品是根據市場需求的,但是又沒有足夠的人去做,只能硬性的倒推時間,玩玩數字遊戲,濛濛質量部,其實質量部的人都是研發出身,裏面的貓膩都清楚,但是總不能因爲人員不足,條件不成熟就不做了吧,大家都知道是怎麼回事兒,那還有什麼不能搞的?質量部也就是喊兩句,某某階段要注意質量啊什麼的。
其實北研大部分軟件項目上人員的矛盾不會像我們這麼厲害,我們的產品是全新的一款產品,軟件要從無到有,很多方案都要臨時的討論決定,加上新成立的部門,人員也少,相比之下,這個問題就突出一些。
開發階段是辛苦的,但是很規律,由於進度緊張,不管什麼人,從部門經理到最基層的員工,都要加班,而且一般加到10點以後(從培訓開始我們部門就經常10點後),在華爲上班有點好處就是晚8點半下班有免費的班車到北京的各個地點,10點以後下班可以打車回家,車票可以報銷。開發階段就是文檔寫的很多,前面我也寫到了,一個文檔要寫,寫完了要請一些有經驗的人和相關項目組來評審,評審完了要修改,每個文檔都要這樣,很花時間,但是卻能在儘早的階段發現問題,減小項目的成本,既然你有相關項目組,你也就可能是別人的相關項目組,你也要給別人的項目文檔評審。在寫了N多的文檔和修改了N多的文檔後,就進入編碼階段,編碼是很快的,一天幾百行沒有問題,很多項目的代碼在寫文檔的似乎就寫出框架了,所以編碼階段通常不會延期。
我們每天工作到深夜,一些艱苦的項目組(包括我)通常是12點以後纔會離開公司。可以說是充分發揮了人的主觀能動性,但是畢竟客觀條件是存在的,我們所有的項目都在延期這倒是一件在不能按時完成情況下的一件好事,如果大部分項目不延期,而只有少部分項目延期,那麼延期項目的項目leader(PL)還不得急死。我的思想導師兼PL人很好,他承受了很大的壓力,但是很少傳遞給我,很少在語言上給我壓力,我不是傻瓜,當然知道項目的情況,我只能更加拼命的趕進度。
編碼結束是測試,按照一般的要求,需要先做單元測試,對每一行代碼測試,但是我印象中,我們項目沒有做,道理很簡單,前方的硬件回板了,我們不先上,其他項目組都不能上,等我們做完UT,其他組都休息半個月了。我之所以不太確定這段時間,因爲我這個時候病倒了。
意外的闌尾炎
2005年4月29日,我的研究生同學,也是華爲的,要去南京出差,我們在附近的飯店吃了一段飯,我大家吃的很高興,我吃的也很多。第二天上班我就覺得胃不舒服,有點像吃的酸東西太多的那種燒心的感覺,我越來越難受,上班不長時間就向PL請假回家了,路上我到小區的門診部看了看,診斷是胃炎,我沒有在意,拿了點胃藥就回去了,我在家吃了藥,藥的味道很特殊,總結起來就是難吃。還是不見好,我就躺着休息。胃疼的厲害,還嘔吐了,下午的時候胃不疼了,右下腹部開始疼了,疼痛難忍而且顯然不是胃病,我叫上同住的同事,送我到醫院,我北京的親戚也來了,幫我墊付了醫藥費,後來同住的幾個人都來看我。醫生診斷是闌尾炎,急性很重,但是沒有牀位,大家很着急,我還好,醫生開藥打點滴先維持着。在做B超檢查的時候,醫師很負責,兩個人一起看了很長時間,開始就判斷是闌尾炎,又花了很長時間確認,並且說闌尾炎一開始的症狀很可能就是胃部疼痛。後來我就坐在椅子上一直打點滴等着空手術檯。晚上很晚的時候我才被推進手術室,經過一番折騰,主要是打麻藥,已經是5月1號的凌晨0點多了,手術開始了,護士給我氧氣,我把頭扭過一邊,因爲氧氣面罩裏一股新鮮橡膠味,麻藥的作用很好,我感覺不到書上說的手術刀拉開腹部的動作,只是知道兩個人在操作,而我的胸部以下似乎不是我的一部分,好像我的胸部以上是長在石頭上。後來可能是困了,我就睡去了,直到手術做完,他們推我出來,醫生把我叫醒,我的親戚也在,同學也在,醫生比劃着說,打開腹腔後,看見闌尾已經全部腫大,初步判斷就是闌尾炎,還要進一步確認,反正就是醫生的那種固有的“官方”語言來解釋我的並。
手術後的那天上午是最難受的,麻藥實效後,傷口會疼,醫生又要求手術後一段時間不能枕枕頭,沒有經歷過手術的人可能不知道,傷口疼都好忍,誰沒有劃過口子什麼的,但是長時間不枕枕頭對人絕對是一個考驗。
由於我的闌尾炎拖了一段時間,有點嚴重了,別人傷口是3針,我的是5針,加上恰好是5.1節,給我做手術的醫生沒有上班,別的醫生不願意管我,我就只好一個人在醫院,傷好的差不多了,我也走不了。中間部門的領導來看過我,我當時也很感激,但還是很慘,除了我的同學偶爾來看我,我只能一個人在病牀上躺着,在病房裏走着,由於行動不便,前幾天甚至沒有洗頭髮的機會,整天蓬頭垢面,後來還是我的一個女同事和他男朋友幫我洗的。5月9號左右,我纔出院。
正是這些天,我的PL進行了系統的聯調,是最累的一段時間,而我沒有和他並肩戰鬥。
歸隊
出院後我又在家休息了兩天,我的一些主管來看我,帶了一些營養品,可惜這種東西都是做禮品的成分多,實際會吃的人比較少,經過搬家,這些東西都扔掉了。
在家大概休息了3天,我自認爲傷口已經痊癒而且體力恢復了,就回到公司上班了。大家見到我除了打個招呼,問候一下我的健康,沒有太多的不同,但是我很快意識到身體還是處於極度虛弱狀態,我沒有幹活,但是不能平躺,過了兩個小時左右我就累得要死,當天我很早就回去休息了。不過很快,也就幾天的時間,我就恢復了體力,開始的一兩週我還不會加班很多,後來就完全恢復正常了。
新的項目
一般來說,軟件項目結束後就是測試人員測試提問題單,開發人員解決,但是我參與解決的問題單較少,主要的原因是這個時候產品規劃新增了一塊新單板,又要挑人開發,我被選中了,我開始是稍稍有些不快,我辛辛苦苦開發的代碼,基本沒有經過我的調試,又讓我開發新的代碼,我一直放心不下原來的代碼。
新的項目很大,以下就稱爲B項目吧,第一個稱爲A項目,大概2005年的中期立項,事後證明,至少在我看來是產品的一個失敗的決策,華爲在數據通信產品市場上與思科和Juniper等企業相比處於明顯的劣勢,華爲的數通人經常自嘲8年抗戰,因爲在數通產品線成立的前8年,一直是虧損的,這裏我也確實很佩服任總的堅持不懈的精神,但是相比較華爲的無線和光網絡產品,數通地位就不高。爲了競爭,華爲一向強調滿足客戶需求,而我們這個新項目的單板就是應某一個國家的電信企業的需求做的,在項目開發結束後,產品這邊的信息又變成了這個需求取消了。由於在原來設計簡單高效的系統上,強行加入了這樣一個單板,構架上不協調,加上概念和設計比較倉促,導致開發出的東西存在很多原來沒有想到的問題,不得不一遍又一邊的修改,開發。這塊單板上運行的代碼不多,但是幾乎影響了原來所有的項目組,維護難度極大,我估計在問題單數量較高的一段時間內,產品差不多有一半的維護精力放在了這塊單板上,大家的士氣收到嚴重打擊,這塊單板就是雞肋,售價高,用的場景少,而成本已經付出,就只能繼續維護。
新項目在人員和時間的矛盾上緩和一點,項目成立不久,一個兩萬多號的員工離職了,不過影響不大,本來他就只投入半個人。我還是做以前的特性,不過由於是針對單板的,自然和針對主板的特性差別很大,我們的代碼需要從華爲3COM移植,由於當時華爲3COM的很多資源已經不能共享,尤其是他們的開發文檔,所以我和同事們很難從文檔着手進行代碼的閱讀,和我一起進行移植操作的同事意見是拿來就用,我的意見是一定要對代碼進行完全的閱讀,由於我工號有優勢,我專門搞了一天的時間,和他兩個人對最複雜的那段代碼,一點一點的摳,模擬每一個場景,每一個過程,最後終於將代碼的主要流程搞清楚,我後來寫了一個詳細的流程總結,算是一個結論吧。後來,這個同事離職了,他很優秀,做什麼東西都上手很快,很懂得分配時間,可是他不習慣華爲緊張的工作氛圍,加上其他的原因,他做完項目不久就離職回東北了。走的時候送給我和幾個項目組成員每人一大盒巧克力。項目項目按部就班的開發結束的時候,就是聯調了,由於很多代碼是運行在bootrom中,我又沒有什麼高級的調試器,也就是說如果按照正常的方法,就只能通過點燈和打印信息來調試,而不管那種方法,都要不斷的修改代碼,下載到板子上,在運行試試,效率很低,我受不了,就提前寫了好多test開頭的代碼,寫了一個小命令行,還有很多模擬場景的函數,後來證明這個決定很正確,這段很複雜的代碼我用了大概1天就調試通過了,直到我離職,這段代碼上的問題都很少。
剛結束項目的時候,問題單不多,雖然漲的很快,但是很快就被消滅了,一切看起來都顯示這個項目很成功,沒有人會意識到會給後來造成那麼大的影響。
這時,產品再次作出調整,軟件組抽調精銳成立維護項目組,我剛剛做完的這個項目人員全部編入這個項目,一起進行維護。時間是2005年9月左右。
對於這個項目,在我看來是失敗的,不僅是項目的,更主要是因爲對產品後繼的影響。作爲開發者,我們難辭其咎,應該承擔其中的一部分責任。
維護組的快樂生活
在維護組的時間是我最快樂的時間,如果後來沒有離開維護組,可能我也不會離開華爲
開始的時候,B項目固有的問題開始暴露,一系列重大問題開始顯露,我們B項目的人疲於應付,由於項目組的問題單數量和嚴重程度會在每週做爲獎懲的指標,所以B項目遺留的問題給維護組的壓力很大,我都覺得對不起大家。而這些問題很多涉及很多相關項目組,討論的時候協調的成本很高,B項目的後遺症一點一點的把我們對工作的熱情像銼刀一樣挫掉。我的說,就是在B項目後,我在華爲的經歷才從一種事業蛻變到一份工作。
工作就是不斷的被測試部叫過去,看現場,收集定位信息,和測試人員玩着貓捉老鼠的遊戲,收到問題單,復現,定位,修改,解決,驗證等等,開始的時候,維護組問題單壓力很大,經常是週六的晚上,維護組老大開始把能解決的問題走下去,算指標,看看週一會不會被罰款,好幾次都是剛剛好的樣子,忙完了,可能8,9點了,我們就去附近的一家飯店吃飯,由於去的晚,飯店的服務員會要求我們一次性點好所有的飯菜,我們吃完了就玩殺人遊戲,有時玩到凌晨1點鐘,大家都很高興,可能就是在這種場景下,大家每個人都是原來各個項目的骨幹(由於部門成立之初人員很少,基本上項目都是一老帶一新,這個新人不增長爲骨幹纔怪),每個人在這個過程中,使出渾身解數爲了維護組的榮譽在戰鬥,正時這個氛圍,是我很喜歡的。
最忙的維護階段過去了,現象就是問題單不再增加,而是收斂,我們的壓力變得越來越小,維護的同時,偶爾開發個小特性什麼的,還挺有意思的,後來維護組換了老大,大家仍然還是很融洽。
隨着問題單持續的減少,維護組的人員基本上每天可以8點半下班了,如果想走,6點下班也沒有什麼大問題,在華爲,加班多是很常見的,可能有各種因素,績效考覈的,歷史傳統的,實際上工作量過大等等,我不好評論,近些年來,尤其是深圳總部有員工因腦炎死亡後,公司比較限制公共加班,我就曾經因爲加班太多收到北研的幹部部部長的電話詢問。原來公司在週末加班是不用領導批准的,而那以後,加班需要批准才能生效,不過很遺憾,哪個領導會在一大堆事務要處理的時候,每週五詢問一遍手下人週六是否有加班需要呢?結果就是每個週五,各級主管就是簡單的把上一週的通知修改一下時間,就發給下屬,最多同時說一下,大家可以不來加班,但是下屬如何判斷領導的真實意圖呢?大家都加班,我不加班行嗎?而且客觀上大家工作上相互依靠很深,要求都不加班,要麼都要加班。華爲擴張很快,需要不斷開發很多產品,人員不足,就要招聘,由於華爲的工作口碑就是累,導致優秀的人才不願意進入華爲(普遍上應屆畢業生素質較高,社招就參差不齊,有很優秀的,但少),優秀的人才不願進華爲,導致產品開發質量不好,進而返工就多,額外的工作量多了,工作自然就累,這樣形成了一個循環,很不利於華爲的發展,要打破這個循環,就要看華爲的智慧了。客觀上說,華爲的薪資待遇是很好的,當然比某些特定行業不能比,但是在業界是很好的,主要是獎金和股票分紅較多。這需要在華爲熬時間來換取。
在華爲的工作中,一年中大概平均能有2個月的時間還是比較清閒的,也就是6點下班,如果是週末,來加班也不一定幹活,早上來刷卡,晚上走的時候刷個卡,中間是不是幹活了,誰也不知道,反正我不忙的時候,經常中間的時間就坐車去書店,看一天的書,或者在單位的墊子上睡大覺,又或者到附近K歌,雖然有些不夠道德,但是我平時晚上加班可是一定沒有工錢的。
所以維護組裏輕鬆的時候,分手的時候也就差不多到了。
又是新的一輪
2006年4月前後我收到的郵件,一點預兆沒有,就要很多人去開新產品的開工會,我還是做老特性,開始的時候沒有什麼事情做,比維護組的時候還輕鬆,索性就攙合攙合別人搞的東西,先後研究好幾個特性,這個新產品等於是從需求到設計再到開發都要我們來做,而不是侷限於原來做過的開發,恰好這時港灣科技的數通部分被華爲收購,李一男重回華爲,一大批的港灣員工分配到華爲的各個崗位,新產品的人員得到了補充,我得承認,由於公司規模小的原因,港灣的人技能更加全面,很簡單的原因,每個人要從上到下做很多東西,而華爲是每人負責一小塊,平時大家通過溝通解決問題。這樣我經歷了一個產品從概念起點開始的開發全過程,不斷的需求確認,分解,做都做煩了,你可以想想一個熱衷於代碼技術的人面對一堆execl的時候,將是多麼無聊,這些任務按理說是比較高級的活兒,但是我就是不喜歡。在需求確認後,進入設計階段,由於覺得總是做一個特性沒有意思,我就申請換一個特性做做,上面批准了,人員上做了調整,我接手新項目,由於人員被吸引在哪些2005年的項目上,新的這些項目都沒有什麼人,我工號排在前面,我是這個項目的老大。可是這個項目天生就有缺憾,我這個老大都不懂,要重新學,很多時候還要請教下面的人,好在我還算不恥下問吧。經過最初人家說我聽,到偶爾能在討論中插個嘴,到後來能在討論中有自己的意見,也算是看到了自己的進步。這個階段就是成天的討論方案,評審,制訂方案。
這個時候我的生活發生了變化,我認識了我的女朋友,也就是現在的老婆,爲此我經常下班很早,週末也常常加班很少,後來我住到老婆那裏,直接的結果就是我上班的路途遙遠,每天從東南三環,做公交,倒一號線,倒二號線,倒十三號線,倒公司班車才能到位於西北五環外的公司上班。下班也是如此,可謂天天16環。
真正項目啓動是在2006年11月初,我是PL,帶領另外的幾個新同學搞開發,說實在的當時我心裏沒有底,很多事情我不愛遵守流程,流程做的一團糟,人力不足就夠煩的了,還要搞流程的那些事兒,不過有質量部人員的協助,能應付就應付吧,很多的文檔就是拼湊的數據,看着沒啥問題就行了唄。忘了是什麼時候,我的直接主管調走了,我再次憑藉工號的優勢接替他稱爲PM,哈哈,管大團隊了。編碼階段是在2007年元旦前後,很順利,不外乎就是快的幫助慢的,簡單的幫助複雜的。
對於一同啓動的幾個項目,產品強調代碼的質量,我沒有很強的去推標準,大家寫出的代碼很不整齊,但是功能的缺陷不多,不過代碼規範的問題還是給領導發現了,責令我負責整改,改就改吧,反正還是下面的人交叉評審,發現不規範的就修改。由於我這個時候任務很多,沒有足夠的精力放在開發上,很多方案和代碼都是放手讓大家自己討論完成的,我只是進行大方向的指點,畢竟我對VRP的框架要熟悉很多,事後向來,雖然代碼出現一些規範的問題,但是我的隊伍得到了鍛鍊,這讓我後來的工作比較輕鬆。
項目結束的時候會進入聯調階段,這個階段是最累的時期,由於時間有限,又是剛剛寫好未經測試的代碼,一切都顯得很緊張,每天我的組員要向我發日報,每天必須加班到10點,實際上我自己每天要加班到12點左右,定位各種問題,由於這款產品的構架原因,定位問題比以前的產品要困難,溝通的工作量很大,效率較低,實在沒有辦法,只能加班加點。問題搞不定,領導就罵我,我也皮實了,無所謂了,但是由於我們特性爲別人所依賴,即使領導不急,我也不能讓身後的弟兄們着急,只能拼命的工作。這個過程持續了一個多月,後來同事們形容我當時人都瘦了一圈,很憔悴。我也很累,身心俱疲,我的老婆也很有意見,我終於覺得該是我離開的時候了。有一次,原產品的B項目特性出了一點問題,由於涉及到對市場的緊急相應,在我週六下班路上,我接到手機通知我週日加班,當時因爲工作的關係,我和老婆總是吵架,她比我還忙,我又不是一個重事業而忽視老婆的人,我一直爲不能分擔她的痛苦而內疚,所以開始我勉強接受週日加班,後來打電話過去推託掉了,那天晚上,我很痛苦,我甚至痛苦了一會兒,我知道自己遲早要離開的,可是當真的要發生的時候,還是很留戀,現在我還不能走的主要原因就是我還沒有一個合適的offer。
後來的工作就不忙了,還是B項目的那塊單板,需要在這個設備上支持,因爲基本上我是這個產品唯一對該單板構架較熟的人,我不得不在本職工作外付出大量的精力搞單板兼容,也不知道硬件兄弟怎麼搞的,硬件上前後幾款產品竟然不兼容,害得軟件大量修改代碼。而老大們的兼容方案一改再改,本來一週的工作量拖了三個月。開始我花了一週多的時間已經搞定了,老大卻堅持另一套方案,沒有辦法,只好修改,隨之產品綜合考慮了一次,又要求我往回改,改回我的方案,這不是吃飽了撐的嗎?後來又要做bootrom兼容,又要改方案,而且指派了幾個人協助我,加上我,都是PL級別的人,大家都有自己項目的事情處理,自然兼容方案一拖再拖,直到我離職前才完全搞定。
我的感謝我的項目組成員,他們的個人能力很強,在我沒有過多直到的情況下,完成了大部分的實質性工作,經過聯調的考驗,特性較爲穩定,連續幾周達成產品規定的問題單降幅目標。
離職
我有離職的想法由來已久,大概到了入職一年半的時候就有了想法,主要的原因是工作比較累,加上本來我就是比較懶散的,不願意長時間的搞得那麼累,而且也結婚了,總是加班不回家,很對不起老婆。我還是很看的開的,雖然華爲給我很好的待遇,但是不能爲了待遇而不顧一切,不要在退休的時候發現自己一輩子什麼都沒有做,都在給華爲打工。在入職華爲前,我有一些興趣愛好,但是入職以後就荒廢了,很不值得。
既然有想法就找工作吧,目前最簡單的方式也就是在幾個大招聘網站上投簡歷,等着公司來找我了,效果還不錯,很多企業都給我面試機會了,回想起剛畢業的時候,網上投的簡歷如石沉大海,看來華爲的工作經驗還是一塊好的“再就業”敲門磚。
但是我收到的面試通知我都沒有太重視,筆試和聊的時候都比較隨意,也是工作忙的原因,我沒有什麼時間準備,工作的事情就這麼一直拖着。直到我找到目前的工作,找工作這方面沒有什麼波折。
寫在後面
離職了,華爲和我沒有什麼直接的關係了,我想說說我對華爲的總體感受。
和很多人說的一樣,華爲的工作是辛苦的,忙碌的,但是華爲內部由於強調CMM流程的重要性,經常在開發階段做很多多餘的工作,也許這個流程的確不錯,但是執行的人水平有限,經常入職一年就當了PL,加上時間緊任務急,流程中一開始就有很多假的東西,真正能不能到達管理的目的就不好說了。但是也不用悲觀,對於基層的人員來講工作還是實實在在的,畢竟工作的成果是要拿去檢驗的,參與華爲產品的開發,對基層開發人員的技能提高是很有幫助的。
華爲數通的平臺軟件逐步在lib化,以後能看到的代碼越來越少,產品開發部的人想提高技能的難度加大了。
華爲的培訓很多,但是經常是一些很基礎的培訓,工作中急需的技能主要從同事那裏學來,而同事都很忙,培訓開展起來就很困難。很大程度上,要想掌握某個特性,參與開發是最好的方法,要想擴大自己的知識面,還是要自己努力。
華爲的北京研究所比較累,對比其他的研究所來講的。
華爲的工作時間一般效率很高,那麼大的工作量,能在那麼短的時間內做完,足以說明華爲的工作強度。所以在華爲做時間長了,就會比較壓抑,即使每天8小時工作也是如此。一般人認爲如果一天8小時工作是較輕鬆的,但是在華爲,不能上網,不能玩電子遊戲,不能聊天。打開電腦,除了工作就是工作,連一些內部的工作外信息都要到下班以後才能訪問。所以華爲的8小時和一般企業的8小時是不一樣的,何況華爲的工作時間遠不止8小時。
華爲人員離職手續比較簡單,只要主管放人,都好說。如果主管不放人,就不好說了。
華爲的薪資待遇還算不錯,很適合剛畢業的學生,既能快速提高技能,又能養家餬口。華爲的北研和上研地理位置都比較偏僻,這個因素一定要考慮,我上班要將近2個小時,回家一般2個多小時。而今後北研所很快還要向更遠的地方搬遷,在永豐環保園,目前北京還沒有規劃去那裏的城鐵。這個是必須要考慮的。
華爲的人際關係比較融洽,每個人都比較熱情,大概是沒有閒人的緣故吧
華爲績效考覈分爲ABCD四等,D基本沒有,A很少,在10%左右,BC差不多比例,有些人認爲這個績效直接和漲工資掛鉤,其實沒有太大關係,要是幹得好,還要輪到公司工資調整機會才能漲。我得的C比A還多一個,也沒有耽誤漲工資。
華爲的獎金不少,4-8個月的工資吧,不過要看產品線的盈利情況。
華爲的股票也不錯,是內部的股票,華爲沒有上市,這些股票還算不違法。分紅較可觀,當然與很久以前沒有辦法比了,由於華爲近兩年的規模急速擴張,後來的人什麼時候能分到股票就不好說了。和我一起進公司的一些人還沒有股票呢,跟別說後進公司的人了。
華爲北研的食堂一般是兩家供應商,有競爭,還不錯。
華爲北研的空調特點是夏天冷死,冬天熱死。
由於很多人入職後,取得北京戶口就離職,所以以後對取得戶口但在勞動協議生效期間離職的人會所要違約金,而不是之前的完全自由離開。
原文地址:http://blog.tianya.cn/blogger/trackback.asp?BlogID=1185537&PostID=10754599