
我花三年做出的算法,同事孟行舟複製粘貼後署上自己的名字,拿了一百萬獎金。
慶功會上,他舉著支票當眾宣布:“每一行代碼都是我一個人敲出來的,這是我三年的心血。”
企業追加三百萬投資,他當場簽下技術責任書。
兩個月後,算法在生產線崩潰,企業損失兩百八十萬,他被立案調查合同詐騙。
學術委員會調出Git記錄,所有核心文件的創建時間都早於他入職日期,全部指向我的賬號。
他給我發消息:“求你了,幫我說句話。”
我看著消息,想起他刪掉我名字的那一刻,直接拉黑了。
1
青軸鍵盤的聲音在整層樓回蕩。
我專門挑了最響的那種,每一下敲擊都像在提醒所有人——我還在這。
實驗室慶功會搭在三樓大廳,孟行舟舉著那張百萬支票,閃光燈亮成一片。我端著酒杯站在角落,看他被人群簇擁著,笑得下巴都要掉下來。
“這個算法我打磨了三年。”孟行舟的聲音傳過來,帶著酒後的亢奮,“每一行代碼都是我一個人敲出來的。”
我的手停在鍵盤上。
他說這話的時候,眼神掃過我這邊,停留了不到半秒,然後移開了。就那半秒,我看見他眼裏有點慌。
實驗室主任站起來鼓掌。“小孟這個成果,我們要推廣到五個合作項目。”
企業代表接過話筒。“我們追加三百萬投資,兩個月內進入中試階段。”他從公文包裏抽出一份文件,“技術負責書,孟博士現在簽。”
孟行舟接過筆的手頓了頓。
我看見他指尖有點抖,但還是簽了。那份文件壓在百萬支票下麵,紅色印章特別顯眼。
手機震了一下。
導師發來消息:“你當初那個課題放棄了很可惜。”
我回:“有些東西放下了就不再想。”
發送的瞬間,孟行舟走過來了。他臉漲得通紅,搭著我肩膀,酒氣噴在我臉上。“祁川,以後跟著哥好好幹。”
我笑著點頭。“恭喜。”
他拍拍我的肩,轉身又被別人拉走了。我看著他的背影,想起三個月前他來我工位,說想參考一下我的課題思路。
那天我把所有文件都給他看了。
慶功會散場的時候快十一點。我收拾東西準備走,手機推送跳出來——孟行舟發了朋友圈,九宮格照片配文“天道酬勤”。
第一張是他舉支票的特寫。
我關掉手機。實驗室的燈一盞盞熄滅,隻有孟行舟辦公室那扇窗還亮著。我路過的時候看見他對著電腦,手撐著額頭,肩膀垮下來。
屏幕的光打在他臉上,那個表情不太像剛拿了一百萬的人。
2
孟行舟第一次找我幫忙,是慶功會後第二十八天。
微信消息淩晨兩點發來的:“能不能幫忙看看代碼?”
我盯著那行字看了三分鐘,回了四個字:“不太方便。”
他秒回:“給錢。”
我關掉對話框,翻出通訊錄,找到企業那邊技術總監老李的電話。猶豫了十幾秒,還是放下了手機。
不急。
第二天實驗室周會,主任照例點名表揚。“小孟的算法要盡快開源,供同行複現。”
孟行舟端著水杯的手停在半空。“這個......涉及商業機密。”
“學術成果哪來的機密?”主任笑著說,“下月學術委員會就等著呢。”
會議結束後,我路過孟行舟工位。他電腦屏幕上密密麻麻都是紅色的ERROR,刷新的速度快得眼睛都跟不上。
煙灰缸裏堆了半缸煙蒂。
我裝作沒看見,直接走了。
晚上七點,實驗室隻剩我和他。我在調試設備,聽見他打電話,聲音壓得很低。
“對,就是那個算法......什麼?二十萬?”
“你們是第三家了,前兩家都說修不了......”
“根本性缺陷是什麼意思?論文裏寫得清清楚楚......”
電話那頭不知道說了什麼,孟行舟突然拔高聲音:“我自己當然跑過!”
我手裏的螺絲刀掉在地上,叮當一聲。
孟行舟扭過頭,看見我了。他飛快掛斷電話,盯著我看了幾秒,然後說:“設備壞了?”
“滑了一下。”我撿起螺絲刀,“你繼續。”
他沒繼續。抓起外套就走了,腳步聲在樓道裏回響,越來越遠。
我走到他工位前,屏幕還沒鎖。郵件列表最上麵是企業發來的,主題標紅——“第一次延期警告”。
正文隻有兩行:
“貴方承諾的算法在實際環境中無法運行,與演示數據結果差距巨大。限十五日內給出解決方案,否則啟動違約程序。”
抄送人裏有實驗室主任,還有院長。
我退出他的電腦,回到自己工位,打開那個加密文件夾。裏麵是我離職前導出的所有項目記錄——代碼提交日誌、修改時間戳、測試數據。
每個文件的創建時間都清清楚楚。
我把這些文件壓縮,存進移動硬盤。然後給老李發了條微信:“李總,改天請您吃飯,聊聊當年那個算法。”
他很快回:“好啊,正好有事想問你。”
窗外天色漸亮,孟行舟辦公室的燈又亮了一夜。
3
第二家外包團隊是孟行舟花十五萬請來的。
我知道這事是因為他們技術負責人來實驗室的那天,我正好在門口碰見。那人提著電腦包,跟孟行舟說話的聲音整條走廊都聽得見。
“孟博士,實在抱歉。”
“什麼意思?”孟行舟臉都白了。
“這個算法的遞歸邏輯有問題,大規模數據下會自我否定,陷入死循環。”那人打開電腦,“你看這個權重分配模塊,缺了關鍵參數,係統根本不知道該往哪個方向優化。”
“論文裏寫得清清楚楚!”
“那您為什麼自己跑不通?”
孟行舟張了張嘴,沒聲音出來。
那人合上電腦。“我們已經盡力了,剩下的錢會退一半給您。”說完就走了,留下孟行舟站在原地。
我從茶水間出來,假裝剛看見他。“怎麼了?”
“沒事。”他擠出一個笑,“談合作。”
我點點頭,沒接話。路過他身邊的時候,聞到他衣服上一股煙味,混著沒洗澡的酸腐氣。
下午實驗室有人開始議論。
“孟博最近狀態不對啊,總關著門打電話。”
“會不會是項目出問題了?”
“不能吧,百萬獎金都拿了。”
我戴上耳機,繼續做自己的事。
晚上收到企業的郵件,抄送給了實驗室所有項目組成員。主題是“關於駐場技術交底的通知”——他們要派技術團隊過來,跟第一作者麵對麵做算法驗證。
時間定在下周三。
孟行舟肯定也收到了。我看見他在辦公室裏來回走,走了快一個小時,最後坐下來給導師發郵件。
我裝作路過,瞄了一眼他的屏幕。
郵件標題:“申請延緩開源時間”。
導師的回複第二天就來了,也是抄送全組:“學術委員會已將此項目列入下月議程,按規定流程推進。”
孟行舟看到回複的時候,我正好在他對麵工位幫別人調設備。他盯著屏幕看了很久,然後突然站起來,去了趟洗手間。
回來的時候眼眶是紅的。
那天下班,我最後一個走。空蕩蕩的實驗室裏,隻有牆上那張巨幅照片——孟行舟舉著百萬支票,笑得眼睛都眯起來了。
照片下麵,他的工位上堆著三個外賣盒,還有一個煙灰缸,滿到快溢出來。
我關了燈,門鎖哢噠一聲。
走廊裏很安靜,隻有我的腳步聲。
4
老李約我在實驗室附近的茶館見麵。
他一坐下就歎氣。“祁川啊,你當初那個算法,現在搞得我們很被動。”
我給他倒茶。“怎麼說?”
“孟博士那邊,演示數據跑得挺好,一接入生產環境就全亂套。”他摸出煙,想想又放回去了,“我們技術團隊測了半個月,怎麼調都不對。”
“可能是應用場景理解有偏差。”我笑了笑。
“偏差?”老李壓低聲音,“我跟你說實話,我懷疑這算法根本就沒做完。”
我沒接話,隻是喝茶。
老李盯著我看了幾秒。“你當年那個課題,後續還有研究嗎?”
“半成品,沒繼續做。”
“為什麼?”
“離職了。”我放下茶杯,“有些東西不想再碰。”
老李若有所思地點點頭。“下周我們要去實驗室駐場,跟孟博士做技術交底。你覺得......”
“我不方便參與。”我打斷他,“已經不在項目組了。”
他歎了口氣,沒再多問,隻是說企業那邊壓力很大,投資方在催進度。
送他出門的時候,我看了眼手機。
孟行舟發來十幾條消息,從淩晨三點到現在。
“祁川,真的幫個忙。”
“我知道你還有備份。”
“給個價,多少都行。”
最後一條是半小時前發的:“求你了。”
我把手機鎖屏,裝進口袋。
回到住處,我打開電腦,登錄實驗室的校友係統。按照流程申請調取離職前的項目資料,理由寫的是“學術總結”。
IT管理員第二天就批了,給了我隻讀權限。
我下載了所有文件的元數據——創建時間、修改記錄、提交日誌。然後整理成一份時間線文檔,每個關鍵節點都標注清楚。
最關鍵的那三十七個核心文件,創建時間全部早於孟行舟入職日期。
我把這份文檔存進移動硬盤,備份了三個地方。
然後給學術委員會的張老師發了封郵件。
主題:“關於算法可複現性的一些想法”。
正文隻有一句話:“張老師,如有需要隨時可以交流。”
發送成功。
我關上筆記本,走到窗前。遠處就是實驗室大樓,我的工位已經換成新人了。最頂層那扇窗還亮著,孟行舟的辦公室。
他大概又是一夜不睡。
我拉上窗簾,躺到床上。手機又震了,還是孟行舟,這次是語音通話。
我按掉,順手把他拉黑了。
閉上眼睛,那個畫麵又浮現出來——三個月前,他站在我工位旁邊,說想參考一下思路。我把文件夾打開給他看,他盯著屏幕,眼睛裏有光。
那時候我就知道他會怎麼做。
所以我什麼都沒說,隻是把所有記錄都留了下來。
現在,該它們發揮作用了。
5
企業技術團隊駐場那天,實驗室主任專門騰了間會議室。
我不在項目組,但主任讓所有人都去旁聽,說是“學習交流”。我坐在最後一排,看著孟行舟站在投影儀前,手心全是汗。
老李帶了三個工程師過來,每個人手裏都抱著筆記本。
“孟博士,先用測試數據跑一遍吧。”老李語氣很客氣。
孟行舟點開程序。小規模數據導入,進度條走得很順,五分鐘出結果。投影屏幕上各項指標全是綠色。
“很好。”老李點點頭,“現在接生產線。”
孟行舟的手停在鍵盤上。“需要預處理一下數據格式。”
“什麼格式?”老李皺眉,“我們用的是國標格式,你論文裏寫的也是這個。”
“但是......”
“接吧。”老李的聲音硬了,“我們時間有限。”
孟行舟看了眼主任。主任朝他點點頭。
他深吸一口氣,切換到生產環境。數據開始導入,進度條走到百分之三十的時候,突然卡住了。
十秒。
二十秒。
係統沒有任何反應。
“怎麼回事?”老李站起來。
孟行舟敲了幾下鍵盤。“可能數據量大,需要等一下。”
我看著投影屏幕。任務管理器裏,CPU占用率在瘋狂跳動,從百分之六十竄到百分之九十八,然後又掉回去,再竄上去。
“它在死循環。”坐我旁邊的工程師小聲說了一句。
話音剛落,會議室裏所有電腦同時響起警報。
生產線設備報錯信息刷屏,紅色彈窗一個接一個。老李的手機也響了,他接起來,臉色瞬間變了。
“服務器宕機了?”他吼了一聲,“生產線全停了?”
孟行舟猛地按了鍵盤。沒用,程序已經失去響應。
“強製結束進程!”老李衝過去。
但來不及了。投影屏幕變成藍色,然後黑屏。整個會議室的網絡都斷了。
老李扔下手機就往外跑。三個工程師跟著衝出去。
會議室裏一片死寂。
孟行舟癱在椅子上,盯著黑掉的屏幕。主任走過去拍他肩膀,他像沒感覺一樣。
我起身離開。走到門口的時候回頭看了一眼,孟行舟還保持著那個姿勢,像一尊雕像。
三天後,企業的《技術事故報告》送到實驗室。
我在茶水間碰見主任,他拿著那份報告,臉色鐵青。
“因算法缺陷導致生產線停機七十二小時。”他念出聲,“直接經濟損失兩百八十萬。技術負責人:孟行舟。”
他把報告甩在桌上。“這怎麼收場?”
我沒說話,倒了杯水就走了。
路過孟行舟辦公室,門關著。透過玻璃能看見他坐在裏麵,對著電腦一動不動。
桌上擺著那張百萬支票的照片,相框碎了,玻璃渣還沒收拾。
6
孟行舟收到第一份文件是周一上午九點。
我知道是因為整個實驗室都聽見了——快遞員敲門的聲音,然後是孟行舟簽收時筆掉在地上的聲響。
他拆開牛皮紙袋,臉刷地白了。
是企業的律師函。指定他為被告,索賠兩百八十萬,附帶合同詐騙的刑事追責申請。
上午十一點,第二份文件到了。
項目方發來的,激活對賭協議——退還百萬獎金,另付三十萬違約金。
下午兩點,學術委員會的通知。