聯盟總部的玻璃幕牆外,城市的霓虹正被一場突如其來的暴雨衝刷得支離破碎。十三樓的會議室裡,空氣比窗外的雨幕更顯凝滯,騎手代表們攥緊的拳頭青筋突起,手機屏幕上滾動的惡評像密集的冰雹,砸得人耳膜發疼。
“用戶地址說漏就漏?我們天天跑街串巷,背的不僅是外賣箱,更是人命關天的信任!”穿藍色衝鋒衣的騎手猛地拍向桌麵,紙杯裡的冷茶濺出,在光滑的會議桌上洇出深色的漬痕。
李默站在長桌儘頭,深灰色西裝的袖口已經磨出細痕,領帶被他扯鬆了半寸。他的聲音帶著徹夜未眠的沙啞,卻字字沉穩:“定位權限是聯盟的生命線,我以創始人的身份保證,天亮前一定給所有人一個交代。在此之前,所有機器人配送暫停,轉由人工配送,產生的額外成本由總部承擔。”他抬手示意助理分發新打印的配送路線圖,“這是調整後的最優路線,每單補貼百分之二十。”
騎手們的情緒漸漸平複,有人低頭翻看路線圖,有人對著手機低聲安撫客戶。李默目送他們走出會議室,走廊裡的聲控燈隨著腳步聲次第亮起,又在儘頭熄滅,像一串忽明忽暗的警示燈。
推開技術部辦公室的門時,冷氣裹挾著咖啡的焦香撲麵而來。林溪趴在寬大的顯示屏前,海藻般的長發垂落,遮住了大半張臉,露出的一截脖頸泛著疲憊的潮紅。她麵前的屏幕上,綠色的代碼流像奔騰的河流,一行行衝刷而過,鼠標在她指間飛快跳躍,發出細碎的“哢噠”聲。
“查到了。”她猛地抬起頭,眼底布滿血絲,虹膜上還印著代碼的殘影,“不是算法漏洞。”她調出一段閃爍的紅色指令,指尖重重戳向屏幕,“有人在三天前的係統更新裡,惡意植入了定位嗅探程序,偽裝成物流追蹤模塊,每完成十單配送就自動上傳一次用戶坐標。”
李默走過去,輕輕抽走她手裡發燙的鼠標。她的指關節因為長時間握鼠標而泛白,指甲縫裡還嵌著鍵盤的灰。“彆急。”他轉身去茶水間,陶瓷杯碰撞發出清脆的聲響,熱水注入枸杞的瞬間,蒸騰的熱氣裡浮起淡淡的藥香。
林溪接過杯子時,溫熱的觸感順著指尖蔓延到心口,像寒夜裡突然亮起的暖燈。她把臉埋進帶著他體溫的羊毛衫袖子裡,聲音悶悶的:“剛才看後台數據,已經有兩百多個高頻用戶地址被泄露了。社交平台上都炸開了,有人說我們是為了精準營銷,還有人猜是競爭對手買通了技術人員……”
“陳明已經帶著安全組去查植入源頭了,服務器日誌、更新包簽名、運維人員權限記錄,一個都不會漏。”李默蹲下來,視線與她平齊,拇指輕輕擦過她眼下的青黑,“我們分分工:你負責逆向追蹤,把所有潛伏的惡意程序連根拔起,順便給係統加層防火牆;我去對接用戶投訴中心和公關部,該道歉的道歉,該補償的補償。雙管齊下,比一個人硬扛快得多。”
林溪點點頭,突然伸手抱住他的脖子,把腦袋重重靠在他胳膊上。他襯衫上還留著會議室的煙草味,混著淡淡的須後水氣息,是讓她安心的味道。“每次遇到這種事,隻要你在,我就不怕慌了。”她的睫毛蹭過他的頸窩,帶著微濕的涼意。
李默抬手揉了揉她的頭發,像安撫一隻受驚的小獸。“還記得我們第一次創業失敗嗎?”他忽然笑了,“那時候租在城中村的閣樓裡,夏天熱得像蒸籠,你抱著筆記本改代碼,我出去給人修電腦掙房租。有次暴雨衝垮了網線,你硬是用手機熱點撐了三天,把最後一個bug給解決了。”
“那時候你還說,等公司做起來了,要買個帶獨立機房的寫字樓。”林溪也跟著笑,眼角卻泛起濕意,“現在寫字樓有了,麻煩也跟著變大了。”
“麻煩大,說明我們做得夠好,才有人忌憚啊。”李默拿起她桌上的薄荷糖,剝開一顆塞進她嘴裡,清冽的甜味瞬間驅散了些許倦意,“去吧,我的技術總監,該你上場了。”
林溪嚼著糖回到屏幕前,指尖重新落在鍵盤上時,先前的慌亂已經褪去。紅色的代碼流在她眼中漸漸變得溫順,像需要梳理的亂麻。她編寫的清除程序像一把精準的手術刀,沿著惡意程序的藤蔓逆向攀爬,每遇到一個分支節點就自動生成攔截指令。顯示屏右下角的時間數字緩慢跳動,從十一點到十二點,再到淩晨一點,辦公室裡隻剩下鍵盤敲擊聲和窗外連綿的雨聲。
李默的辦公室在走廊另一頭,電話鈴聲此起彼伏。他聽著客服念來的用戶投訴,有憤怒的質問,有焦慮的擔憂,也有冷靜的建議。“補償方案我已經擬好了。”他對著電話那頭的公關總監說,“所有受影響用戶,賬戶自動充值三個月的會員費,另外贈送十張無門檻配送券。明天一早就在官網和APP首頁掛出致歉聲明,要把技術細節說清楚,不用藏著掖著,坦誠比什麼都重要。”
掛掉電話時,牆上的掛鐘正好指向兩點。他端著重新泡好的枸杞茶走進技術部,看到林溪正對著屏幕舉杯,臉上漾著疲憊卻明亮的笑意。“搞定了。”她指著屏幕上最後一行綠色代碼,“不僅清乾淨了,還留了個反向追蹤器,隻要對方再試圖連接服務器,就能鎖定IP地址。”
李默把茶杯放在她手邊,彎腰看她寫的致歉聲明草稿。“這裡要加一句‘我們會補償受影響用戶的配送費’。”他用指尖點了點屏幕,“要讓用戶知道,我們不是在甩鍋,是真的在乎他們的感受。”
林溪修改時,忽然瞥見他放在桌角的水杯——還是三年前公司剛起步時買的馬克杯,杯身上印著的聯盟lo已經磨得模糊。“還記得第一次應對平台抹黑嗎?”她噗嗤笑出聲,“有個競爭對手偽造我們的食品安全報告,你去參加媒體通氣會,緊張得把水杯都碰倒了,水漬在西裝褲上洇出好大一塊,像幅抽象畫。”
李默撓了撓頭,眼底泛起溫柔的笑意。“那時候沒經驗啊,手心裡全是汗。”他握住她敲鍵盤敲得發燙的手,指腹輕輕摩挲著她的指節,“現在不怕了,因為有你在身邊。你守著技術防線,我擋著外部風雨,再大的風浪也能扛過去。”
窗外的雨不知何時停了,東方的天際漸漸泛出魚肚白,像宣紙被淡墨輕輕暈染。第一縷晨光穿過玻璃幕牆,落在兩人交握的手上,鍍上一層柔和的金邊。林溪靠在椅背上伸了個懶腰,骨頭發出一連串輕微的脆響,倦意像潮水般湧來。
李默把辦公室的折疊沙發展開,鋪好備用的薄毯。“眯一會兒吧,天亮還有得忙。”他扶著她躺下,把她的頭輕輕挪到自己腿上,像托著一件稀世珍寶。
林溪很快就睡著了,呼吸均勻而輕柔,長長的睫毛在眼瞼下投出淡淡的陰影。李默拿起毯子,小心翼翼地蓋在她身上,生怕一絲涼風驚擾了她的夢。他低頭看著她疲憊的睡顏,想起創業初期那些擠在閣樓裡的夜晚,她也是這樣靠著他的肩膀打盹,鍵盤上還攤著沒寫完的代碼。
那時候他們一無所有,卻有著對抗整個世界的勇氣。現在公司做大了,麻煩也多了,可那份並肩作戰的默契,那份無論多大風雨都能彼此依靠的篤定,卻比從前更加深厚。
晨光越來越亮,透過百葉窗的縫隙,在地板上投下細長的光斑,像時鐘的指針緩緩移動。遠處傳來第一班地鐵進站的轟鳴聲,城市在沉睡中漸漸蘇醒。李默輕輕撫摸著林溪的頭發,指尖穿過柔軟的發絲,心裡一片安寧。
無論這場風波最終會掀起多大的浪,隻要他們還像這樣守著彼此,就總有撥雲見日的時刻。他低頭在她額頭上印下一個輕柔的吻,像在說給她聽,又像在說給自己聽:“彆怕,有我在。”
沙發上的人動了動,往他懷裡蹭了蹭,嘴角帶著淺淺的笑意,仿佛在夢中聽到了這句承諾。陽光漫過辦公桌,照亮了屏幕上那句尚未發送的致歉聲明,末尾那句“感謝您的信任,我們會用行動證明,這份信任值得被珍視”,在晨光中顯得格外清晰而堅定。