
發布會上,江成對著兩百人宣布“這個項目核心技術全由我主導完成”,我的名字被排在成員列表第七位,標注“輔助開發”。
十八個月裏六百七十二封客戶郵件全是我發的,他連客戶技術團隊名字都叫不全。
客戶CTO當場提問核心算法,江成卡殼十幾秒答不上來,會後他姑父何棟直接限製我的服務器權限。
三天後係統崩潰,客戶威脅啟動兩千萬違約賠償,何棟帶著江成來求我:“公司遇到困難,大家要齊心協力。”
我打開電腦,展示完整的代碼庫和邏輯簽名:“發布會上說是你主導的,怎麼現在又需要我?”
1
江成站在台上,投影屏幕上是他的單人照。
“這個項目從立項到交付,核心技術攻關全部由我主導完成。”他的聲音通過麥克風傳遍整個會場。
我坐在觀眾席最後一排,低頭看手機。屏幕上是客戶CTO發來的消息:“待會想跟你單獨聊聊技術細節。”
前排坐著公司董事長,旁邊是副總裁何棟。何棟是江成的姑父,也是推動這場發布會的人。他們倆正對著台上頻頻點頭。
我往下滑動江成的PPT。項目成員列表在第七頁,我的名字排在最後,備注兩個字:輔助開發。
十八個月的技術攻關,六百七十二封客戶溝通郵件,三次淩晨修複係統崩潰。現在變成了別人的“主導完成”。
“在最困難的時候,我帶領團隊連續奮戰七十二小時......”江成在台上繼續講述。
我記得那七十二小時。他在朋友圈發自拍,我在機房盯著服務器日誌。
客戶CTO舉手了。
全場安靜下來。江成的聲音停在半空。
“能具體講講負載均衡的算法邏輯嗎?”客戶CTO推了推眼鏡,“特別是高並發場景下的動態調度機製。”
江成愣了十幾秒。
“這個......PPT上有詳細說明。”他翻到技術架構那一頁,上麵是我畫的流程圖。
客戶CTO沒再問。但他轉頭看了我一眼。
媒體記者在拍照,投資方代表在交頭接耳。我低頭繼續看手機。
競爭對手公司的CTO發來微信:“你們公司發布會挺熱鬧,有空聊聊?”
我沒回。把手機揣進兜裏。
發布會結束,何棟拍著江成的肩膀:“幹得好。”江成臉上終於有了笑容。
同事拉我去後台幫忙收設備。我經過主席台時,看到江成被一群記者圍著。
“請問攻克技術難關最大的挑戰是什麼?”
“團隊協作過程中有什麼心得?”
江成對著鏡頭侃侃而談。他說的那些技術細節,有一半我聽著都覺得陌生。
我蹲下來拔電源線。手機又震了。
客戶CTO:“明天技術交流會,我想跟真正做事的人聊聊。”
我盯著這條消息看了十秒鐘。收起手機,抱著音響設備往庫房走。
透過玻璃門,江成還在接受采訪。鎂光燈把他照得格外耀眼。
2
第二天公司開慶功會,江成坐在主桌。
何棟站起來敲杯子:“有個好消息宣布。經董事會研究決定,江成同誌晉升為技術總監。”
HR當場遞上聘書。我看了眼時間,從提交到審批通過,兩小時。
會議室響起掌聲。江成站起來鞠躬致謝。
我坐在角落,顧衍碰了碰我的手肘。他是我帶出來的核心開發,進公司三年。
他什麼都沒說,隻是看著我。
會後在茶水間,團隊八個人擠在一起。
“這也太假了。”顧衍把手機遞給我。
屏幕上是昨天發布會的現場視頻。客戶CTO提問那段,江成卡殼的十幾秒被剪成了gif圖,在技術社區傳開了。
“他連負載均衡都答不上來。”另一個成員小聲說。
我接了杯水:“別討論這些。”
“可是......”顧衍還想說什麼。
我轉身走了。
下午江成召集技術部門開會。
“項目文檔需要全部交接。”他坐在會議室主位,“程昭,你負責整理。”
“文檔在我電腦,明天整理。”我說。
回到工位,我插上移動硬盤。Git倉庫、設計文檔、溝通記錄,全部備份。
六百七十二次代碼提交記錄,每一次都有我的數字簽名。核心函數裏藏著特殊的注釋格式,帶時間戳的邏輯標記。
這是我立項時就埋下的習慣。
郵件提示音響起。客戶公司技術團隊發來會議通知:明天下午兩點技術評審會,要求程昭參加。
五分鐘後,江成走到我工位。
“明天客戶那邊的會,我來對接。”他說,“你列席記錄就行。”
“好。”我點頭。
他轉身離開。走了兩步又回頭:“對了,把核心代碼的權限給我開一下。”
“IT部門統一管理。”我說,“需要的話找他們申請。”
江成臉色有點難看,但沒再說什麼。
下班時我路過他辦公室。門沒關嚴,透過縫隙能看到他對著電腦發愁。
屏幕上是我寫的代碼。密密麻麻的函數調用,他盯著看了很久。
窗戶玻璃倒映出他的臉,漲得通紅。
3
技術評審會在客戶公司開。
江成提前半小時到,我踩著點進會議室。客戶CTO和三個工程師已經坐在那裏。
“江總監,我們直接開始吧。”客戶CTO打開筆記本。
江成點頭,拿出準備好的PPT。
第一個問題:API接口版本兼容性怎麼處理?
江成翻開PPT,念了一段架構說明。
客戶工程師皺眉:“我問的是具體實現方案。向下兼容的策略是什麼?”
江成卡住了。
會議室安靜了十幾秒。
“這個......我們采用的是行業通用做法。”他說。
客戶工程師看向CTO。CTO看向我。
“程昭,你來說說。”
我放下筆:“版本號分三段,主版本、次版本、修訂號。向下兼容保留舊接口,同時開新路由。客戶端請求頭帶版本參數,服務端根據版本號分發到對應處理器。”
客戶工程師點頭:“那數據庫索引優化呢?高並發場景下怎麼避免鎖衝突?”
江成張嘴,又閉上了。
我接著說:“聯合索引覆蓋查詢字段,減少回表。熱點數據走Redis緩存,設置合理的過期時間。寫操作用樂觀鎖,CAS機製解決並發更新。”
第三個問題還沒問出來,客戶CTO就抬手製止了。
他看著江成:“看來真正幹活的人心裏有數。”
江成臉色鐵青。手指在桌麵上無意識地敲著。
會議草草結束。客戶工程師收拾東西離場。
客戶CTO把我單獨留下。
“發布會那個人是怎麼回事?”他直接問。
“公司安排。”我說。
他盯著我看了幾秒:“我隻跟懂技術的人合作。你記住這句話。”
回公司的路上,江成一句話都沒說。
到了公司樓下,他掏出手機撥了個電話。
“何總,客戶那邊可能有誤會......對,我知道......好,我穩住。”
掛斷電話,他看了我一眼:“你在客戶麵前太出風頭了。”
我沒接話。
刷門禁卡進大樓,顯示屏亮紅燈。
保安看了看電腦:“程工,你的權限被限製了。服務器機房進不去。”
“誰改的?”
“江總監的指示。說要統一管理核心資產。”
我轉身往外走。江成已經進了電梯。
電梯門合上前,我看到他靠在轎廂裏,長出了一口氣。
4
江成限製我權限後的第三天,客戶發來催促郵件。
項目二期優化方案,三天內提交。
他找了外包團隊。我聽顧衍說,外包拿到需求文檔後懵了,底層架構他們看不懂。
“需要原始設計圖。”外包負責人在電話裏說。
江成翻遍公司服務器。Git倉庫裏隻有代碼,設計文檔在我的個人筆記本裏,加密的。
IT部門試了兩天,破解失敗。
客戶的第二封郵件到了。抄送董事長。
江成讓外包按常規方案做。他說來得及。
三天後,客戶現場壓力測試。
我在工位上,聽到顧衍手機響。客戶工程師發來的消息:“係統崩了。”
十分鐘後,整個技術部門都知道了。
客戶演示現場,係統直接宕機。負載一上來,數據庫連接池爆了,服務全掛。
客戶CTO當場撥通董事長的電話。
“這就是你們的技術實力?”他的聲音大到整個辦公區都聽得見,“發布會吹得天花亂墜,實際交付是這種垃圾?”
董事長連開三個會。第三個會在晚上九點,何棟被叫進去。
半小時後,何棟出來。臉色像紙一樣白。
又過了十分鐘,江成給我打電話。
我掛斷。
他又打。我繼續掛。
第五個電話響起時,是何棟的號碼。
“程昭,公司遇到困難,大家要齊心協力。”他的聲音很客氣,跟平時完全不一樣。
“我隻是輔助開發。”我說,“解決不了。”
電話那頭沉默了幾秒。
第二天上午,何棟帶著江成到我工位。
周圍同事的視線都轉過來。
“程昭,這次真的需要你幫忙。”何棟說,“客戶那邊......”
“事後給你項目獎金。”江成接話。
我抬頭看著他:“發布會上說是你主導的,怎麼現在又需要我?”
江成臉漲紅了:“你故意不配合是想害公司?”
我打開電腦。調出備份的代碼庫。
完整的設計文檔,六百七十二次提交記錄,每個核心函數裏的邏輯簽名。
“這些都是我做的。”我轉過屏幕讓他們看,“你要用可以,先把發布會的事說清楚。”
何棟臉色變了:“你這是要挾。”
“我隻是要個說法。”
我起身,往衛生間走。身後何棟和江成站在原地,一句話都說不出來。
衛生間裏,我打開手機。
競爭對手公司CTO發來正式offer。年薪翻倍,職位技術合夥人。最後一句話是:“團隊可以一起帶過來。”
水龍頭嘩嘩地響。
我洗了把臉,看著鏡子裏的自己。
外麵傳來腳步聲,有人在討論客戶違約賠償的事。
兩千萬。
我關上水龍頭,走出衛生間。
何棟還站在我工位旁邊。他看到我,張嘴想說什麼。
我從他身邊走過,坐回椅子上。
手機又震了。
董事會成立調查組的通知,要求何棟解釋項目情況。抄送全體中層。
我看了一眼,鎖屏。
江成已經不在了。隻有何棟還站著,手裏的水杯微微發抖。
5
何棟在我工位站了快五分鐘。
“程昭,公司養了你三年。”他終於開口,“現在就這麼看著不管?”
我沒抬頭:“發布會那天,誰說我隻是輔助開發來著?”
他喉結動了動。
江成從電梯口衝過來,手裏拿著手機:“客戶又發郵件了,說再不修好就走法務流程。”
“那就讓主導項目的人去修。”我盯著屏幕說。
周圍同事的鍵盤聲都停了。
江成憋紅了臉:“我承認發布會那個......我可以跟董事長說明,但你得先把係統修好。”
“先說明。”我轉過椅子看著他,“當著所有人的麵。”
何棟按住江成的肩膀:“你先回辦公室。”
江成走後,何棟壓低聲音:“事後給你股權激勵,這個夠誠意了吧?”
我打開電腦裏的備份文件。
設計文檔第一頁,創建時間是十八個月前。作者信息那一欄,寫著我的名字。
“這些你都看過嗎?”我把屏幕轉向他,“六百七十二次代碼提交,每一次都有時間戳和數字簽名。”
何棟臉色變了。
“合規部已經在調郵件記錄了。”我說,“客戶溝通、技術方案、問題修複,全是我的名字。江成的郵件隻有三封,還都是轉發。”
他的手抖得水杯裏的水濺出來。
“你想要什麼?”他問。
我的手機在這時候震了。競爭對手公司HR發來消息:offer有效期三天,團隊名額已經準備好。
“我想要個說法。”我鎖屏,站起來,“現在去衛生間。回來之前,你們自己商量清楚。”
走到衛生間門口,聽到身後顧衍的聲音:“昭哥。”
我回頭。他和另外兩個組員站在茶水間門口。
“我們都看著呢。”顧衍說。
我點點頭,推門進去。
隔間裏,我給競爭對手公司CTO回了消息:能不能再等兩天?
對方秒回:可以。但這兩天想清楚,有些爛攤子不值得收拾。
我靠在門板上,閉了閉眼。
外麵傳來急促的腳步聲。
是董事會秘書的聲音:“何總,董事長讓您馬上過去。調查組有初步結果了。”