![]()
手機在口袋里震了一下。
我沒急著看。
國慶節前的最后一天,辦公室里彌漫著一種懶洋洋的散伙氣息。隔壁工位的劉姐已經收拾好了包,隨時準備沖出去接孩子。對面的小陳在偷偷刷機票。窗外陽光打進來,落在鍵盤上,浮灰飛舞。
我抿了一口涼透的咖啡,拿起手機掃了一眼。
工資條。
手指點開,從上往下慢慢看。
應發工資:12500。個稅扣繳:342。社保:1250。公積金:600。
最后一行——
【項目獎金:800.00元】
800塊。
我盯著那個數字看了五秒鐘。
然后又看了一眼,確認沒少看一個零。
沒錯,八百。
公司研發部二十個人,據說這次項目總額有兩百多萬,兌現之后所有人都有一筆豐厚的獎金。
我掃了一眼工作群里。
果然,炸了。
——“臥槽!兄弟們你們多少?我兩萬八!”
——“嘻嘻,我這個季度滿勤,拿了三萬五。”
——“我少點,一萬九,不過夠國慶出去浪了。”
有人艾特了周瑜文:“文哥!你多少?快曬快曬!”
兩分鐘后,周瑜文發了一個截圖。
金額:101200.00。
“謝謝趙總,謝謝各位兄弟姐妹的支持。”他發了一個謙虛的表情包。
下面一片“膜拜大佬”“文哥牛逼”“請客請客”的刷屏。
我默默鎖了屏。
我的八百塊,和那十萬零一千兩百,中間差了一百二十多倍。
而周瑜文做的所有事情——
就是每周一上午在例會上坐我隔壁,等我把系統架構調整方案講完之后,他推一推眼鏡說:“嗯,小林說得不錯,我補充幾點。”
然后把他從我昨晚發給他的文檔里摘出來的內容,拿出去講。
接下來的事情,技術部那些活全是我做。
框架設計,我寫。
底層代碼,我寫。
核心邏輯,我寫。
上線前連續一周通宵調Bug,也是我。
而周瑜文這個“名義上的架構師”,每天下午五點準時下班,去健身房打卡。
我深吸一口氣。
慢慢把手機放進褲兜里。
旁邊的老程序員周姐探頭過來:“小林,你多少?”
我笑了笑:“夠吃飯了。”
“肯定也不少吧?你們搞底層的,那可是真本事。”她拍了拍我的肩膀,“年輕人前途無量。”
我點點頭。
周姐不知道的是,我這個月拿的八百,連她那個三千五的零頭都不到。
剛入職時,領導說:“小林你好好干,技術部最缺你這種人。”
第二年加薪,加了三百塊。
第三年,也就是今年,跳槽的念頭在腦子里轉了幾百遍,每次都被“再堅持一下”壓下去。
今天這八百塊,像一盆涼水從頭頂澆下來。
我站起身,走到茶水間。
窗外的城市車水馬龍。我拿起手機,翻到一個平時很少聯系的獵頭的微信。
“李哥,上次說的那家,條件還有效嗎?”
消息發出去三秒,對面秒回。
“小林總,等你這句話等了一年了。條件不變——35K×14薪,期權另談,可以的話國慶后入職。”
我打出兩個字:“成交。”
01
回到工位的時候,辦公室里突然安靜了一瞬。
我下意識看了看周圍,大家都在低頭裝忙,但眼神時不時往某個方向飄。
順著他們的目光看過去。
趙銘的辦公室門開著。
趙總居然在國慶前最后一天出現在公司——這可是大新聞。他平時一個月都不來一趟,有什么事都是劉子安傳達。
“怎么回事?”我壓低聲音問旁邊的小陳。
“不知道,劉總監被叫進去了,好一會兒了,里面好像在吵。”
話音未落,劉子安的辦公室門開了。
他走出來,臉色很難看,手里攥著一份文件。
他掃了一眼辦公區,然后目光落在我身上。
“小林,你進來一下。”
我愣住了。
關我什么事?
進到辦公室里,劉子安把門帶上了。
“坐。”
我坐下。
劉子安坐在老板椅上,手指不停地轉筆。好半天,他才開口:“那個……年底的獎金,看到了?”
“嗯。”
“800塊錢是少了點,但公司今年的業績你也知道,能發已經是趙總……”他像背書一樣說了一串官方說辭,“……你放心,公司不會虧待老人的,明年一定調整。”
我看著他。
劉子安45歲,在這個行業混了十幾年,技術說不上多好,但人情世故玩得特別溜。他有一句名言:“程序寫得好不如口才好。”
我點點頭:“好的劉總,我知道了,沒事我先出去了。”
“等一下。”他叫住我。
我回頭。
劉子安猶豫了一下,說:“那個……周瑜文今天下午請假了,他負責的一個線上項目,今晚可能要補數據。你……”
“今晚?”我皺起眉頭,“他說他做的?”
“嗯,他說他全搞定了,但運維那邊反饋說有個字段對不上。”
我沉默了幾秒。
“這個項目是不是上線前他一點都沒碰?”
劉子安不說話了。
“那個項目的底層邏輯是我寫的,他根本不知道里面有幾個模塊。”我說,“讓他自己改吧,我先下班了。”
劉子安的眉頭擰了起來:“小林,你——”
“劉總,我加了三年的班了。”我打斷他,“今天這個班,我不想加了。”
說完,我拉門出去了。
回到工位坐下,我打開電腦里的一個加密文件夾。
這是我這三年寫的所有代碼。不只是寫,還有架構設計、核心算法、異常處理機制……所有周瑜文拿去匯報的東西,每一行都是我寫的。
我點了幾下手。
把這些文件全部選中。
右鍵——復制——粘貼到U盤。
然后刪掉了本地所有副本。
做這件事的時候,我的手很穩,心里沒有一絲波瀾。
因為我知道,這個系統離開我,跑不了三天。
我不是吹牛。
這個公司的核心技術平臺叫“白澤”,是三年多以前我來的時候,親手從零到一搭起來的。當時技術部十幾個人,沒有一個人能說清楚數據中臺該怎么設計,只有我,靠著之前在阿里兩年的底層經驗,做了一套幾乎完美的架構方案。
方案交上去之后,所有人都傻眼了。
趙銘當場拍板:“這個項目就交給小林。”
但當時我太年輕,不懂什么叫“功勞歸誰”。
周瑜文比我大兩歲,來公司早一年。他當時主動找到我,說:“小林,你的方案很好,但你在公司資歷淺,直接掛你名字,下面的人不服。我們先掛我,等項目穩定了,再把你推上去。”
我信了。
后來我才明白,這是一張永遠兌現不了的空頭支票。
三年了,項目穩定了,我的名字從來沒出現在任何一個匯報PPT上。
周瑜文成了“架構師”,年薪翻了三倍。
而我,還在一萬二的崗位上,拿著八百塊的獎金。
我關掉電腦的時候,辦公室大部分人都已經走了。
手機亮了。
是一條消息,發件人備注:“周瑜文”。
“小林,運維說那個字段的事,麻煩你處理一下,我這邊有點急事,謝謝。”
我看著這條消息,忽然想笑。
明天就是國慶假期了,他連讓我加班的借口都懶得編了。
我把手機放進口袋,走出了辦公室。
關上門的那一刻,我回頭看了一眼辦公區。
燈還亮著,鍵盤鼠標散落一桌。
再過七天,這里就不屬于我了。
02
國慶第一天,我回了趟老家。
我爸林建國今年六十八,退休后就在老家縣城里住著,平日里最大的消遣就是去公園下棋。我媽去世得早,他一直沒再娶。
到家的時候,他正在院子里澆花。
看到我回來,他先是愣了一下,然后眼睛彎了一下:“怎么回來了?不是工作忙嗎?”
“放假了嘛,回來看看你。”
他把水壺放下:“吃飯了沒?”
“沒呢。”
“進來吧,給你熱飯。”
我爸的廚藝還是老樣子,一盤清炒土豆絲,一盤西紅柿炒蛋,外加一碗紫菜蛋花湯。都是最普通的菜,但我吃得特別香。
期間他也沒怎么說話,一直看著我吃。
“怎么,在公司受委屈了?”他突然問了一句。
我筷子頓了一下。
“沒有。”我說,“就是想換個環境。”
“換?”
“嗯,準備辭職了,新公司已經談好了。”
他沉默了好一會兒,才開口:“也好。你這孩子從小就老實,你媽在的時候常說,老實人吃不了虧。可這些年,我看到你每次回來臉上的笑越來越少,我就知道,你不開心。”
我沒說話。
“你想換工作,我不攔你。但你記住一句話:實力是你的,誰也拿不走。名譽這東西,他們能搶走一時,搶不走一世。”
我點點頭。
回家第二天,我在房間里整理東西的時候,翻到了一個小盒子。
打開一看,里面是一張獎狀,是我小學三年級參加全市編程競賽的獲獎證書。旁邊還有一張照片,是我站在領獎臺上,旁邊是我媽。
我盯著照片看了很久。
我記得我媽當時笑得很開心:“我家兒子將來一定是個大程序員。”
我媽走的時候,我還在上大學。
那一年我大三,正處在對未來的迷茫期。我媽臨走前拉著我的手說:“小默,做人要低調,但做事要扎實。別人不知道你是誰不重要,重要的是你知道自己是誰。”
我當時不太理解這句話。
現在才明白,她是在告訴我:真正的價值,不需他人定義。
我把照片放回盒子里。
然后拿起手機,看到一條新聞推送:“知名互聯網公司核心產品連續宕機,疑似底層代碼存在嚴重漏洞。”
我沒在意,劃過去了。
國慶第三天,我接到了楊辰的電話。
楊辰是我大學的師弟,比我小五歲,去年剛畢業,被我介紹進了公司。
“師兄……你,你是不打算回來了嗎?”
我一愣:“你怎么知道的?”
“你辦公桌上的東西,劉總讓我給你收拾了。他說你已經申請不續約了。”楊辰的聲音有點慌,“還有,師兄……公司系統出問題了。”
“什么問題?”
“國慶第一天還好好的,第二天晚上開始,核心業務系統連續報錯,運維那邊查了一天一夜,說要找底層代碼的人。周瑜文去看了,說他看不懂那些代碼。”
我不意外。
“然后呢?”
“然后劉總打不通你的電話,就讓周瑜文來處理。周瑜文在群里說他是架構師,他來看。結果他打開代碼,看了三分鐘,說了一句……說‘這代碼是誰寫的,怎么沒留注釋’。”
我笑了一下。
寫了三年代碼,我不寫注釋的習慣,是因為我太懶。
也是因為我覺得,這個世界上只有我能看懂那套邏輯。
“師兄……你……你真不來了?”楊辰又重復了一遍。
“不來了。新公司已經簽了合同。”
“那系統怎么辦?”
“運維那邊有備份,實在不行就回滾。”
“回滾不了。備份被你刪了。”
“備份在服務器上有定時腳本。”
“腳本被人改了,運維那邊說——有人,算了,你先別問了。”
楊辰的語氣里帶著一種說不出的困惑和著急。
我沉默了幾秒。
“等國慶假期結束再說吧。”我說完掛了電話。
窗外,老家的街道安靜祥和。
我靠在窗邊,看著遠處山頭的云。
心里有一絲說不清道不明的預感。
國慶第四天,我的手機再也安靜不下來了。
03
先是劉子安的來電。
第一次,我沒接。
第二次,響了很久,我猶豫了一下,還是接了。
“小林,你人呢?”劉子安的聲音里帶著焦急,“系統崩了,你知不知道!你寫的那些代碼,現在誰也看不懂!”
“劉總,我已經離職了。”
“離職了你也不能撒手不管吧!你是公司的人,你寫的代碼就該對公司負責!”
“劉總,合同上清清楚楚寫著,我離職后退出的義務只有交接,交接我已經完成了。”
電話那頭沉默了。
“你不是把那套東西給周瑜文了嗎?讓他看。”我說。
“他……他說看不懂。”
“那就沒辦法了,這活只有我能干。”我說,“但我現在已經不是公司的人了。”
“小林,”劉子安的聲音突然軟了下來,“你再考慮考慮,你來,我們什么都好談。薪資不是問題,我們可以簽一份新的……不低于兩萬,你看怎么樣?”
我笑了一下,搖了搖頭。
“劉總,我新公司給我35K,15薪。”
電話那頭又是一陣沉默。
“這……這樣,你和那邊談一下,我們出40K,你留下來。”
“不用了。我合同已經簽了。”
“違約金我們出!你——”
“劉總,不是錢的問題。”我說,“我在公司三年,付出了什么,你沒看到,周瑜文也沒看到。現在系統崩了,你們才想起來找我。你覺得,我會回去嗎?”
劉子安沒說話。
“掛了。”
我掛了電話。
國慶第五天,電話更多了。
技術部的老同事,和我要好的幾個人,斷斷續續打過來:
“小林,你和公司是不是鬧翻了?”
“那個項目出大事了,趙總在辦公室拍桌子罵人。”
“周瑜文今天請病假了,劉總都快瘋了。”
然后是趙銘的電話。
我看著屏幕上跳動的“趙總”兩個字,猶豫了七八秒,還是接了。
“小林,是我。”趙銘的聲音很沉,但還算客氣,“系統的事,聽說了吧?”
“聽說了。”
“我們這邊確實遇到困難了。底層代碼,除了你沒有第二個人能看懂。周瑜文說他在做,但我今天看他打開項目文件夾,連主函數入口都找不到。”
我沉默。
“小林,你別誤會,我不是來求你的。我是來和你談的。”趙銘說,“你提條件,任何條件,只要我能做到的。”
我看著窗外慢慢飄過的云。
“趙總,我不是要加價回去。我已經答應別人了。”
“我知道,但我還是想爭取一下。”趙銘說,“你過來,我只占用你半個小時。不,十分鐘。你來找我,或者我過去找你。”
“不用了。趙總,我已經不在那個公司了。”
“那你能不能告訴我,你到底是為了什么?”
“為了一口被憋了三年的氣。”我說。
電話掛斷后,我沉默了片刻。
然后發現手機里多了一條消息,來自一個陌生號碼。
是周瑜文發的。
“林默,你玩得真大。你會后悔的。”
我盯著這條消息看了好久。
刪除了。
04
國慶最后一天,我回到了工作的城市。
新公司那邊已經打了招呼,下周一入職。這幾天我正好可以理一理思路,重新安頓。
那天下午,我在出租屋里收拾行李,打算換一個離新公司更近的地方住。
手機又響了。
這次是楊辰。
他的語氣變了,不再慌張,而是多了一絲凝重:“師兄,你方便接電話嗎?”
“方便,怎么了?”
“我今天偷偷去運維那邊看了一眼,我……我發現一件事。”
“什么事?”
“系統崩的根本原因,不是代碼錯誤。”
我愣了一下:“什么意思?”
“運維日志顯示,國慶第二天凌晨三點,有一個IP內網登錄了服務器,運行了一個腳本。那個腳本……把核心庫里的一個前置校驗邏輯給改了。”
“改了?”我眉頭一皺,“誰改的?”
“日志里顯示的是……你的工號。”
我愣住了。
我的工號?
我辭職之后,工號按理說已經凍結了,但公司流程拖沓,經常過一兩周才注銷。
“那個腳本的寫入時間是凌晨三點零二,而那天晚上……你在老家。”楊辰說,“師兄,有人在陷害你。”
窗戶外面,天色漸漸暗下來。
我把手機換了個手,慢慢靠在沙發上。
“那個人……是周瑜文嗎?”
“不清楚。但運維那邊說,那個IP屬于內網,是技術部獨立網段,外人進不去。”
“我明白了。”我說。
“師兄,你現在打算怎么辦?要報警嗎?”
“報警沒用,沒有確鑿證據。”
我想了想,說:“不過,這件事我遲早會查清楚。謝謝你,辰。”
“不用謝,師兄你小心一點。”
掛了電話后,我坐在沙發上,看著天花板。
被人陷害的感覺,就像被人從背后捅了一刀。
你還沒來得及喊疼,他已經跑了。
我深吸一口氣。
行,既然你們要玩,那就玩大一點。
我從行李箱里翻出那臺舊筆記本。
它已經三年沒用了,但里面……存著一些東西。
或者說,一個秘密。
這個秘密,是我給自己留的后路。
三年前,我寫第一版核心代碼的時候,留了一個隱藏模塊。那個模塊不參與任何正常邏輯運算,只有一個功能:記錄服務器上每一次非我賬號的操作。
換句話說,誰動了我的代碼,誰修改了我的邏輯,全部有記錄。
這是技術人的自我保護。
當年教我的師父說過一句話:“程序員寫代碼就像寫遺囑,誰也猜不透你在想什么。但你得給自己留一份證據。”
我打開筆記本。
連上VPN,登錄了一個早就注冊好的云端賬號。
輸入一串長長的密碼。
系統提示:請輸入動態驗證碼。
我拿出手機,點開一個加密APP,掃了一下上面的二維碼。
“滴——”
登錄成功。
一個文件夾彈出來。
里面,赫然躺著國慶第二天凌晨三點的所有操作記錄。
我往下翻,一行一行地看。
操作人:周瑜文。
操作內容:修改核心校驗函數,屏蔽異常檢測,運行破壞性腳本。
工具:遠程桌面,使用工號10024登錄。
我盯著那行字。
臉上沒有表情。
周瑜文啊周瑜文,你確實夠狠。
想讓我背鍋?好,我讓你背個夠。
我把這些文件全部加密保存。
然后合上筆記本。
窗外,華燈初上。
新的一周,馬上開始了。
05
周一,新公司入職第一天。
我起了個大早,換上熨過的襯衫和西褲,特意把皮鞋擦得锃亮。新的工牌掛在胸前,黑色logo看著就比耀星高級。
前臺的姑娘遞來一盆綠植:“林工,這是您的位置。”
我被領到靠窗的一個工位,旁邊就是整面落地窗,可以看到整個城市的天際線。
這是我人生中第一次,覺得自己被當人看了。
上午熟悉環境,下午看項目文檔。一切都很順利。
直到下午四點,我的手機震動了。
是一個陌生號碼。
我猶豫一下,還是接了。
“請問是林默先生嗎?”
“我是。”
“我是耀星科技總裁辦的工作人員,冒昧打擾您了……趙總請您務必抽時間回一個電話。”
“不好意思,我已經不在耀星了。”
“我知道,但請您……至少接一下趙總的電話。”
我沉默了幾秒。
“好吧。”
掛掉電話后,我靠在椅子上,看著窗外明晃晃的陽光。
不到十分鐘,趙銘的電話來了。
“小林,”他的聲音聽起來疲憊,甚至有點沙啞,“系統又崩了一次。”
我沒說話。
“之前那次宕機,運維那邊用了緊急方案頂住了。但今天上午,核心服務再次出現大規模報錯,用戶數據丟失,業務全停。”
“那周瑜文呢?”
趙銘沉默了一下:“他失蹤了。電話打不通。”
“報警吧。”我說。
“報警沒用,這是系統問題。小林,我現在鄭重地求你——以趙銘個人的名義,求你回來幫一次。不是耀星,是我趙銘求林默。”
我閉了閉眼睛。
“好。”我說。
然后我打開電腦,登錄了那個云端賬號。
手指在鍵盤上敲下一行命令。
幾秒鐘后,一個文件夾出現在屏幕上。
有二十二個日志文件。
每一個,都記錄了周瑜文在這三年里,是如何用我的工號登錄服務器,修改核心代碼,刪除重要數據的。
第一次,是去年三月。
他刪掉了我寫的一個關鍵模塊,然后用自己的代碼替換了。那個替換后的代碼,運行效率低了三分之一。
但沒人知道。
第二十一次,是今年八月。
他偷偷把我的一個校驗函數改成了可有可無的注釋。
第二十二次,是國慶第二天凌晨三點。
他執行了那個毀滅性的腳本。
我把這些文件打包。
然后打了個電話給趙銘。
“趙總,我給你發一個加密文件。你拿著這個文件,去報警。”
“這是什么?”
“你想要的真相。”
電話那頭,趙銘沉默了很久。
然后他說:“小林,我知道了。對不起。”
我沒回答。
掛掉電話后,我把那份文件發送了出去。
然后我靠在辦公椅上,看著窗外漸漸西沉的太陽。
心里忽然很平靜。
不是釋然,不是解氣。
而是——
我終于不再欠任何人了。
傍晚的時候,新部門的同事喊我去聚餐。
我收拾好包,正要起身,手機又響了。
這次是楊辰。
“師兄,出大事了!”
“什么事?”
“周瑜文自首了。”
我愣了一下:“什么?”
“他今天去派出所投案,承認了所有事情。”
我放下包,慢慢坐回椅子上。
“他為什么要自首?”
“因為……”楊辰聲音很輕,“他說,如果不自首的話,他會死。他……他說有人在威脅他。”
“誰在威脅他?”
“他說是……你。”
我愣住了。
窗外,夜色漸濃。