第一章?凌晨三點的慘白熒光

2023年9月15日,凌晨2:17。

杭州未來科技城,海創(chuàng)園23號樓22層,星途金融科技有限公司的整層辦公區(qū),只有項目一部的燈還亮著。慘白的熒光燈透過玻璃隔斷漫出來,在空無一人的走廊里鋪成一片冷硬的光海,風從消防通道的窗戶縫里鉆進來,卷起地上散落的A4紙,發(fā)出嘩啦一聲輕響,在死寂的辦公區(qū)里顯得格外刺耳。

周硯坐在工位上,指尖的鼠標滾輪已經(jīng)滑了整整十七分鐘。

面前的三塊顯示器亮得晃眼,最左側(cè)是農(nóng)商行新一代核心系統(tǒng)的架構(gòu)拓撲圖,紅色的標注線密密麻麻纏在清算模塊上,像一道解不開的血痕;中間的屏幕是代碼倉庫的提交記錄,黑色的代碼一行行往下滾,每一個字符都像針一樣扎進他布滿紅血絲的眼睛里;最右側(cè)的屏幕釘著甲方銀行科技部發(fā)來的上線倒計時通知,加粗的紅色字體明晃晃地寫著:距9月17日正式割接上線,剩余45小時23分鐘。

保溫杯里的美式咖啡早就涼透了,杯壁上結(jié)著一層褐色的咖啡漬,杯口沾著半片干掉的潤喉糖糖紙。桌角堆著三個空了的紅牛易拉罐,罐身被捏得變了形,旁邊還有半盒沒吃完的速凍餃子,是昨天晚上行政幫忙訂的夜宵,餃子皮已經(jīng)硬得像紙板,一口沒動。

他已經(jīng)連續(xù)熬了兩個通宵。

從9月13號甲方敲定最終上線時間開始,整個項目組三十多個人,就被釘在了這層寫字樓里。鍵盤敲擊聲從白天的密集如雨,到后半夜的稀稀拉拉,現(xiàn)在只剩下零星幾聲,混著遠處工位傳來的輕微鼾聲,在密閉的空間里發(fā)酵出一股濃重的疲憊感——速溶咖啡的焦苦味、外賣盒的油污味、密閉空間里的汗味,還有人身上散發(fā)出的、連續(xù)幾天沒洗澡的酸餿味,攪在一起,成了互聯(lián)網(wǎng)職場加班夜最標志性的氣味。

周硯今年32歲,是這個標桿項目的技術(shù)經(jīng)理。

從2021年項目立項開始,整整兩年零八個月,他帶著技術(shù)部的八個人,從需求調(diào)研到架構(gòu)設(shè)計,從代碼開發(fā)到聯(lián)調(diào)測試,幾乎把命鋪在了這個項目上。這是星途科技成立以來拿到的最大一筆訂單,合同額1.2億,占了公司全年營收的32%,更是公司明年沖擊科創(chuàng)板的核心標桿項目。成了,他順理成章升技術(shù)總監(jiān),年薪翻倍,拿到公司的原始股權(quán),剛在杭州買的、每個月一萬八的房貸,還有家里剛懷孕三個月的老婆,都能落個安穩(wěn)。

敗了,他第一個滾蛋。

在金融科技這個圈子里,核心系統(tǒng)項目搞砸了,就等于在行業(yè)里給自己的職業(yè)生涯判了死刑。沒有哪家銀行敢用一個出過重大生產(chǎn)事故的技術(shù)負責人,也沒有哪家公司敢接一個帶著污點的從業(yè)者。

“周、周經(jīng)理……”

怯生生的聲音從工位旁邊傳過來,帶著點不易察覺的哭腔,像一片羽毛輕輕掃過緊繃的弦。周硯猛地回過神,抬頭就看見蘇曉冉站在他的工位旁,懷里抱著一臺14寸的筆記本電腦,指尖把電腦邊緣攥得發(fā)白。

蘇曉冉是今年剛畢業(yè)的應(yīng)屆生,測試部的實習生,進項目組才三個月。臉上還帶著沒褪干凈的學生氣,黑框眼鏡滑到了鼻尖,眼睛紅紅的,眼底下是濃重的青黑,顯然也熬了不止一個通宵。她身上的白色T恤皺巴巴的,領(lǐng)口還沾了一點咖啡漬,整個人像一只被雨淋濕了的幼貓,站在那里,渾身都透著不安。

周硯揉了揉發(fā)脹的太陽穴,聲音啞得厲害:“怎么了小蘇?測試用例都跑完了?”

“不是……”蘇曉冉往前湊了半步,把筆記本電腦放到他的桌角,屏幕往下壓了壓,生怕被別人聽見,聲音壓得極低,“我……我發(fā)現(xiàn)了一個問題,清算模塊的定期結(jié)息邏輯,有個邊界條件沒覆蓋到?!?/p>

周硯的心臟猛地沉了一下,指尖瞬間繃緊。

清算模塊,是整個銀行核心系統(tǒng)的心臟。銀行的本質(zhì),就是賬務(wù)的流轉(zhuǎn)與核對,一分一厘都不能差。清算邏輯出問題,就等于人的心臟跳錯了節(jié)拍,輕則賬務(wù)不平,重則資金流失,是能直接驚動銀保監(jiān)會的重大生產(chǎn)事故。

他把筆記本拉到自己面前,指尖點開了蘇曉冉整理的測試報告。復現(xiàn)步驟、測試數(shù)據(jù)、報錯截圖、日志記錄,整整齊齊,一看就是對著這個問題啃了很久。越往下看,周硯后背的冷汗就越冒越多,順著脊椎往下滑,把貼在身上的襯衫浸得冰涼。

不是小問題。

是底層邏輯的致命缺陷。

趙凱三個月前私自簡化了結(jié)息邏輯,把跨周期大額定期存款的結(jié)息場景給砍掉了。按照現(xiàn)在的代碼邏輯,一旦遇到存期跨了利率調(diào)整節(jié)點、且本金超過500萬的大額定期存款,結(jié)息時就會出現(xiàn)單邊賬——借方記賬成功,貸方記賬失敗,資金平白無故消失,而且系統(tǒng)無法自動沖正,只能后臺手動調(diào)賬。

更致命的是,這個邏輯缺陷,在常規(guī)的小額測試用例里根本復現(xiàn)不出來。只有單筆本金超過500萬、且存期跨了央行利率調(diào)整窗口的極端場景,才會觸發(fā)。而蘇曉冉,是昨天晚上整理歷史數(shù)據(jù)時,偶然翻到了農(nóng)商行有127筆符合這個條件的大額定期存單,才抱著試一試的心態(tài)搭了測試環(huán)境,結(jié)果一測一個準。

“劉姐知道這個事嗎?”周硯抬頭看向蘇曉冉,聲音里帶著他自己都沒察覺到的顫抖。

劉梅,測試部的負責人,也是蘇曉冉的直屬領(lǐng)導,今年40歲,在星途科技干了八年,是公司里最資深的測試工程師。

蘇曉冉的眼圈瞬間更紅了,嘴唇抿得緊緊的,半天才小聲說:“我昨天下午就跟劉姐說了……劉姐說,現(xiàn)在是上線前的關(guān)鍵期,這種極端場景,一萬筆交易里都碰不到一筆,讓我先記下來,上線后再迭代修復,還說……還說讓我別給項目添亂,不然實習期過不了。”

周硯閉了閉眼,腦子里嗡嗡作響。

他早就該想到的。

三個月前,開發(fā)組的組長跟他提過一句,說產(chǎn)品部那邊讓改清算模塊的結(jié)息邏輯,縮短清算時長。當時他正在忙架構(gòu)評審,隨口問了一句有沒有正式的需求變更單,開發(fā)組長說趙凱說是甲方口頭要求的,回頭補流程。他那時候被評審會、甲方的需求變更、還有張總催進度的電話搞得焦頭爛額,轉(zhuǎn)頭就把這事給忘了。

他以為趙凱會補流程,以為測試部會覆蓋全場景,以為就算有什么小問題,聯(lián)調(diào)階段也能測出來。

可他忘了,在這個所有人都被工期和KPI綁在懸崖邊的項目里,每個人都在選擇性地看不見那些不該看見的東西。每個人都在心里抱著一絲僥幸:不會那么巧的,不會出事的,就算出事,也有別人擔著。

他猛地站起身,椅子腿在地板上劃出刺耳的聲響。旁邊工位幾個趴著睡覺的開發(fā)被驚醒了,迷迷糊糊地抬頭看他,他沒理會,攥著拳頭,大步往產(chǎn)品區(qū)走。

趙凱正趴在工位上睡覺,臉上蓋著一件黑色的沖鋒衣,整個人縮在辦公椅里,呼嚕聲隔著幾米都能聽見。他是這個項目的產(chǎn)品經(jīng)理,今年28歲,是部門總監(jiān)張敬山一手提拔起來的紅人。嘴甜,會來事,能把甲方哄得團團轉(zhuǎn),也能拿著雞毛當令箭,把技術(shù)部和測試部拿捏得死死的。整個項目組,沒人不煩他,可沒人敢得罪他。

周硯一把掀開了他臉上的沖鋒衣。

趙凱猛地驚醒,一臉的起床氣,揉著眼睛罵道:“周硯你有病???老子剛瞇了十分鐘,你催命呢?”

“我有???”周硯把手里的筆記本狠狠懟到他面前,屏幕上是那份bug報告,還有代碼提交記錄,“趙凱,你告訴我,三個月前,清算模塊的結(jié)息邏輯,是你讓開發(fā)改的?需求變更單呢?架構(gòu)評審記錄呢?甲方的蓋章確認函呢?你拿出來給我看看!”

趙凱的臉色瞬間白了,眼神下意識地躲閃了一下,隨即又恢復了那副吊兒郎當?shù)臉幼?,伸手把筆記本推開,滿不在乎地說:“嗨,我當是什么天大的事呢,就這個啊。甲方李總那邊口頭要求的,說原來的清算邏輯太復雜,季度結(jié)息的時候要跑四個多小時,他們網(wǎng)點的人要通宵加班,讓我們優(yōu)化一下,縮短時長。我就跟開發(fā)打了個招呼,簡化了點邏輯,怎么了?”

“怎么了?”周硯氣得笑了,聲音壓得極低,卻帶著壓不住的火氣,“現(xiàn)在出致命bug了!跨周期大額定期結(jié)息會出單邊賬,賬務(wù)直接對不上!趙凱,你干這行五年了,你知道銀行賬務(wù)不平意味著什么嗎?是重大生產(chǎn)事故!銀保監(jiān)會直接介入,項目尾款全扣,我們所有人都要擔責任!”

“哪有那么危言聳聽?”趙凱的聲音虛了一點,卻依舊硬撐著,伸手點了點屏幕,“一個實習生測出來的極端場景,你也當真?整個農(nóng)商行,符合這個條件的存單能有多少?一百多筆?幾十萬筆交易里才一百多筆,就算真的觸發(fā)了,我們后臺手動調(diào)賬不就行了?上線后偷偷把邏輯改回來,神不知鬼不覺?!?/p>

他往前湊了湊,拍了拍周硯的肩膀,語氣里帶著點拿捏的意味:“周硯,咱們倆是一條船上的人。這個項目成了,你升技術(shù)總監(jiān),我升產(chǎn)品總監(jiān),大家都有獎金,都有股權(quán)。項目黃了,你我第一個滾蛋?,F(xiàn)在還有不到48小時就要上線了,你現(xiàn)在把這個事捅出去,整個項目直接停擺,工期延誤,甲方追責,張總第一個拿你開刀。你忘了去年的城商行項目,是誰在張總面前幫你扛的鍋了?”

周硯的喉嚨像是被什么東西堵住了。

去年的城商行項目,他因為架構(gòu)設(shè)計的疏漏,上線后出現(xiàn)了批量開戶失敗的問題,雖然很快就修復了,但是甲方投訴到了公司總部。是趙凱拿著一堆甲方臨時變更需求的記錄,在張敬山面前扛下了大部分責任,說是甲方頻繁改需求導致的,才讓他只落了個口頭警告,沒影響績效考核,也沒在他的履歷上留下污點。

這份人情,他一直欠著。也是趙凱一直以來,拿捏他最有效的籌碼。

“這個事,你必須給我補全所有的變更流程,甲方的確認函,必須要有。”周硯的聲音軟了下來,他自己都能聽見語氣里的妥協(xié),“不然,真出了事,我擔不起這個責任?!?/p>

趙凱的眼睛瞬間亮了,立刻拍著胸脯說:“放心!包在我身上!甲方那邊我下午就去對接,確認函肯定給你補回來!絕對不會讓你擔責任!”

周硯沒再說話,轉(zhuǎn)身走回了自己的工位。

他心里清楚,趙凱根本拿不到甲方的確認函。那個所謂的“甲方口頭要求”,十有八九是他自己編的——農(nóng)商行的科技部總經(jīng)理李建國,為了趕在退休前做出政績,給這個項目定了幾乎不可能完成的工期,趙凱為了討好甲方,為了讓項目按時上線拿到獎金,私自簡化了核心邏輯,卻連最基本的風險評估都沒做。

可他還是選擇了妥協(xié)。

他坐回工位,看著窗外。天已經(jīng)蒙蒙亮了,淡青色的天光從寫字樓的玻璃幕墻外透進來,遠處的未來科技城,一棟棟鋼鐵樓宇在晨霧里露出輪廓,像一片沉默的森林。風從窗戶縫里吹進來,帶著初秋的涼意,吹在他的臉上,他卻覺得渾身發(fā)燙,心里像壓著一塊燒紅的烙鐵。

蘇曉冉還站在他的工位旁邊,眼巴巴地看著他,眼里帶著期待,也帶著不安。

周硯看著這個剛畢業(yè)的小姑娘,想起了十年前的自己。那時候他剛從大學畢業(yè),進了行業(yè)里頂尖的金融科技公司,眼里容不得一點沙子。發(fā)現(xiàn)一個bug,就算通宵三天三夜也要改完;發(fā)現(xiàn)需求不合規(guī),就算被領(lǐng)導罵、被同事排擠,也要堅持走完整的評審流程;那時候他覺得,做技術(shù)的,底線就是生命線,一分一毫都不能讓。

可什么時候,他變成了現(xiàn)在這個樣子?

他閉了閉眼,再睜開時,語氣里帶著連自己都覺得陌生的疲憊和敷衍:“小蘇,這個問題,你先記錄到待修復清單里,標注為低優(yōu)先級。上線后的第一個迭代,我們立刻修復?,F(xiàn)在,先按原計劃推進上線準備工作?!?/p>

蘇曉冉的眼睛一下子紅了,聲音里帶著哭腔:“周經(jīng)理,這個bug真的很嚴重!要是上線了,批量結(jié)息的時候觸發(fā)了,怎么辦?到時候就晚了!”

“不會出事的?!敝艹幈荛_了她的眼睛,低頭看向自己的電腦屏幕,指尖無意識地摩挲著鼠標,“觸發(fā)概率極低,就算真的出了問題,我們有應(yīng)急預(yù)案,可以手動處理。你別再說了,去忙吧。”

蘇曉冉站在那里,愣了很久,最終還是低著頭,抱著筆記本走了。她的背影很單薄,帶著滿滿的委屈和不解,一步一步,走得很慢。

周硯看著她的背影,拿起桌上的涼咖啡,狠狠灌了一大口??酀囊后w滑過喉嚨,他卻嘗不出一點味道,只覺得心里有什么東西,一點點碎掉了。

他以為,只要假裝沒看見,只要把這個問題藏起來,只要項目按時上線,他就能躲過這一劫。他以為,這是別人犯的錯,他就算睜一只眼閉一只眼,也不用承擔什么代價。他以為,他能從這場所有人都心照不宣的敷衍里,全身而退。

可他不知道,錯誤就像一顆埋在土里的毒種子。從他選擇沉默的那一刻起,這顆種子就已經(jīng)在他看不見的地方,扎了根,發(fā)了芽,只等著某個時刻,破土而出,把所有人都拖進深淵。

他更不知道,在這個偌大的辦公區(qū)里,不止他一個人,在假裝看不見那些正在滋生的錯誤。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
禁止轉(zhuǎn)載,如需轉(zhuǎn)載請通過簡信或評論聯(lián)系作者。

相關(guān)閱讀更多精彩內(nèi)容

  • 新元三十七年的秋,似乎比往年更冷一些。清晨七點半,林硯站在明遠律師事務(wù)所寫字樓的樓下,仰頭望著這棟高達二十層的玻璃...
    北風啊閱讀 114評論 0 1
  • 凌晨三點,窗外的暴雨砸在落地窗上,噼里啪啦的,像有人在外面用指甲刮玻璃。 我叫陳嶼,今年32歲,是個做了十年網(wǎng)絡(luò)安...
    備懶貓閱讀 47評論 0 5
  • 林晚星第三次核對完報表時,辦公室的中央空調(diào)發(fā)出了輕微的嗡鳴。她抬頭看了眼墻上的電子鐘,02:57,熒光綠的數(shù)字在黑...
    那年風動薔薇閱讀 138評論 0 0
  • 凌晨三點,林深又醒了。 不是噩夢,不是尿意,就是醒了。像體內(nèi)有一個鬧鐘,每天準時把他從睡眠里拎出來,扔進漆黑的臥室...
    失眠者林深閱讀 48評論 0 3
  • 林硯走到陳默工位前,看著他面前攤開的文件 —— 那是一份多年前的合同糾紛案卷宗,紙頁邊緣已經(jīng)泛黃,顯然被反復翻閱過...
    北風啊閱讀 77評論 0 2

友情鏈接更多精彩內(nèi)容