
我廢棄的技術方案存在致命缺陷,同事曲遠竊取後當成自己的拿去用,還因此升職加薪成了部門紅人。
項目驗收那天,客戶技術總監方岩盯著那個我三個月前就標注過“高並發會死鎖”的緩存節點,皺著眉簽了字。
係統上線不到一個月,月底結算時並發量衝到8900,底層算法直接崩潰,客戶損失280萬。
曲遠在會議室裏腿都在抖,外包團隊發來的聊天記錄清清楚楚:“底層代碼我們看不懂,是你給的,我們隻能表麵修補。”
客戶方總經理看著解約函,冷冷地說:“480萬賠償,三天內到賬,否則法庭見。”
1
曲遠站在投影前,遙控筆在手裏轉得飛快。
“這套方案的核心是動態負載均衡,大家看這個架構圖——”
我盯著那張PPT,筆尖在本子上頓住。那個三層調度模型,包括中間那個多餘的緩存節點,跟我三個月前扔進碎紙機的初稿一模一樣。連那個會導致高並發時數據倒灌的設計缺陷都原封不動。
“曲遠這方案思路很新啊。”佟海靠在椅背上,手指敲著桌麵。
“熬了三個通宵。”曲遠按下翻頁鍵,“底層算法我做了優化,比常規方案效率提升40%。”
我在筆記本上記下時間:11月19日10:47。
旁邊的老張湊過來看了眼投影,小聲說:“這個緩存層架構,好像在哪見過?”
曲遠聽見了,笑著接話:“可能是行業通用思路吧,但實現方式完全不同。”
佟海打斷我們:“別討論細節了,客戶那邊催得緊。”他看向曲遠,“你有把握三個月交付?”
“沒問題。”曲遠把遙控筆往桌上一放,“技術框架已經跑通,就差開發實現。”
跑通。我差點笑出聲。那個緩存節點在並發超過5000次時會觸發死鎖,我當初測了整整一周才定位到問題,最後選擇推翻重來。
“那就這麼定了。”佟海站起來,“曲遠,這個項目你來負責,成了直接給你報晉升。”
會議室裏響起零星的掌聲。曲遠衝大家點頭致意,目光掃過我時停了半秒。
我合上筆記本,舉手:“佟主管,我能說句話嗎?”
“寧川你說。”
“我申請退出項目組。”
空氣凝固了兩秒。
佟海皺眉:“為什麼?”
“個人原因,想調去後勤部門。”我把筆記本推到桌子中間,“技術崗不太適合我。”
曲遠眼裏閃過一絲意外,很快被笑意掩蓋:“寧川,不至於吧?大家一起做項目——”
“我考慮清楚了。”我打斷他,看向佟海,“人事調動需要您簽字。”
佟海盯著我看了五秒,點頭:“行,下午來我辦公室辦手續。”
散會後,曲遠追到走廊裏:“兄弟,真不是因為方案被采納你不高興吧?”
“不是。”我按下電梯鍵,“恭喜你。”
電梯門打開,他攔住我:“要不晚上一起吃飯?我請客。”
“不了,要整理工位。”
電梯門在他臉前合上。鏡麵反光裏,我看見他站在原地,遙控筆還在手裏轉。
下午三點,佟海在調動單上簽字。
“你確定?”他把筆帽蓋回去,“後勤部就是打雜,以你的資曆——”
“確定。”我接過文件,翻到第二頁交接清單,“我負責的技術文檔怎麼處理?”
“按規定銷毀。”佟海看了眼電腦屏幕,“保密條例你知道的。”
我拿起他桌上的筆,在清單備注欄寫:“項目初稿相關文檔及測試數據已按保密規定銷毀,服務器已提交設備部報廢。”然後把筆遞給他:“麻煩您簽字確認。”
佟海掃了一眼,刷刷簽上名字。
“還有事嗎?”
“沒了。”我拿起文件,“謝謝佟主管這三年照顧。”
他擺擺手,我轉身出門時,聽見他在打電話:“對,曲遠的項目定下來了,你準備一下晉升推薦表......”
晚上七點,曲遠發了條朋友圈。
配圖是佟海簽字的晉升推薦表,文字隻有四個字:“天道酬勤。”
點讚99+,評論區全是恭喜。
我給他點了個讚,然後放下手機,繼續往紙箱裏裝東西。工位上的榮譽證書、馬克杯、鍵盤,三十年的痕跡塞進一個破紙箱剛剛好。
“還沒走?”曲遠端著咖啡走過來,看了眼紙箱,“這些不要了?”
“後勤部有新工位。”我把最後一個相框放進去。
他把咖啡放在我桌上:“別多想,以後有機會還能調回來。”
“不用。”我拎起紙箱,“我挺適合後勤的。”
他拍了拍我肩膀:“那行,以後有事隨時找我。”
我笑著點頭,目送他走進項目組獨立辦公室。透過玻璃牆,能看見他把晉升推薦表貼在白板上,然後拍照。
紙箱有點重,我走到茶水間門口時停下來歇了歇。裏麵傳來兩個實習生的聲音。
“曲工這方案真牛,佟主管當場就拍板了。”
“人家有實力啊,聽說熬了三個通宵。”
“寧川那個老員工不是也在做方案嗎?怎麼突然調走了?”
“肯定是競爭不過唄,技術不行還死撐著。”
我推開門,兩個人立刻閉嘴。
“借過。”我把紙箱放在地上,接了杯水,一口氣喝完,然後重新拎起箱子走出去。
身後傳來壓低的笑聲。
2
曲遠的獨立辦公室在十樓,玻璃牆上貼著項目啟動倒計時。
我現在的工位在負一層,設備庫房旁邊,沒窗戶,常年開著日光燈。桌上堆著各部門送來的設備采購申請表,最上麵那張是曲遠簽的——項目組要新增五台服務器。
“寧川,這個批一下。”後勤部老劉把文件夾扔過來,“曲工那邊急著用。”
我翻開采購清單,配置參數那欄寫得很模糊:“用途呢?”
“項目啟動會要用,具體問他去。”老劉打了個哈欠,“反正有佟主管簽字,你走流程就行。”
我看了眼佟海的簽名,蓋上文件夾:“行。”
樓上會議室裏,曲遠正在做項目啟動彙報。
我從監控室的屏幕上看見客戶方技術總監方岩坐在第一排,對著PPT皺著眉。曲遠講到架構設計時,方岩抬起手。
“這個緩存層的調度邏輯能詳細說說嗎?”
曲遠笑了笑:“方總是擔心性能問題?我們做過壓力測試,完全沒問題。”
“測試報告能提供一份嗎?”
“當然,會後發您郵箱。”
方岩點點頭,沒再說話,但眉頭一直沒鬆開。
監控畫麵切到佟海那邊,他正在跟客戶方運營總監碰杯:“方案絕對靠譜,三個月保證交付。”
我關掉監控,在采購單上簽了字。
第二天上午,曲遠下樓找我。
“寧川,那個緩存節點的參數配置,你還記得嗎?”他把筆記本電腦放在我桌上,屏幕上是一串代碼。
我掃了一眼,那正是當初我測試時觸發死鎖的那段邏輯:“不記得了,我已經不負責技術。”
“就簡單問問。”他往旁邊湊了湊,“你看這個超時閾值,設置多少合適?”
“這得看並發量。”我合上他的電腦,“但我現在真幫不了你,不在項目組,不方便幹涉。”
他愣了一下:“至於嗎?”
“規矩。”我指了指牆上的保密條例,“佟主管簽的調令上寫得很清楚。”
曲遠盯著我看了三秒,拿起電腦:“行,那我自己研究。”
他走到門口又回頭:“對了,你當初做方案時用的那批測試服務器還在嗎?”
“報廢了。”我翻出設備清單,“上個月剛處理完,都在這。”
他接過清單看了看,沒說話,轉身上樓。
下午四點,我收到項目組的設備申請。
曲遠要組建新團隊,申請了十個工位和配套設備。附件裏是人員名單,我一個個看過去——八個應屆生,兩個實習生。
我敲了敲老劉桌子:“曲工這團隊配置,佟主管知道嗎?”
“知道啊,佟主管說讓年輕人多鍛煉。”老劉頭也不抬,“怎麼了?”
“沒事。”我在申請單上簽字,“就是好奇。”
老劉這才抬頭:“你是不是還惦記著項目組?我跟你說,都調出來了就別多想,安心在後勤待著。”
我笑了笑,把文件放進待辦箱。
晚上加班時,技術部的老張來庫房找東西。
“你真待得住?”他翻著工具箱,“曲遠那個團隊,全是新人,連個能帶隊的都沒有。”
“不關我事。”
“得了吧。”老張找到螺絲刀,直起腰,“上周他來找我幫忙,我說手頭有項目走不開。其實就是不想趟這渾水。”
我抬頭看他。
“你不覺得奇怪嗎?”老張壓低聲音,“部門裏有經驗的,沒一個願意進他項目組。”
“可能是大家真的忙。”
“忙個屁。”老張啪地關上工具箱,“都不傻,那方案一看就有問題,誰願意跟著背鍋?”
他走到門口又補了句:“就曲遠自己看不出來,還以為撿著寶了。”
庫房重新安靜下來。
我打開電腦,調出上個月的設備報廢記錄。那批服務器的硬盤已經做過消磁處理,測試數據徹底清空,但報廢單上的時間戳很清楚——就在佟海簽人事調動的那天下午。
我把報廢單打印出來,放進文件夾,標簽上寫:“項目初稿相關,已銷毀。”
3
周例會上,曲遠把進度報告投在屏幕上。
我坐在最後一排,桌上放著剛簽完的設備維保合同。會議室在十樓,我是上來送文件的,佟海讓我旁聽。
“底層算法實現遇到了點小問題。”曲遠翻頁,“但不影響整體進度。”
方岩放下筆:“什麼問題?”
“就是......調度邏輯有些地方需要優化。”曲遠的遙控筆轉得更快了,“技術細節比較複雜,我們內部在攻克。”
“能具體說說嗎?”方岩往前傾了傾身子,“我們技術團隊可以配合排查。”
“不用。”曲遠笑得有點僵,“下周例會我會提供完整測試數據。”
方岩盯著他看了三秒,在筆記本上寫了什麼。
佟海打圓場:“方總放心,曲遠是我們部門最優秀的技術骨幹,肯定沒問題。”
散會後,佟海把我叫到茶水間。
“寧川,你跟曲遠關係不錯。”他往紙杯裏倒咖啡,“他那邊遇到點技術難題,你幫幫忙?”
“我現在不負責技術。”
“就指點指點,又不讓你回項目組。”佟海把咖啡遞給我,“大家都是老同事。”
我接過杯子,沒喝:“佟主管,當初調崗申請是我自己寫的,上麵寫得很清楚——技術能力不足。”
佟海的笑容頓了頓。
“既然能力不足,就不該誤導項目組。”我把咖啡放在桌上,“這是對項目負責。”
他盯著我看了五秒,端起咖啡轉身走了。
第二天,曲遠的采購申請又來了。
這次是追加預算,要新買三台高配服務器。我看了眼金額,比常規采購貴了一倍。
“這配置有點高啊。”我拿著申請單去找老劉,“是客戶要求的?”
“不知道,反正佟主管簽字了。”老劉看了眼,“你覺得有問題?”
“倒也不是。”我把單子放下,“就是好奇為什麼突然要追加。”
老劉湊過來,壓低聲音:“我聽說曲遠找了外包團隊幫忙,這錢可能是付給他們的。”
“外包?”
“對啊,技術搞不定嘛。”老劉撇撇嘴,“不過這事別往外說,佟主管不想讓客戶知道。”
我點點頭,在申請單上簽了字。
下午,財務部的小王來找我對賬。
“寧川,這個設備采購數量,你確認一下。”她把清單推過來,“曲工項目組報了十五台服務器,但我看庫房入庫記錄隻有十二台。”
我調出入庫單,數字確實對不上:“可能是分批采購?”
“那也得有記錄啊。”小王皺著眉,“要不你問問曲工?”
“行,我問問。”
我拿著清單上樓,曲遠辦公室的門關著,裏麵傳來爭吵聲。
“這個邏輯根本跑不通!”一個陌生男聲,“你給的原始代碼就有問題。”
“那你們想辦法改啊。”曲遠的聲音有點急,“我付錢不就是讓你們解決問題的嗎?”
“改不了,底層架構有缺陷,我們隻能在表麵修補。”
“那就修補!反正演示的時候能跑起來就行。”
我敲了敲門,裏麵瞬間安靜。
曲遠開門,看見是我,鬆了口氣:“寧川,什麼事?”
“設備數量對不上。”我把清單遞給他,“財務讓確認一下。”
他接過去掃了一眼:“哦,有三台我放在家裏測試了,過兩天拉回來。”
“那需要辦個出庫手續。”
“行行行,我明天補。”他把清單塞回給我,準備關門。
我往辦公室裏看了一眼,一個戴眼鏡的男人坐在電腦前,屏幕上密密麻麻的代碼,紅色報錯占了半個屏幕。
曲遠順著我的視線看過去,擋住我的視線:“那個,是我請的顧問。”
“哦。”我點點頭,“那不打擾了。”
下樓時,手機響了。老張發來消息:“聽說曲遠找外包了?”
我回了個問號。
“技術部都傳遍了,說他根本搞不定那套算法,花了兩倍預算找人救場。”老張又發來一條,“我就說那方案有問題吧。”
我沒回複,把手機揣進兜裏。
晚上十點,我還在庫房整理設備台賬。電腦右下角彈出提醒——曲遠項目組的服務器觸發了三次硬件故障預警。
我調出監控日誌,三台服務器在過去一周裏反複重啟,每次都是計算負載過高導致的過熱保護。
但設備維修記錄裏,沒有任何報修信息。
我把預警報告打印出來,放進文件夾,標簽上寫:“曲遠項目,設備異常,未報修。”
然後關掉電腦,鎖好庫房門,上樓去參加曲遠的慶功宴。
他請全部門吃飯,包了酒店最大的包廂。我到的時候,佟海正在敬酒。
“曲遠這小子,是我帶出來的。”佟海摟著曲遠肩膀,“以後前途不可限量。”
曲遠端著酒杯衝大家笑,目光掃到我時停了一下。
我舉起杯子,他走過來碰了碰:“寧川,謝謝你那天退出項目組。”
“客氣。”
“真的。”他喝了口酒,“要不是你讓出位置,我也沒這個機會。”
我笑了笑,把酒一飲而盡。
手機在兜裏震動,是設備供應商發來的故障詳細報告。我看了一眼,關掉屏幕,給曲遠又敬了杯酒。
4
驗收會那天,會議室坐滿了人。
我在門口簽完設備交接單,準備離開時,佟海叫住我:“寧川,進來旁聽一下。”
客戶方來了五個人,方岩坐在中間,麵前擺著一台筆記本。
曲遠站在投影前,西裝熨得筆挺:“各位,今天演示用的是完全模擬真實業務場景的測試數據......”
“等一下。”方岩打斷他,“能用我們提供的真實數據測試嗎?”
曲遠手一頓:“方總,真實數據涉及商業機密,按合同流程,需要先簽保密協議。”
“保密協議我們帶了。”方岩從包裏拿出文件,“現在可以簽。”
會議室安靜了三秒。
佟海咳了一聲:“方總,驗收流程是先看演示,通過後再做深度測試......”
“我們想先看看真實數據跑起來什麼效果。”方岩看著曲遠,“可以嗎?”
曲遠的遙控筆在手裏轉了兩圈:“當然可以,但真實數據接入需要配置環境,今天時間可能來不及——”
“那就改天。”方岩合上筆記本。
“別啊。”客戶方運營總監打圓場,“曲工的演示我們先看看,技術細節後麵慢慢調。”
方岩看了他一眼,沒再說話。
曲遠鬆了口氣,按下遙控器。
大屏幕上,係統界麵流暢運行,各項數據指標完美達標。他提前準備的演示數據跑得很漂亮,沒有一個報錯。
“響應時間控製在50毫秒以內。”曲遠指著監控圖表,“完全符合合同要求。”
運營總監點點頭:“不錯。”
方岩盯著屏幕,突然問:“這個並發量是多少?”
“3000。”
“如果是5000呢?”
曲遠笑了笑:“係統設計上限是8000,5000完全沒問題。”
“那能現場測一下嗎?”
“這個......”曲遠看了眼佟海,“需要調整測試參數,怕影響演示流程。”
“就簡單跑一下。”方岩靠在椅背上,“我們想看看極限情況。”
佟海站起來:“方總,今天主要是功能驗收,性能壓測可以放在後期聯調——”
“沒關係,我們不著急。”運營總監擺擺手,“曲工,試試吧。”
曲遠手指在鍵盤上頓了頓,輸入參數,回車。
監控圖表的曲線開始攀升,響應時間從50毫秒漲到120毫秒,然後是350毫秒。
方岩盯著屏幕沒說話。
曲遠額頭開始冒汗:“可能是測試環境網絡波動,實際部署不會有這個問題。”
話音剛落,屏幕右下角彈出一串報錯信息。
會議室裏的空氣凝固了。
曲遠飛快地關掉報錯窗口:“這是測試數據的問題,我們用模擬數據重新跑一遍——”
“不用了。”方岩合上筆記本,“我們看到想看的了。”
佟海臉色變了:“方總,這隻是小問題,不影響係統整體——”
“佟主管。”運營總監打斷他,“功能演示我們很滿意,就按流程驗收吧。技術細節讓他們後麵對接。”
他看了眼方岩,方岩沉默了三秒,拿起筆在驗收單上簽了字。
但那支筆在紙上停頓了足足三秒。
散會後,我在走廊裏碰到方岩。
他在打電話,聲音壓得很低:“記錄下來,所有異常數據都留檔......對,我知道運營部急著上線,但技術風險必須報備......”
我從他身邊經過,他抬頭看了我一眼,掛掉電話。
“你是後勤部的?”
“是。”
“這個項目你參與了嗎?”
“沒有,我隻負責設備采購。”
方岩盯著我看了兩秒,點點頭,轉身離開。
下午,公司發了通報——項目通過驗收,曲遠獲得年度創新獎。
人事部的公示欄裏,曲遠的晉升公告貼在最上麵:主管級,工資翻倍,獨立團隊,預算三百萬。
我站在公示欄前看了一會兒,手機響了。
老劉發來消息:“你那邊還有廢舊服務器嗎?曲遠項目組又壞了兩台,讓我問問能不能臨時調配。”
我回複:“庫房沒有現貨,需要走采購流程。”
“那算了,他說不著急,等係統正式上線再說。”
我收起手機,又看了眼公示欄。
曲遠的照片貼在那裏,西裝筆挺,笑得很燦爛。
照片下方,佟海的簽名和公司公章並排蓋著。
我轉身下樓,經過十樓時,看見曲遠辦公室裏燈還亮著。
他坐在電腦前,屏幕上是那串熟悉的代碼,紅色報錯還在閃爍。
我沒停留,直接回了庫房。
桌上放著設備故障統計表,曲遠項目組的服務器,一周內報錯記錄已經累積到47條。
但維修申請欄,依然是空白。
我把統計表放進文件夾,標簽上寫:“曲遠項目,設備持續異常,未報修。”
然後鎖好櫃子,關燈下班。
電梯門合上前,我最後看了一眼十樓。
曲遠辦公室的燈還亮著。
5
表彰大會在公司禮堂舉行,主席台上擺著水晶獎杯。
我坐在後排,手裏的設備維保合同還沒簽完。佟海在台上講話,聲音通過音響傳遍整個大廳。
“曲遠同誌用三個月時間,完成了行業內首創的動態負載係統。”他頓了頓,“這是我們部門未來的領軍人物。”
掌聲響起來,曲遠從台下走上去。
獎杯遞到他手裏時,追光燈打在他臉上。他舉起獎杯,鏡頭拉近,我看見獎杯底座上刻著字:“年度創新獎·曲遠”。
人事部張經理接過話筒:“根據公司決議,曲遠同誌晉升為技術主管,即日生效。”
她念完任命書,大屏幕上出現曲遠的簡曆。工資那欄,數字直接翻了一倍。
我旁邊的老劉碰了碰我:“看見沒?這才叫前途。”
“嗯。”
“你當初要是不退出,說不定現在站台上的就是你。”
我沒接話,在合同最後一頁簽了字。
散會後,曲遠在公司門口攔住所有人:“晚上君悅大酒店,我請客。”
包廂裏,佟海坐在主位。曲遠給他倒酒,杯子滿得快溢出來。
“佟主管,沒有您就沒有我今天。”
“客氣。”佟海端起杯子,“你有能力,我隻是給了個機會。”
兩人碰杯,一飲而盡。
曲遠轉向我這桌,坐到我旁邊:“寧川,你怎麼坐這麼遠?”
“習慣了。”
他給我倒酒:“說真的,當初你退出我還挺意外的。”
“是嗎?”
“對啊。”他喝了口,“不過現在想想,有些人就是不適合做技術。你看你現在在後勤,不也挺好?”
旁邊幾個人笑起來。
我端起杯子,跟他碰了碰:“曲主管說得對。”
他拍了拍我肩膀,起身去敬別桌。
老張湊過來,壓低聲音:“你聽出來沒?這是在踩你。”
“聽出來了。”
“你就這麼忍了?”
我放下酒杯:“不然呢?”
老張搖搖頭,沒再說話。
第二天,總部來了通知。
韋鬆副總在述職會上聽了佟海的彙報,當場拍板:“這個項目模式推廣到其他客戶,部門預算追加30%。”
佟海回來後連開三個會,每個會都提到曲遠的名字。
“技術創新要成為常態。”他指著投影上的架構圖,“曲遠的方案就是標杆。”
下午,我收到設備部轉來的報修單。
曲遠項目組又有三台服務器出故障,這次是硬件過熱導致主板燒毀。供應商在備注裏寫:“建議全麵檢測,疑似計算負載異常。”
我拿著報修單去找老劉:“這個需要曲主管確認。”
“他現在忙著呢。”老劉看都不看,“你先走流程,報廢就報廢,反正預算多。”
“可是供應商說——”
“供應商想多賣設備唄。”老劉打斷我,“別想太多,簽字就行。”
我盯著報修單看了三秒,在最下麵簽了名。
然後把單子複印一份,放進文件夾。標簽上寫:“曲遠項目,第三批設備故障,主板燒毀。”
晚上加班時,手機震動。
曲遠發了條朋友圈,配圖是他和佟海的合影,兩人手裏拿著酒杯,背景是君悅酒店的logo。