第3章 老友記
時間長河的浪花輕吻著黝黑的礁石,飛濺的晶瑩水沫,打濕了野餐毯粗糲的帆布邊角。一隻用金色水果糖紙折成的小船,被稚嫩的手指輕輕托放於水面。船一入水便被一股暗流攫住,輕盈地打著旋兒,瞬間被渾濁的渦流吞沒。水面之下,激盪的嘩響驟然沉降,化作一種沉悶、恆久的嗚嚕聲,仿佛大地深處傳來的低吼。不知在昏暗中漂流了多久,那抹殘存的金黃終於掙破水幕,重新浮現。眼前豁然開朗,無垠的水面平滑如鏡,倒映著陌生的、高聳的天際線,時間已悄然泊入2003年9月。
「廖阿姨,你的房子我們繼續租一年,不過得麻煩您下一次開房租發票得時候,把房租分成兩半開兩張發票。一張還是以前的抬頭,另一張是新的,您記一下……」過了幾分鐘,池杉掛掉電話,重新打開臥室的門,一陣音樂聲立刻傳了進來。
「快來!等你半天了」高路和潘冬已經占據了沙發上最中間的兩個位置,電視機上閃爍著幾個年輕人在噴泉里嬉戲的畫面,外接音箱傳來了熟悉的音樂聲。
So no one told you life was gonna be this way.
Your job's a joke, you're broke, your love life's D.O.A.
It's like you're always stuck in second gear.
When it hasn't been your day, your week, your month, or even your year.
……
池杉迅速的躍上了沙發,身體跟著音樂的節奏微微的搖擺,嘴裡也隨著音樂哼唱他唯一能跟得上調的一句:「I'll be there for you……」
在過去的幾年,池杉的生活像是按下了快進鍵。他在3年裡換了三份工作,第一次是他應聘進了一家外資諮詢公司,第二次則是這家公司被整體賣給了另一家科技巨頭,然後第三次是他通過獵頭跳槽到了一家軟體公司的諮詢部門。不過,不管怎麼跳,他的生活圈子整體來說其實沒什麼變化。有些合作夥伴變成了同事,有些同事變成了合作夥伴,有些同事變成了對手,有些對手變成了同事,只有客戶還是客戶。
甚至連池杉的室友,仍然是上一個東家的兩個同事。一年多前池杉和幾個同事一起到上海來做一個項目,和兩個同事一起合租了浦東某小區裡的三室一廳。項目結束後池杉跳槽,但仍然住在這裡沒動,只不過項目地點從浦東的G公司,變成了浦西的M銀行。而他的兩個前同事,則還留在G公司項目上。
「搞定了,下個月房租我出一半。」池杉向兩位前同事說明情況,其實就算池杉一分錢不出,他們也沒有意見,因為他們在上海都算是出差,房租都是公司報銷的。這樣做,只是要避免前同事在報銷時候,可能遇到財務的刁難。
果然,根本就沒人回應池杉的話,高路盯著畫面,發出一聲駭人的笑聲:「菲比太可愛了!」引得池杉和潘冬相視一眼,然後一起對高路露出一個鄙視的表情。
G公司的項目,是池杉做過最難的一個,倒不是有什麼技術難度,而是各種精神折磨。甲方對我們的要求是:合同里寫的每一個字我都要,合同里沒寫但銷售說過的我也要,合同里沒寫銷售也沒說過但我想到的我還要。對我有用的我要,對我沒用的我也要,對我有害的我還要,先要了再說。因此項目組每天工作都提心弔膽,生怕那句話說錯了,給項目組又惹出更多的禍來。
在這種壓抑的工作氣氛里,三個人下班後最大的娛樂,就是湊在一起看《老友記》。有時加完班到家已經快12點了,依然會有人跳出來嚷嚷看一集《老友記》對沖一下心情。每到這個時候,池杉腦海里都會蹦出一個畫面,一群IT民工躺在大煙館裡抱著煙槍,流著哈喇子問自己:「要不要來一口?」
《老友記》最早是池杉從深圳帶來的,只有第一季到第六季。後來上海同事高路成了《老友記》的狂熱粉絲,主動承擔了後面幾季的搜集工作。今天高路剛買到了第八季,因此迫不及待地拉著另外兩個癮君子,一起享受起精神海洛因。
「你們二期項目怎麼樣?Margin有沒有提高一點?」一集放完,高路跑去換碟片的空擋裡面,池杉隨意和潘冬聊了起來。G公司的項目,池杉知道第一期是虧得連褲衩都不剩,所有項目收入也就夠支付差旅費和出差補貼,人工成本就是淨虧損。項目開始之前,公司就知道要虧的,只不過沒想到要虧到這個程度。
「高肯定是高一點,二期應該不會虧了。但是要把一期的窟窿補起來,那肯定是沒戲。」潘冬一臉輕鬆,他只負責技術方面,對項目管理根本就不關心,也沒有池杉那種什麼都想知道的好奇心。
「G公司不是收購了一個研發中心,還新建了一個生產基地搞自有品牌嗎?按說生產線調整,還有跟著後台的排產和供應鏈,不可能是複製上海這套過去的。」公司的策略,其實一開始就是虧本搶占G公司這個客戶,然後從複製擴張過程中賺錢。畢竟ERP系統這個東西,改起來可能比新建還麻煩,所以任何理智的甲方,都會儘量沿用原有的供應商。
這時候,高路換完碟片回來,搶過了話頭回答:「咱們這次是,騙子被騙子騙了!那個什麼自有品牌,基本上就是換了個車標,生產線基本不用動。所以,二期規模還不如一期呢!」
「不可能吧,我沒走之前還看過他們研發中心的計劃,發動機和變速箱可都有時間表的。」池杉還有點不相信,他在離職之前,參與了不少評估二期項目工作量的工作,看到過不少內部資料。按照G公司的內部計劃,自研發動機和變速箱要用在自有品牌上,這對供應鏈來說是個非常大的調整,讓軟體公司和諮詢公司都能跟著喝口湯。
「你指望年終獎發18個月工資的公司研發發動機,還不如指望民營車企搞電動車呢。」《老友記》的前奏音樂響起,高路的注意力已經全都轉移到了電視上,隨口嘟囔著:「我看分管研發中心的那位,心思壓根就沒在那上面!所以,研發中心的小兵們,也就天天忙著畫新殼子。」
G公司去年的年終獎,發了令人咋舌的18個月工資。本來池杉對此也只有羨慕,但財務報表上顯示:G公司花在發獎金上的費用,遠遠超過研發費用,這個結果就讓池杉一直耿耿於懷。當然,他的這種情緒,在其他人看來,更應該被歸入羨慕嫉妒恨的範疇。
高路大學是學汽車的,但畢業後沒有進入汽車行業,反倒是讓他對汽車行業充滿了悲觀情緒。他曾不止一次給池杉科普過,發動機熱效率的提高,主要就是靠做實驗,做一百萬次實驗的成果就是比做一萬次實驗的結果好。因此,比中國早做了五十年實驗的西方車企,在這方面的優勢是很難被動搖的。而變速箱,則是被各大車企建立的專利牆圍了個結實。
按照高路的看法,中國汽車行業要麼換個賽道搞電車,要麼等西方汽車行業陷入更嚴重的經濟危機,買下一些技術尚可但經營不善的關鍵零部件公司,在原有技術路線上占據一個出發陣地。從零自己搞研發,高路認為是不現實的。而G公司的做法,似乎正驗證了高路的這種想法,最近已經在歐洲買了幾個瀕臨破產的小車企。
「別瞎琢磨了!讓你看看G公司的相關股票,你看了沒有?賺點這種錢不比你瞎琢磨國家大事強多了。」高路看到池杉的目光焦點還在自己身上,趕緊堵住池杉的嘴。
看到電視機上莫妮卡出場了,池杉也只好抓緊時間回答:「看了!G公司又不是上市公司,A股能買的也就是上汽和東風。不過嘛,最大的問題是我沒錢買啊!」
兩集《老友記》看完,時間已經接近十二點,池杉建議到此為止,明天他還得去客戶辦公室加班。
「忘了跟你說,上周末你回家的時候,嘉嘉和黛黛在你床上睡過,你自己決定要不要換被套。」潘冬似乎是不經意的順嘴一說,然後就鑽進了自己的房間,留下池杉一個人在客廳發呆。
高路、潘冬和池杉三個人年齡相仿,在這間出租屋裡已經住了一年多,早就成了《老友記》裡面三個男人那般的好朋友。按照高路的話,就差三個女孩子,組成一個現實中的Friends。G公司客戶裡面,梁嘉和林黛這兩個剛畢業的女孩子,因為經常一起加班,變得關係比較密切,偶爾也會周末跑來他們這裡玩。
「不換了!我都睡兩天了,要膈應也不差這一點了。」池杉回到自己的臥室,卻又睡不著了。失眠算是池杉的一個小毛病,往往是出現在一個歡樂的氛圍里,他卻莫名其妙的感到孤獨,然後腦海里充斥著各種各樣的畫面。
這種情況最嚴重的一次,是在1997年香港回歸那一天。那時候池杉還在大學,整棟宿舍樓的骨節在狂歡中咯咯作響,裹著汗味的男生把幾台電視機圍得水泄不通,擠不進去的人則圍坐在一起聽著廣播喝著啤酒,時不時宿舍樓里爆發出一陣帶著醉意的歌聲。
但那一晚,池杉坐在自己的床頭,對著電腦屏幕寫了一晚上的代碼。敞開的門外傳來電視解說員顫抖的聲音:「現在即將升起五星紅旗!」頓時樓板顫抖起來,空啤酒罐組成的金屬風暴,以及無數個沙啞男生組成的歌聲如同海潮般從門外洶湧而入。但池杉絲毫不敢停下敲打鍵盤的十指,因為越是歡樂的氣氛里,孤獨就如同一根越長越鋒利的刺,也許下一刻就會刺穿他狂歡的腳步。那一天,他寫代碼直到早上食堂開門營業。
而今天的情況也有點類似,池杉坐在床頭醞釀了半天情緒,還是覺得有些難以入睡,乾脆起來找點事情做。其實這種情況,已經有幾年沒有出現了,白薇驅散了他的孤獨,撫慰了他的心靈,但過去一年多的出差,讓他只和白薇聚少離多,每兩個星期才能有一個周末在一起,也許這種情況讓他有些舊病復發。
池杉翻了翻硬碟里的下載文件夾,想要找個不太長的電影之類來看看,意外發現了一個老外同事分享給他的視頻文件「The Untold Story of the Intelsat 708 Accident」,還神神秘秘的說是他可能不知道的秘密。池杉關掉燈,坐在床上拿過筆記本電腦,希望自己能夠看困了順勢往床上一躺就直接睡過去。
第二天上午,起床上廁所的潘冬,意外地在客廳看到了穿戴整齊,拎著筆記本電腦準備出門的池杉。
「銀行也要加班嗎?」潘冬疑惑地看向池杉,又看了看客廳牆上的掛鍾,現在時間才剛剛指向9點。對加班來說,現在這個點去似乎有點早了。
「老外不加,我們要加!」池杉無可奈何地回答。其實這話不完全準確,M銀行的項目上加班的中外員工其實都有,但非要用一個標準來衡量,應該是是華人員工才加班。
M銀行項目又是一個八國聯軍項目,項目成員裡面雖然還是中國員工數量更多,但中國員工實際上是來給老外們打下手的。項目經理是一個澳大利亞華人Joe,主要的業務專家是荷蘭人Ben、香港人Mary和新加坡人Helen,技術方面則依賴幾個印度人和澳大利亞人。沒辦法,別說這個產品在中國第一次實施,就是這個業務,所有中國的銀行都沒做過。
中國員工分散在每個小組,目前承擔著一些髒活累活,真正能給客戶交付的任務,還得由這些老外們來完成。項目進度和計劃出現差異的時候,項目經理Joe就會組織加班,這種事在中國員工來看非常正常,但其他人大多不以為意,只有印度人偶爾嘟嘟囔囔的出現一下。因此周末的辦公室里,中國員工成了絕對的主力,工作語言也就變成了中文,連Joe也跟著大家說半生不熟的中文,時間長了大家都忘了他不是中國人。
對於池杉的這個行業來說,五一勞動節和十一國慶節有著非凡的意義,因為這幾天連續放假,非常適合用來做系統切換。因此,自從畢業以後,池杉就徹底跟這兩個節日說再見了。而且,每到過節他就忙得飛起,通宵加班都是常態。2003年的國慶節也是同樣的情況,M銀行的系統進行試運行上線。
一般來說,系統在上線前,都會經過非常充分的測試,按照常理來說不應該有問題。但實際上,上線不出點么蛾子事情,就不能稱之為上線。雖然Joe再三向M銀行拍胸脯保證,系統測試已經非常充分,但M銀行的技術部門還是非常謹慎的制定了一個試運行方案。
凌晨1點,是銀行幾乎沒有任何業務的時間,M銀行把一個地級市的客服電話從老系統轉接到了新系統上,按照歷史經驗,總還是會有些零星的業務發生。這些業務就是對系統的最後一次測試,通過了就繼續加入更多的城市,萬一有問題,在天亮前把客服電話轉回老系統就可以了。
這個方案在池杉看來非常合理,甚至項目經理Joe都沒有任何意見,卻意外地被其他老外項目成員反對,原因很簡單,他們不願意值這種無意義的夜班。最後的結果是,系統真正切換的時候,項目組辦公室里陪著Joe的,也就只剩下了池杉等幾個中國員工。大家一起既緊張又興奮的等待著他們的工作成果,第一次接受真正用戶的考驗。
3點鐘,也不知道是哪個失眠的客戶,打電話過來查詢銀行交易。按照設計,客服姑娘接起電話的時候,系統就應該把該客戶識別出來,並且在客服姑娘面前的電腦上,加載出來該客戶的相關信息。但是,么蛾子就在這個時候來了。頁面轉了很久,客戶信息還是沒有出現。
「先生,你是有什麼緊急的情況,要在這個時間點來查詢交易?」幸虧客服姑娘足夠的機智,在系統加載時間和客戶聊起了天,這才避免用戶察覺有異。系統忙碌的圖標亮了最多也就一兩分鐘,但辦公室所有人都覺得過了半年。電腦畫面上終於出現了該客戶的信息,客服姑娘長出一口氣,找了個空檔把話題轉回正題。掛掉電話,客服姑娘立刻把投訴電話打到了項目組,用她的話說,如果系統再慢一點,她就準備和對方談感情問題了。
這是宣布上線失敗,切回原系統?還是趁著下一個客戶沒打進來,直接在生產系統上查查問題?一直在辦公室打瞌睡的Joe這會也睡不著了,給幾個有望解決問題的項目成員打電話,但印度人和澳大利亞人沒有一個人接聽。就在M銀行的技術部門老大臉色越來越黑的時候,池杉說他來試試看。
自從問題出現,池杉和另外一個技術人員就開始看系統日誌,但他們兩個都不是負責這部分功能的,一時半會找不到問題。但既然也沒有更好的辦法,閒著也是閒著,不如試試看。兩個小時後,池杉以日誌為線索,順著代碼定位到了一個用途不明的軟體開關。
按照生產系統初始化的標準,所有的軟體開關和配置,都應該和測試系統完全一致。但是,這個軟體開關的狀態在兩個系統確實不同,也不知道在環境同步的時候被誰忘掉的,還是安裝腳本根據什麼邏輯自動生成的。關掉這個開關後,系統的反應速度立刻正常了。
這種大型軟體里,各種軟體開關以萬為單位,由於不同功能的設計者在理念和審美上的差異,也由於設計者所在的時代不同,造成了有些開關在配置頁面修改,有些在安裝文件裡面修改,而有些遠古的開關甚至只能在代碼里修改。
介紹這些軟體開關用途的書足有幾米厚,即便是所謂認證的工程師,也只懂得他負責的那一部分開關。總之,這些大型軟體,是幾千人的開發團隊十幾年的工作成果,是無數程式設計師頭髮和腦細胞堆積起來的屎山。
試運行的試運行成功後,M銀行開始以每天幾個城市的速度,把客服電話轉接到新系統上,果然後來的一切就順利了起來。只有一次系統突然停機,嚇了項目組一大跳。池杉查了兩個小時的問題後,發現居然是機房裡有人拔錯了磁碟陣列的電源。這種低級錯誤出現在銀行的機房裡,也真是匪夷所思。更要命的是,闖禍的人發現了錯誤後,又把電源插上以後一聲不吭的溜號了,讓技術人員查錯的時候完全沒有往硬體故障方向去想。
「廖阿姨,你的房子我們繼續租一年,不過得麻煩您下一次開房租發票得時候,把房租分成兩半開兩張發票。一張還是以前的抬頭,另一張是新的,您記一下……」過了幾分鐘,池杉掛掉電話,重新打開臥室的門,一陣音樂聲立刻傳了進來。
「快來!等你半天了」高路和潘冬已經占據了沙發上最中間的兩個位置,電視機上閃爍著幾個年輕人在噴泉里嬉戲的畫面,外接音箱傳來了熟悉的音樂聲。
So no one told you life was gonna be this way.
Your job's a joke, you're broke, your love life's D.O.A.
It's like you're always stuck in second gear.
When it hasn't been your day, your week, your month, or even your year.
……
池杉迅速的躍上了沙發,身體跟著音樂的節奏微微的搖擺,嘴裡也隨著音樂哼唱他唯一能跟得上調的一句:「I'll be there for you……」
在過去的幾年,池杉的生活像是按下了快進鍵。他在3年裡換了三份工作,第一次是他應聘進了一家外資諮詢公司,第二次則是這家公司被整體賣給了另一家科技巨頭,然後第三次是他通過獵頭跳槽到了一家軟體公司的諮詢部門。不過,不管怎麼跳,他的生活圈子整體來說其實沒什麼變化。有些合作夥伴變成了同事,有些同事變成了合作夥伴,有些同事變成了對手,有些對手變成了同事,只有客戶還是客戶。
甚至連池杉的室友,仍然是上一個東家的兩個同事。一年多前池杉和幾個同事一起到上海來做一個項目,和兩個同事一起合租了浦東某小區裡的三室一廳。項目結束後池杉跳槽,但仍然住在這裡沒動,只不過項目地點從浦東的G公司,變成了浦西的M銀行。而他的兩個前同事,則還留在G公司項目上。
「搞定了,下個月房租我出一半。」池杉向兩位前同事說明情況,其實就算池杉一分錢不出,他們也沒有意見,因為他們在上海都算是出差,房租都是公司報銷的。這樣做,只是要避免前同事在報銷時候,可能遇到財務的刁難。
果然,根本就沒人回應池杉的話,高路盯著畫面,發出一聲駭人的笑聲:「菲比太可愛了!」引得池杉和潘冬相視一眼,然後一起對高路露出一個鄙視的表情。
G公司的項目,是池杉做過最難的一個,倒不是有什麼技術難度,而是各種精神折磨。甲方對我們的要求是:合同里寫的每一個字我都要,合同里沒寫但銷售說過的我也要,合同里沒寫銷售也沒說過但我想到的我還要。對我有用的我要,對我沒用的我也要,對我有害的我還要,先要了再說。因此項目組每天工作都提心弔膽,生怕那句話說錯了,給項目組又惹出更多的禍來。
在這種壓抑的工作氣氛里,三個人下班後最大的娛樂,就是湊在一起看《老友記》。有時加完班到家已經快12點了,依然會有人跳出來嚷嚷看一集《老友記》對沖一下心情。每到這個時候,池杉腦海里都會蹦出一個畫面,一群IT民工躺在大煙館裡抱著煙槍,流著哈喇子問自己:「要不要來一口?」
《老友記》最早是池杉從深圳帶來的,只有第一季到第六季。後來上海同事高路成了《老友記》的狂熱粉絲,主動承擔了後面幾季的搜集工作。今天高路剛買到了第八季,因此迫不及待地拉著另外兩個癮君子,一起享受起精神海洛因。
「你們二期項目怎麼樣?Margin有沒有提高一點?」一集放完,高路跑去換碟片的空擋裡面,池杉隨意和潘冬聊了起來。G公司的項目,池杉知道第一期是虧得連褲衩都不剩,所有項目收入也就夠支付差旅費和出差補貼,人工成本就是淨虧損。項目開始之前,公司就知道要虧的,只不過沒想到要虧到這個程度。
「高肯定是高一點,二期應該不會虧了。但是要把一期的窟窿補起來,那肯定是沒戲。」潘冬一臉輕鬆,他只負責技術方面,對項目管理根本就不關心,也沒有池杉那種什麼都想知道的好奇心。
「G公司不是收購了一個研發中心,還新建了一個生產基地搞自有品牌嗎?按說生產線調整,還有跟著後台的排產和供應鏈,不可能是複製上海這套過去的。」公司的策略,其實一開始就是虧本搶占G公司這個客戶,然後從複製擴張過程中賺錢。畢竟ERP系統這個東西,改起來可能比新建還麻煩,所以任何理智的甲方,都會儘量沿用原有的供應商。
這時候,高路換完碟片回來,搶過了話頭回答:「咱們這次是,騙子被騙子騙了!那個什麼自有品牌,基本上就是換了個車標,生產線基本不用動。所以,二期規模還不如一期呢!」
「不可能吧,我沒走之前還看過他們研發中心的計劃,發動機和變速箱可都有時間表的。」池杉還有點不相信,他在離職之前,參與了不少評估二期項目工作量的工作,看到過不少內部資料。按照G公司的內部計劃,自研發動機和變速箱要用在自有品牌上,這對供應鏈來說是個非常大的調整,讓軟體公司和諮詢公司都能跟著喝口湯。
「你指望年終獎發18個月工資的公司研發發動機,還不如指望民營車企搞電動車呢。」《老友記》的前奏音樂響起,高路的注意力已經全都轉移到了電視上,隨口嘟囔著:「我看分管研發中心的那位,心思壓根就沒在那上面!所以,研發中心的小兵們,也就天天忙著畫新殼子。」
G公司去年的年終獎,發了令人咋舌的18個月工資。本來池杉對此也只有羨慕,但財務報表上顯示:G公司花在發獎金上的費用,遠遠超過研發費用,這個結果就讓池杉一直耿耿於懷。當然,他的這種情緒,在其他人看來,更應該被歸入羨慕嫉妒恨的範疇。
高路大學是學汽車的,但畢業後沒有進入汽車行業,反倒是讓他對汽車行業充滿了悲觀情緒。他曾不止一次給池杉科普過,發動機熱效率的提高,主要就是靠做實驗,做一百萬次實驗的成果就是比做一萬次實驗的結果好。因此,比中國早做了五十年實驗的西方車企,在這方面的優勢是很難被動搖的。而變速箱,則是被各大車企建立的專利牆圍了個結實。
按照高路的看法,中國汽車行業要麼換個賽道搞電車,要麼等西方汽車行業陷入更嚴重的經濟危機,買下一些技術尚可但經營不善的關鍵零部件公司,在原有技術路線上占據一個出發陣地。從零自己搞研發,高路認為是不現實的。而G公司的做法,似乎正驗證了高路的這種想法,最近已經在歐洲買了幾個瀕臨破產的小車企。
「別瞎琢磨了!讓你看看G公司的相關股票,你看了沒有?賺點這種錢不比你瞎琢磨國家大事強多了。」高路看到池杉的目光焦點還在自己身上,趕緊堵住池杉的嘴。
看到電視機上莫妮卡出場了,池杉也只好抓緊時間回答:「看了!G公司又不是上市公司,A股能買的也就是上汽和東風。不過嘛,最大的問題是我沒錢買啊!」
兩集《老友記》看完,時間已經接近十二點,池杉建議到此為止,明天他還得去客戶辦公室加班。
「忘了跟你說,上周末你回家的時候,嘉嘉和黛黛在你床上睡過,你自己決定要不要換被套。」潘冬似乎是不經意的順嘴一說,然後就鑽進了自己的房間,留下池杉一個人在客廳發呆。
高路、潘冬和池杉三個人年齡相仿,在這間出租屋裡已經住了一年多,早就成了《老友記》裡面三個男人那般的好朋友。按照高路的話,就差三個女孩子,組成一個現實中的Friends。G公司客戶裡面,梁嘉和林黛這兩個剛畢業的女孩子,因為經常一起加班,變得關係比較密切,偶爾也會周末跑來他們這裡玩。
「不換了!我都睡兩天了,要膈應也不差這一點了。」池杉回到自己的臥室,卻又睡不著了。失眠算是池杉的一個小毛病,往往是出現在一個歡樂的氛圍里,他卻莫名其妙的感到孤獨,然後腦海里充斥著各種各樣的畫面。
這種情況最嚴重的一次,是在1997年香港回歸那一天。那時候池杉還在大學,整棟宿舍樓的骨節在狂歡中咯咯作響,裹著汗味的男生把幾台電視機圍得水泄不通,擠不進去的人則圍坐在一起聽著廣播喝著啤酒,時不時宿舍樓里爆發出一陣帶著醉意的歌聲。
但那一晚,池杉坐在自己的床頭,對著電腦屏幕寫了一晚上的代碼。敞開的門外傳來電視解說員顫抖的聲音:「現在即將升起五星紅旗!」頓時樓板顫抖起來,空啤酒罐組成的金屬風暴,以及無數個沙啞男生組成的歌聲如同海潮般從門外洶湧而入。但池杉絲毫不敢停下敲打鍵盤的十指,因為越是歡樂的氣氛里,孤獨就如同一根越長越鋒利的刺,也許下一刻就會刺穿他狂歡的腳步。那一天,他寫代碼直到早上食堂開門營業。
而今天的情況也有點類似,池杉坐在床頭醞釀了半天情緒,還是覺得有些難以入睡,乾脆起來找點事情做。其實這種情況,已經有幾年沒有出現了,白薇驅散了他的孤獨,撫慰了他的心靈,但過去一年多的出差,讓他只和白薇聚少離多,每兩個星期才能有一個周末在一起,也許這種情況讓他有些舊病復發。
池杉翻了翻硬碟里的下載文件夾,想要找個不太長的電影之類來看看,意外發現了一個老外同事分享給他的視頻文件「The Untold Story of the Intelsat 708 Accident」,還神神秘秘的說是他可能不知道的秘密。池杉關掉燈,坐在床上拿過筆記本電腦,希望自己能夠看困了順勢往床上一躺就直接睡過去。
第二天上午,起床上廁所的潘冬,意外地在客廳看到了穿戴整齊,拎著筆記本電腦準備出門的池杉。
「銀行也要加班嗎?」潘冬疑惑地看向池杉,又看了看客廳牆上的掛鍾,現在時間才剛剛指向9點。對加班來說,現在這個點去似乎有點早了。
「老外不加,我們要加!」池杉無可奈何地回答。其實這話不完全準確,M銀行的項目上加班的中外員工其實都有,但非要用一個標準來衡量,應該是是華人員工才加班。
M銀行項目又是一個八國聯軍項目,項目成員裡面雖然還是中國員工數量更多,但中國員工實際上是來給老外們打下手的。項目經理是一個澳大利亞華人Joe,主要的業務專家是荷蘭人Ben、香港人Mary和新加坡人Helen,技術方面則依賴幾個印度人和澳大利亞人。沒辦法,別說這個產品在中國第一次實施,就是這個業務,所有中國的銀行都沒做過。
中國員工分散在每個小組,目前承擔著一些髒活累活,真正能給客戶交付的任務,還得由這些老外們來完成。項目進度和計劃出現差異的時候,項目經理Joe就會組織加班,這種事在中國員工來看非常正常,但其他人大多不以為意,只有印度人偶爾嘟嘟囔囔的出現一下。因此周末的辦公室里,中國員工成了絕對的主力,工作語言也就變成了中文,連Joe也跟著大家說半生不熟的中文,時間長了大家都忘了他不是中國人。
對於池杉的這個行業來說,五一勞動節和十一國慶節有著非凡的意義,因為這幾天連續放假,非常適合用來做系統切換。因此,自從畢業以後,池杉就徹底跟這兩個節日說再見了。而且,每到過節他就忙得飛起,通宵加班都是常態。2003年的國慶節也是同樣的情況,M銀行的系統進行試運行上線。
一般來說,系統在上線前,都會經過非常充分的測試,按照常理來說不應該有問題。但實際上,上線不出點么蛾子事情,就不能稱之為上線。雖然Joe再三向M銀行拍胸脯保證,系統測試已經非常充分,但M銀行的技術部門還是非常謹慎的制定了一個試運行方案。
凌晨1點,是銀行幾乎沒有任何業務的時間,M銀行把一個地級市的客服電話從老系統轉接到了新系統上,按照歷史經驗,總還是會有些零星的業務發生。這些業務就是對系統的最後一次測試,通過了就繼續加入更多的城市,萬一有問題,在天亮前把客服電話轉回老系統就可以了。
這個方案在池杉看來非常合理,甚至項目經理Joe都沒有任何意見,卻意外地被其他老外項目成員反對,原因很簡單,他們不願意值這種無意義的夜班。最後的結果是,系統真正切換的時候,項目組辦公室里陪著Joe的,也就只剩下了池杉等幾個中國員工。大家一起既緊張又興奮的等待著他們的工作成果,第一次接受真正用戶的考驗。
3點鐘,也不知道是哪個失眠的客戶,打電話過來查詢銀行交易。按照設計,客服姑娘接起電話的時候,系統就應該把該客戶識別出來,並且在客服姑娘面前的電腦上,加載出來該客戶的相關信息。但是,么蛾子就在這個時候來了。頁面轉了很久,客戶信息還是沒有出現。
「先生,你是有什麼緊急的情況,要在這個時間點來查詢交易?」幸虧客服姑娘足夠的機智,在系統加載時間和客戶聊起了天,這才避免用戶察覺有異。系統忙碌的圖標亮了最多也就一兩分鐘,但辦公室所有人都覺得過了半年。電腦畫面上終於出現了該客戶的信息,客服姑娘長出一口氣,找了個空檔把話題轉回正題。掛掉電話,客服姑娘立刻把投訴電話打到了項目組,用她的話說,如果系統再慢一點,她就準備和對方談感情問題了。
這是宣布上線失敗,切回原系統?還是趁著下一個客戶沒打進來,直接在生產系統上查查問題?一直在辦公室打瞌睡的Joe這會也睡不著了,給幾個有望解決問題的項目成員打電話,但印度人和澳大利亞人沒有一個人接聽。就在M銀行的技術部門老大臉色越來越黑的時候,池杉說他來試試看。
自從問題出現,池杉和另外一個技術人員就開始看系統日誌,但他們兩個都不是負責這部分功能的,一時半會找不到問題。但既然也沒有更好的辦法,閒著也是閒著,不如試試看。兩個小時後,池杉以日誌為線索,順著代碼定位到了一個用途不明的軟體開關。
按照生產系統初始化的標準,所有的軟體開關和配置,都應該和測試系統完全一致。但是,這個軟體開關的狀態在兩個系統確實不同,也不知道在環境同步的時候被誰忘掉的,還是安裝腳本根據什麼邏輯自動生成的。關掉這個開關後,系統的反應速度立刻正常了。
這種大型軟體里,各種軟體開關以萬為單位,由於不同功能的設計者在理念和審美上的差異,也由於設計者所在的時代不同,造成了有些開關在配置頁面修改,有些在安裝文件裡面修改,而有些遠古的開關甚至只能在代碼里修改。
介紹這些軟體開關用途的書足有幾米厚,即便是所謂認證的工程師,也只懂得他負責的那一部分開關。總之,這些大型軟體,是幾千人的開發團隊十幾年的工作成果,是無數程式設計師頭髮和腦細胞堆積起來的屎山。
試運行的試運行成功後,M銀行開始以每天幾個城市的速度,把客服電話轉接到新系統上,果然後來的一切就順利了起來。只有一次系統突然停機,嚇了項目組一大跳。池杉查了兩個小時的問題後,發現居然是機房裡有人拔錯了磁碟陣列的電源。這種低級錯誤出現在銀行的機房裡,也真是匪夷所思。更要命的是,闖禍的人發現了錯誤後,又把電源插上以後一聲不吭的溜號了,讓技術人員查錯的時候完全沒有往硬體故障方向去想。