第4章
陸淮的咖啡,簡心的毒藥,競標(biāo)會(huì)上的修羅場------------------------------------------。,但這次換了大會(huì)議室,長桌拼成U形,甲方的陣仗比上次大了一圈。技術(shù)評(píng)審增加到五個(gè)人,采購部來了三個(gè),上次躲在角落抱電腦的那個(gè)年輕人這次坐到了主位后排——有人介紹說是分管副總的技術(shù)顧問。:宋嶼。。八點(diǎn)四十,會(huì)議室空了一半。她選了靠窗的位子坐下,把方案文件展開攤在面前,第十二頁折了角,核心架構(gòu)那張圖她昨天又調(diào)過一版。,陸淮進(jìn)來了。。余光里看見他走到右側(cè)第一排,落座,放下公文包。然后——他沒坐穩(wěn)就又站起來了。。,但心跳加了半拍?!昂喛偂!薄j懟凑驹谒肋?,右手端著一杯紙杯咖啡,左手還拎著一杯。“七樓自助吧的美式,喝一杯?”他把左手那杯往她面前推了推。。熱的,杯壁上凝著水霧,紙杯套都沒拆?!@人什么意思?競標(biāo)會(huì)開場前給對(duì)手遞咖啡?——美式。他不知道她能喝美式,還是故意選的美式?上次餐廳里她喝的是拿鐵。——壞了,她得演。
“謝謝陸總?!焙喰男α艘幌?,右手抬起來,但沒有直接去拿,而是在桌面上摸索了一下,指尖碰到杯身,停了半秒才握住。
該死。
紙杯太燙了。
她的手縮了一下,動(dòng)作不大。
“燙嗎?”陸淮問。
“有點(diǎn)?!焙喰乃砷_手,“我不太方便拿紙杯,容易灑?!?br>這是“視障人士”的合理反應(yīng)。看不清杯子的位置和傾斜角度,拿紙杯確實(shí)比拿馬克杯難控制。
陸淮看了她一眼,把那杯咖啡端起來,走到角落的飲水臺(tái),拿了一個(gè)會(huì)議室的白瓷杯,把咖啡倒進(jìn)去,再端回來放在她面前。
整個(gè)過程安安靜靜,沒多說一個(gè)字。
簡心的手指碰到瓷杯把手。溫?zé)幔粻C了。
“謝謝?!?br>陸淮點(diǎn)了下頭,轉(zhuǎn)身回了自己的位子。
簡心低頭對(duì)著那杯咖啡發(fā)了三秒鐘的呆。
她忽然意識(shí)到一個(gè)問題——她剛才沒喝。
也不能喝。
不是因?yàn)榕孪露尽獩]那么離譜——而是因?yàn)樗F(xiàn)在和陸淮的關(guān)系太微妙了。上次電話里她泄了底,匿名信封和紙條的來源不明,加上今天的競標(biāo)是實(shí)打?qū)嵉膶?duì)手局,這杯咖啡不管是善意還是試探,她接了就欠了個(gè)人情。
在牌桌上,欠人情是大忌。
簡心把瓷杯推到文件旁邊,沒碰。
九點(diǎn)整,開場。
這次的流程比上次緊湊。甲方縮減了每家的陳述時(shí)間,從二十分鐘壓到十五分鐘,但評(píng)審**環(huán)節(jié)拉長了。
簡心抽到第一個(gè)。
她上臺(tái)的時(shí)候余光掃了一眼座位表——宋嶼坐在評(píng)審席最右邊,電腦打開著,屏幕朝自己。
PPT翻開,第一頁標(biāo)題沒變,還是那行“基于定制化映射的多系統(tǒng)融合架構(gòu)方案”。但底下加了一行副標(biāo)題:“面向復(fù)雜存量系統(tǒng)的深度適配實(shí)踐”。
這行副標(biāo)題是她昨天加的。算是給自己挖了個(gè)坑又填上了——既然已經(jīng)在電話里把“和原始開發(fā)團(tuán)隊(duì)合作”這張牌亮了一角,不如正面打出來,搶在陸淮之前把這個(gè)優(yōu)勢(shì)釘死。
“上次匯報(bào)中我提到了定制化映射的技術(shù)路線,這次重點(diǎn)補(bǔ)充實(shí)施層面的細(xì)節(jié)?!焙喰姆降诹?,“我們團(tuán)隊(duì)在2021年參與過錦城范圍內(nèi)兩個(gè)同類型**信息系統(tǒng)的適配工作,其中一套系統(tǒng)與錦城國投現(xiàn)有的七號(hào)系統(tǒng)使用相同的底層數(shù)據(jù)庫架構(gòu)?!?br>她沒說“我們和原始開發(fā)團(tuán)隊(duì)合作過”這種話——太直白,會(huì)讓甲方覺得她在暗示有內(nèi)部關(guān)系。她換了個(gè)說法,只提“相同架構(gòu)”,讓甲方自己去想。
評(píng)審席里宋嶼的手在鍵盤上動(dòng)了一下。
簡心看見了。
她繼續(xù)講。核心參數(shù)那一頁她過得很快,4.5:5.5的權(quán)重比沒有變,但她在旁邊加了一組回測(cè)數(shù)據(jù),用歷史項(xiàng)目的真實(shí)運(yùn)維數(shù)據(jù)做了對(duì)比。這些數(shù)據(jù)對(duì)手拿不到,因?yàn)閬碜运约簣?zhí)行過的項(xiàng)目。
十三分半,提前收尾。
評(píng)審組問了五個(gè)問題。前三個(gè)是技術(shù)細(xì)節(jié),**個(gè)問工期彈性,第五個(gè)問報(bào)價(jià)構(gòu)成。
簡心答到第五個(gè)的時(shí)候故意留了一個(gè)模糊地帶——她沒有拆分中間件的采購成本,只給了總價(jià)。
這是個(gè)陷阱。
如果陸淮上臺(tái)后把自研中間件的成本單獨(dú)拎出來跟甲方算對(duì)比賬,甲方就會(huì)反過來問她“為什么你沒拆”。到時(shí)候她再補(bǔ)充說明——第三方中間件采購有框架協(xié)議折扣,單獨(dú)列出來反而讓報(bào)價(jià)失真——這個(gè)解釋反而比主動(dòng)交代更有說服力。
回到座位上,簡心喝了口那杯已經(jīng)涼了的美式。
不好喝。七樓自助吧的豆子太差了。
陸淮第二個(gè)上臺(tái)。
他今天穿的是藏藍(lán)色西裝。簡心注意到他沒打領(lǐng)帶,領(lǐng)口散開一顆扣子。上次競標(biāo)會(huì)他打了領(lǐng)帶,這次沒打——放松了,還是故意釋放某種“溫和無害”的信號(hào)?
簡心覺得自己想多了。
PPT亮出來的第一秒,她的后背就繃了。
標(biāo)題和上次不一樣了。上次叫“智能化改造全域融合方案:以安全驅(qū)動(dòng)業(yè)務(wù)的新范式”,這次改成了——
“錦城國投智能化改造解決方案:面向業(yè)務(wù)連續(xù)性的安全一體化架構(gòu)”。
面向業(yè)務(wù)連續(xù)性。
這五個(gè)字比上次那個(gè)“安全驅(qū)動(dòng)業(yè)務(wù)”精準(zhǔn)了不止一個(gè)檔次?!皹I(yè)務(wù)連續(xù)性”是甲方年報(bào)里出現(xiàn)頻率第二高的***,僅次于“數(shù)據(jù)安全”。上次他的方案側(cè)重安全層面,這次直接把安全和業(yè)務(wù)連續(xù)性綁在一起——
他改過方案了。
而且改的方向剛好卡在她方案的軟肋上。
簡心的方案強(qiáng)項(xiàng)在“兼容性”和“深度適配”,弱項(xiàng)在哪里?在業(yè)務(wù)連續(xù)性保障。她的定制化映射方案雖然三年綜合維護(hù)成本低,但有一個(gè)繞不開的問題——切換期間,業(yè)務(wù)系統(tǒng)需要停機(jī)做數(shù)據(jù)遷移。停多久?她的方案里寫的是“單系統(tǒng)切換窗口72小時(shí)”。
七十二小時(shí)。三天。
對(duì)**單位來說,任何一套核心系統(tǒng)停三天,都要走一套極其復(fù)雜的審批和應(yīng)急流程。
陸淮翻到第五頁的時(shí)候,指了一下中間一行數(shù)字。
“我們的方案采用熱切換模式,依托橋接引擎的雙向同步能力,單系統(tǒng)切換窗口可以壓縮到八小時(shí)。業(yè)務(wù)側(cè)無感知,用戶端零中斷?!?br>八小時(shí)。
簡心的手在桌面下扣了一下膝蓋。
坐在評(píng)審席中間的一個(gè)技術(shù)評(píng)審扭頭跟旁邊的人說了句什么,聲音很小,簡心沒聽到。
陸淮繼續(xù)講。他的語速還是不快不慢,每一頁的信息量控制得很精確——不堆數(shù)據(jù),不賣概念,每一組數(shù)據(jù)后面跟一句落地場景。他講到自研橋接引擎的時(shí)候花了三分鐘,把去年三個(gè)**項(xiàng)目的交付數(shù)據(jù)拿出來,逐個(gè)對(duì)比。
“故障率為零”這句話他又說了一遍,但這次加了個(gè)前綴——“截至今日?!?br>評(píng)審席上宋嶼抬了一下頭。
陸淮的目光在宋嶼臉上停了不到一秒就移開了。
簡心捕捉到了這個(gè)細(xì)節(jié)。她把宋嶼的名字在心里又劃了一道線——這個(gè)人不是打醬油的。
陸淮講了十四分鐘,比她還少一分半。
評(píng)審組問了四個(gè)問題。第三個(gè)問題是關(guān)于中間件成本的——
果然來了。
“陸總,你們方案中橋接引擎作為自研產(chǎn)品,成本結(jié)構(gòu)能否拆分一下?我們想和市面上第三方中間件做一個(gè)橫向?qū)Ρ?。?br>陸淮說:“可以。橋接引擎的單項(xiàng)目授權(quán)費(fèi)用是一百二十萬,含三年運(yùn)維支持。市面上同等級(jí)第三方中間件的采購加運(yùn)維,三年周期大約在九十萬到一百一十萬之間。我們貴了大約百分之十到三十。”
他沒回避。一百二十萬這個(gè)數(shù)字他報(bào)得很干脆。
然后他補(bǔ)了一句:“但第三方中間件不支持熱切換,加裝熱切換模塊需要額外開發(fā),費(fèi)用不低于八十萬?!?br>評(píng)審的人點(diǎn)了下頭,在本子上記了一筆。
簡心做了個(gè)快速的心算——她的第三方中間件加熱切換改造,總成本最少一百七十萬。陸淮的自研方案一百二十萬全包。
差了五十萬。
操。
**個(gè)問題是個(gè)商務(wù)問題,問付款節(jié)點(diǎn),陸淮三句話答完。
他回座位的時(shí)候路過簡心,沒看她,沒說話,只是把桌上自己那杯沒喝完的美式拿起來喝了一口。
簡心看著他的背影,腦子在高速運(yùn)轉(zhuǎn)。
陸淮這次方案改動(dòng)很大,“面向業(yè)務(wù)連續(xù)性”這個(gè)方向精準(zhǔn)打到了她的短板。她不信這是巧合——上次電話里她提到和甲方存量系統(tǒng)開發(fā)團(tuán)隊(duì)的合作關(guān)系,他今天就避開兼容性這個(gè)戰(zhàn)場,轉(zhuǎn)向攻擊她的停機(jī)時(shí)間。
這人是在用她給的信息倒推她方案的結(jié)構(gòu),然后找薄弱環(huán)節(jié)下刀。
高明。
但也不是沒有破綻。
簡心低頭看自己的筆記本。她剛才在陸淮陳述的時(shí)候記了六個(gè)要點(diǎn),**個(gè)打了星號(hào)——“橋接引擎雙向同步能力”。
熱切換的核心在于新舊系統(tǒng)之間的數(shù)據(jù)實(shí)時(shí)同步。陸淮說“零中斷”,但他的PPT上那張架構(gòu)圖里,同步鏈路畫的是單鏈路。
單鏈路零中斷?
簡心翻了一下自己方案文件的附錄。她在附錄C里放過一組測(cè)試數(shù)據(jù),是針對(duì)錦城國投存量系統(tǒng)的IO負(fù)載模擬——七號(hào)系統(tǒng)高峰期的數(shù)據(jù)吞吐量是每秒一萬兩千條。單鏈路同步在這個(gè)量級(jí)下的延遲會(huì)超過兩百毫秒。
兩百毫秒夠不夠“零中斷”?看定義。如果是業(yè)務(wù)層面的感知閾值,兩百毫秒的確用戶無感。但如果是交易類數(shù)據(jù)——錦城國投下屬有商業(yè)地產(chǎn)的租金結(jié)算系統(tǒng)——兩百毫秒的同步延遲可能造成數(shù)據(jù)版本沖突。
這個(gè)點(diǎn),評(píng)審組未必會(huì)問。
但她可以讓他們問。
四家公司全部陳述完之后,甲方給了一個(gè)自由**環(huán)節(jié)。
“各參標(biāo)單位如果對(duì)其他公司的方案有技術(shù)層面的交流或疑問,可以在這個(gè)環(huán)節(jié)提出?!敝鞒秩苏f完看了一圈。
沒人動(dòng)。
競標(biāo)會(huì)上公開質(zhì)疑對(duì)手方案,這種事情不是不能做,但得掂量。做得好叫專業(yè)探討,做不好叫惡意攻擊,甲方觀感會(huì)很差。
簡心舉了手。
“我有一個(gè)技術(shù)問題,想請(qǐng)教一下淮遠(yuǎn)科技?!?br>會(huì)議室里的空氣緊了一分。
陸淮轉(zhuǎn)頭看她,表情平靜。
“請(qǐng)講?!?br>簡心沒站起來,坐在位子上,手指在文件上點(diǎn)了兩下。
“陸總方案里提到橋接引擎支持熱切換,單系統(tǒng)切換窗口八小時(shí),業(yè)務(wù)零中斷。我想了解一下,同步鏈路的冗余設(shè)計(jì)是什么方案?”
這個(gè)問題問得極其克制。
她沒有說“你的同步鏈路是單鏈路,有風(fēng)險(xiǎn)”。她問的是“冗余設(shè)計(jì)”,把判斷權(quán)交給陸淮自己回答。如果他的方案確實(shí)有冗余設(shè)計(jì),那她這個(gè)問題只是常規(guī)技術(shù)交流。如果沒有——那評(píng)審會(huì)自己琢磨。
陸淮看了她兩秒。
“橋接引擎默認(rèn)部署雙活鏈路,主備自動(dòng)切換,RTO小于五秒。”
簡心的睫毛顫了一下。
雙活鏈路。他的PPT架構(gòu)圖上明明畫的是單鏈路。
兩種可能。第一,PPT畫簡化了,實(shí)際方案是雙活。第二,他剛才現(xiàn)場補(bǔ)的。
不管是哪種,她沒法再追下去了。再追就變成質(zhì)疑對(duì)手誠信,在甲方面前撕破臉,不值得。
“明白了,謝謝陸總。”簡心笑了一下。
評(píng)審組的宋嶼在電腦上打了一行字。簡心看不到內(nèi)容,但她注意到宋嶼打完字之后,目光從陸淮身上移到了她身上,停了大概一秒。
這一秒她讀不出任何含義。
會(huì)后散場,簡心沒有第一時(shí)間離開。她在七樓的洗手間里站了五分鐘。
面前是整面墻的鏡子,燈光白得發(fā)冷。她洗了把手,擦干,看著鏡子里的自己。
妝還在,口紅沒掉色,眼底的倦色被粉底蓋住了,整個(gè)人看上去還是那個(gè)走進(jìn)會(huì)議室時(shí)雷打不動(dòng)的簡總。
但她知道自己剛才在那個(gè)**環(huán)節(jié)手心出了汗。
不是因?yàn)榫o張,是因?yàn)殛懟吹姆磻?yīng)太快了。
雙活鏈路。這個(gè)回答要么是他方案里本來就有、只是PPT沒體現(xiàn),要么是他在三秒鐘之內(nèi)判斷出她在攻擊什么、立刻給出了封堵方案。
不管是哪種,她都沒占到便宜。
洗手間的門被推開,進(jìn)來一個(gè)甲方的女員工,二十出頭的樣子,看見簡心點(diǎn)了個(gè)頭,進(jìn)了隔間。
簡心把水龍頭關(guān)了,對(duì)著鏡子補(bǔ)了一下口紅。
手機(jī)在口袋里震了一下。她掏出來看——不是微信,是短信。
一個(gè)陌生號(hào)碼,內(nèi)容只有一行字:
“雙活鏈路是臨時(shí)加的?!?br>簡心拿著手機(jī)的手沒動(dòng)。
她退出短信界面,看了一眼號(hào)碼。136開頭,本地號(hào)段,沒有歸屬信息。
誰發(fā)的?
甲方內(nèi)部的人?第三家或**家競標(biāo)公司的人?還是別的什么人?
她沒有回復(fù),把***了圖,存進(jìn)了一個(gè)加密相冊(cè)。
隔間門開了,那個(gè)女員工出來洗手。簡心收起手機(jī),走了。
回到公司已經(jīng)下午一點(diǎn)半。簡心沒去食堂,辦公室里啃了半個(gè)三明治就打開電腦。
她先查了那個(gè)136號(hào)碼——公開渠道查不到任何登記信息,可能是預(yù)付費(fèi)卡。
然后她把今天競標(biāo)會(huì)的過程復(fù)盤了一遍,逐條記錄陸淮方案的變化點(diǎn),和上次做了對(duì)照。
兩次方案之間的差異指向一個(gè)明確的方向——他在快速迭代。第一次競標(biāo)他展示的是基礎(chǔ)框架,第二次把框架填實(shí)了。而且填的方向每一個(gè)都踩在她的軟肋上。
這不是正常的方案迭代節(jié)奏。正常投標(biāo),方案在遞交之后小修可以,大改意味著前期準(zhǔn)備不充分。但陸淮的改動(dòng)不是補(bǔ)漏洞,是換打法。
他第一次是在探路。
第二次才是真的出拳。
簡心把三明治的最后一口塞進(jìn)嘴里,擰開礦泉水灌了兩口。
手機(jī)屏幕亮了。
陸淮的微信。
簡心嚼東西的動(dòng)作慢了一拍。她伸手拿過手機(jī),點(diǎn)開。
陸淮:今天會(huì)上有人問了個(gè)技術(shù)問題,角度很專業(yè)。
簡心看著這句話,有一種很復(fù)雜的感受。這人在夸她。但這種夸法——“有人問了個(gè)技術(shù)問題”——他沒有說“你問了個(gè)技術(shù)問題”。
他在用第三人稱。
距離感拉得很準(zhǔn)。
簡心沒有接這個(gè)話題。她切換到另一個(gè)身份——那個(gè)眼睛不好、需要關(guān)心的“簡心”。
她打字:我今天也有一個(gè)競標(biāo),好累。對(duì)手太強(qiáng)了,我感覺我們方案被針對(duì)了。
發(fā)完之后她等了二十秒。
陸淮回:被針對(duì)不一定是壞事。說明對(duì)方研究過你,研究你才會(huì)針對(duì)你,針對(duì)你說明你值得被認(rèn)真對(duì)待。
簡心握著手機(jī)沒動(dòng)。
這段話說得滴水不漏。放在任何一個(gè)職場社交場景里都是得體的鼓勵(lì)。但她反復(fù)看了兩遍,總覺得多了點(diǎn)什么。
“說明對(duì)方研究過你?!?br>這句話如果換個(gè)語境——比如兩個(gè)人面對(duì)面坐著,他看著她的眼睛說這句話——那意思就完全不一樣了。
她又看了一遍。
“研究你才會(huì)針對(duì)你?!?br>“針對(duì)你說明你值得被認(rèn)真對(duì)待?!?br>簡心想了一分鐘,打了四個(gè)字:那你呢?
發(fā)出去了。
陸淮回得快:我什么?
簡心:你會(huì)認(rèn)真對(duì)待一個(gè)值得被研究的對(duì)手嗎?
對(duì)話框里的狀態(tài)顯示“對(duì)方正在輸入”,跳了好幾秒。
然后消息彈出來。
陸淮:我不會(huì)把值得被研究的人只當(dāng)對(duì)手。
簡心盯著這句話的時(shí)間超過了她今天讀過的任何一份文件。
她沒回。
不知道怎么回。
放下手機(jī),打開方案文件繼續(xù)改。改了二十分鐘,存了檔,伸了個(gè)懶腰。拿起手機(jī)準(zhǔn)備查看老趙發(fā)來的郵件。
屏幕亮起來的瞬間,她的手停了。
通知欄里有一條系統(tǒng)提示,很短。
“定位服務(wù)已開啟——微信(持續(xù))。”
簡心的手指在屏幕上方懸著,兩秒沒動(dòng)。
她點(diǎn)進(jìn)去,翻到隱私設(shè)置——定位服務(wù)——微信。
顯示“始終”。
她一直設(shè)的是“使用期間”。
什么時(shí)候被改成“始終”的?
簡心退出設(shè)置,打開微信的權(quán)限記錄。最近一次定位權(quán)限變更的時(shí)間是——
今天上午八點(diǎn)五十四分。
競標(biāo)會(huì)開場前六分鐘。
她在那個(gè)時(shí)間段在做什么?陸淮給她到咖啡,她伸手去接,手被燙了一下,縮回來。陸淮拿走紙杯去倒瓷杯。她的手機(jī)放在桌面上,屏幕朝上。
那個(gè)時(shí)間段,她的注意力——不在手機(jī)上。
簡心把手機(jī)翻過來,看著背面。沒有異常。再翻回來,鎖屏,解鎖,反復(fù)檢查了一遍通知設(shè)置和**應(yīng)用。
除了定位權(quán)限被改過之外,沒有其他異常。
她把微信的定位改回“使用期間”,然后關(guān)掉所有**應(yīng)用,重啟了手機(jī)。
重啟完成后她坐在椅子上,盯著黑下去又亮起來的屏幕。
腦子里有三條線在同時(shí)跑。
匿名信封。紙條。136的短信。定位權(quán)限。
這些事情可以是同一個(gè)人做的,也可以是不同的人。
但不管是誰,有一個(gè)事實(shí)她不得不面對(duì)——她被人摸到了牌桌底下的手。
簡心拉開抽屜,把那張白色便簽紙拿出來又看了一遍。
“你的眼睛,什么時(shí)候方便,讓我也看看?”
她忽然覺得這句話多了一層意思。
不是“讓我看看你的眼睛”。
是“讓我看看——你到底看不看得見”。
簡心把便簽紙放回抽屜,鎖上。拿起手機(jī),點(diǎn)進(jìn)陸淮的對(duì)話框,看著那句“我不會(huì)把值得被研究的人只當(dāng)對(duì)手”。
她打了一行字。
“陸總,你今天上午碰過我手機(jī)嗎?”
然后她看著這行字,一個(gè)字一個(gè)字地**。
跟上次一樣,刪得干干凈凈。
她把手機(jī)扣在桌上,椅子轉(zhuǎn)了個(gè)方向,面對(duì)窗戶。
樓下的車流照常走,太陽往西移了半個(gè)手掌的距離。
簡心閉上眼睛。
這場牌局比她預(yù)想的復(fù)雜。她一開始以為自己在釣魚,現(xiàn)在越來越不確定魚竿在誰手里。
手機(jī)在桌上又震了一下。
她沒翻。
過了三十秒,還是翻了。
媽:心心,王姨的侄女認(rèn)識(shí)一個(gè)眼科專家,要不要幫你介紹?
簡心差點(diǎn)把手機(jī)摔了。
她深吸一口氣,回了四個(gè)字:不用,謝謝。
然后想了想,又加了一句:媽,我眼睛真的沒事。
發(fā)完她自己笑了一下。
眼睛沒事。
對(duì),她眼睛好得很。
好到能在競標(biāo)會(huì)上一個(gè)字不漏地看完陸淮的PPT,好到能隔著兩米遠(yuǎn)看見宋嶼屏幕上的字號(hào)大小,好到能在洗手間的鏡子里發(fā)現(xiàn)自己嘴角有一絲三明治的碎屑。
但她不能讓任何人知道她看得見。
尤其不能讓陸淮知道。
或者——已經(jīng)來不及了。
簡心把手機(jī)鎖屏,放在桌角,離自己遠(yuǎn)一點(diǎn)的地方。
她重新打開電腦,調(diào)出競標(biāo)方案文件。光標(biāo)停在第十五頁的成本測(cè)算表上,閃了一會(huì)兒都沒動(dòng)。
腦子里全是那句話。
“我不會(huì)把值得被研究的人只當(dāng)對(duì)手?!?br>那你想把我當(dāng)什么?
簡心刪掉了腦子里這個(gè)問題。
就像刪掉那些打了又刪的微信消息一樣。
“謝謝陸總?!焙喰男α艘幌?,右手抬起來,但沒有直接去拿,而是在桌面上摸索了一下,指尖碰到杯身,停了半秒才握住。
該死。
紙杯太燙了。
她的手縮了一下,動(dòng)作不大。
“燙嗎?”陸淮問。
“有點(diǎn)?!焙喰乃砷_手,“我不太方便拿紙杯,容易灑?!?br>這是“視障人士”的合理反應(yīng)。看不清杯子的位置和傾斜角度,拿紙杯確實(shí)比拿馬克杯難控制。
陸淮看了她一眼,把那杯咖啡端起來,走到角落的飲水臺(tái),拿了一個(gè)會(huì)議室的白瓷杯,把咖啡倒進(jìn)去,再端回來放在她面前。
整個(gè)過程安安靜靜,沒多說一個(gè)字。
簡心的手指碰到瓷杯把手。溫?zé)幔粻C了。
“謝謝?!?br>陸淮點(diǎn)了下頭,轉(zhuǎn)身回了自己的位子。
簡心低頭對(duì)著那杯咖啡發(fā)了三秒鐘的呆。
她忽然意識(shí)到一個(gè)問題——她剛才沒喝。
也不能喝。
不是因?yàn)榕孪露尽獩]那么離譜——而是因?yàn)樗F(xiàn)在和陸淮的關(guān)系太微妙了。上次電話里她泄了底,匿名信封和紙條的來源不明,加上今天的競標(biāo)是實(shí)打?qū)嵉膶?duì)手局,這杯咖啡不管是善意還是試探,她接了就欠了個(gè)人情。
在牌桌上,欠人情是大忌。
簡心把瓷杯推到文件旁邊,沒碰。
九點(diǎn)整,開場。
這次的流程比上次緊湊。甲方縮減了每家的陳述時(shí)間,從二十分鐘壓到十五分鐘,但評(píng)審**環(huán)節(jié)拉長了。
簡心抽到第一個(gè)。
她上臺(tái)的時(shí)候余光掃了一眼座位表——宋嶼坐在評(píng)審席最右邊,電腦打開著,屏幕朝自己。
PPT翻開,第一頁標(biāo)題沒變,還是那行“基于定制化映射的多系統(tǒng)融合架構(gòu)方案”。但底下加了一行副標(biāo)題:“面向復(fù)雜存量系統(tǒng)的深度適配實(shí)踐”。
這行副標(biāo)題是她昨天加的。算是給自己挖了個(gè)坑又填上了——既然已經(jīng)在電話里把“和原始開發(fā)團(tuán)隊(duì)合作”這張牌亮了一角,不如正面打出來,搶在陸淮之前把這個(gè)優(yōu)勢(shì)釘死。
“上次匯報(bào)中我提到了定制化映射的技術(shù)路線,這次重點(diǎn)補(bǔ)充實(shí)施層面的細(xì)節(jié)?!焙喰姆降诹?,“我們團(tuán)隊(duì)在2021年參與過錦城范圍內(nèi)兩個(gè)同類型**信息系統(tǒng)的適配工作,其中一套系統(tǒng)與錦城國投現(xiàn)有的七號(hào)系統(tǒng)使用相同的底層數(shù)據(jù)庫架構(gòu)?!?br>她沒說“我們和原始開發(fā)團(tuán)隊(duì)合作過”這種話——太直白,會(huì)讓甲方覺得她在暗示有內(nèi)部關(guān)系。她換了個(gè)說法,只提“相同架構(gòu)”,讓甲方自己去想。
評(píng)審席里宋嶼的手在鍵盤上動(dòng)了一下。
簡心看見了。
她繼續(xù)講。核心參數(shù)那一頁她過得很快,4.5:5.5的權(quán)重比沒有變,但她在旁邊加了一組回測(cè)數(shù)據(jù),用歷史項(xiàng)目的真實(shí)運(yùn)維數(shù)據(jù)做了對(duì)比。這些數(shù)據(jù)對(duì)手拿不到,因?yàn)閬碜运约簣?zhí)行過的項(xiàng)目。
十三分半,提前收尾。
評(píng)審組問了五個(gè)問題。前三個(gè)是技術(shù)細(xì)節(jié),**個(gè)問工期彈性,第五個(gè)問報(bào)價(jià)構(gòu)成。
簡心答到第五個(gè)的時(shí)候故意留了一個(gè)模糊地帶——她沒有拆分中間件的采購成本,只給了總價(jià)。
這是個(gè)陷阱。
如果陸淮上臺(tái)后把自研中間件的成本單獨(dú)拎出來跟甲方算對(duì)比賬,甲方就會(huì)反過來問她“為什么你沒拆”。到時(shí)候她再補(bǔ)充說明——第三方中間件采購有框架協(xié)議折扣,單獨(dú)列出來反而讓報(bào)價(jià)失真——這個(gè)解釋反而比主動(dòng)交代更有說服力。
回到座位上,簡心喝了口那杯已經(jīng)涼了的美式。
不好喝。七樓自助吧的豆子太差了。
陸淮第二個(gè)上臺(tái)。
他今天穿的是藏藍(lán)色西裝。簡心注意到他沒打領(lǐng)帶,領(lǐng)口散開一顆扣子。上次競標(biāo)會(huì)他打了領(lǐng)帶,這次沒打——放松了,還是故意釋放某種“溫和無害”的信號(hào)?
簡心覺得自己想多了。
PPT亮出來的第一秒,她的后背就繃了。
標(biāo)題和上次不一樣了。上次叫“智能化改造全域融合方案:以安全驅(qū)動(dòng)業(yè)務(wù)的新范式”,這次改成了——
“錦城國投智能化改造解決方案:面向業(yè)務(wù)連續(xù)性的安全一體化架構(gòu)”。
面向業(yè)務(wù)連續(xù)性。
這五個(gè)字比上次那個(gè)“安全驅(qū)動(dòng)業(yè)務(wù)”精準(zhǔn)了不止一個(gè)檔次?!皹I(yè)務(wù)連續(xù)性”是甲方年報(bào)里出現(xiàn)頻率第二高的***,僅次于“數(shù)據(jù)安全”。上次他的方案側(cè)重安全層面,這次直接把安全和業(yè)務(wù)連續(xù)性綁在一起——
他改過方案了。
而且改的方向剛好卡在她方案的軟肋上。
簡心的方案強(qiáng)項(xiàng)在“兼容性”和“深度適配”,弱項(xiàng)在哪里?在業(yè)務(wù)連續(xù)性保障。她的定制化映射方案雖然三年綜合維護(hù)成本低,但有一個(gè)繞不開的問題——切換期間,業(yè)務(wù)系統(tǒng)需要停機(jī)做數(shù)據(jù)遷移。停多久?她的方案里寫的是“單系統(tǒng)切換窗口72小時(shí)”。
七十二小時(shí)。三天。
對(duì)**單位來說,任何一套核心系統(tǒng)停三天,都要走一套極其復(fù)雜的審批和應(yīng)急流程。
陸淮翻到第五頁的時(shí)候,指了一下中間一行數(shù)字。
“我們的方案采用熱切換模式,依托橋接引擎的雙向同步能力,單系統(tǒng)切換窗口可以壓縮到八小時(shí)。業(yè)務(wù)側(cè)無感知,用戶端零中斷?!?br>八小時(shí)。
簡心的手在桌面下扣了一下膝蓋。
坐在評(píng)審席中間的一個(gè)技術(shù)評(píng)審扭頭跟旁邊的人說了句什么,聲音很小,簡心沒聽到。
陸淮繼續(xù)講。他的語速還是不快不慢,每一頁的信息量控制得很精確——不堆數(shù)據(jù),不賣概念,每一組數(shù)據(jù)后面跟一句落地場景。他講到自研橋接引擎的時(shí)候花了三分鐘,把去年三個(gè)**項(xiàng)目的交付數(shù)據(jù)拿出來,逐個(gè)對(duì)比。
“故障率為零”這句話他又說了一遍,但這次加了個(gè)前綴——“截至今日?!?br>評(píng)審席上宋嶼抬了一下頭。
陸淮的目光在宋嶼臉上停了不到一秒就移開了。
簡心捕捉到了這個(gè)細(xì)節(jié)。她把宋嶼的名字在心里又劃了一道線——這個(gè)人不是打醬油的。
陸淮講了十四分鐘,比她還少一分半。
評(píng)審組問了四個(gè)問題。第三個(gè)問題是關(guān)于中間件成本的——
果然來了。
“陸總,你們方案中橋接引擎作為自研產(chǎn)品,成本結(jié)構(gòu)能否拆分一下?我們想和市面上第三方中間件做一個(gè)橫向?qū)Ρ?。?br>陸淮說:“可以。橋接引擎的單項(xiàng)目授權(quán)費(fèi)用是一百二十萬,含三年運(yùn)維支持。市面上同等級(jí)第三方中間件的采購加運(yùn)維,三年周期大約在九十萬到一百一十萬之間。我們貴了大約百分之十到三十。”
他沒回避。一百二十萬這個(gè)數(shù)字他報(bào)得很干脆。
然后他補(bǔ)了一句:“但第三方中間件不支持熱切換,加裝熱切換模塊需要額外開發(fā),費(fèi)用不低于八十萬?!?br>評(píng)審的人點(diǎn)了下頭,在本子上記了一筆。
簡心做了個(gè)快速的心算——她的第三方中間件加熱切換改造,總成本最少一百七十萬。陸淮的自研方案一百二十萬全包。
差了五十萬。
操。
**個(gè)問題是個(gè)商務(wù)問題,問付款節(jié)點(diǎn),陸淮三句話答完。
他回座位的時(shí)候路過簡心,沒看她,沒說話,只是把桌上自己那杯沒喝完的美式拿起來喝了一口。
簡心看著他的背影,腦子在高速運(yùn)轉(zhuǎn)。
陸淮這次方案改動(dòng)很大,“面向業(yè)務(wù)連續(xù)性”這個(gè)方向精準(zhǔn)打到了她的短板。她不信這是巧合——上次電話里她提到和甲方存量系統(tǒng)開發(fā)團(tuán)隊(duì)的合作關(guān)系,他今天就避開兼容性這個(gè)戰(zhàn)場,轉(zhuǎn)向攻擊她的停機(jī)時(shí)間。
這人是在用她給的信息倒推她方案的結(jié)構(gòu),然后找薄弱環(huán)節(jié)下刀。
高明。
但也不是沒有破綻。
簡心低頭看自己的筆記本。她剛才在陸淮陳述的時(shí)候記了六個(gè)要點(diǎn),**個(gè)打了星號(hào)——“橋接引擎雙向同步能力”。
熱切換的核心在于新舊系統(tǒng)之間的數(shù)據(jù)實(shí)時(shí)同步。陸淮說“零中斷”,但他的PPT上那張架構(gòu)圖里,同步鏈路畫的是單鏈路。
單鏈路零中斷?
簡心翻了一下自己方案文件的附錄。她在附錄C里放過一組測(cè)試數(shù)據(jù),是針對(duì)錦城國投存量系統(tǒng)的IO負(fù)載模擬——七號(hào)系統(tǒng)高峰期的數(shù)據(jù)吞吐量是每秒一萬兩千條。單鏈路同步在這個(gè)量級(jí)下的延遲會(huì)超過兩百毫秒。
兩百毫秒夠不夠“零中斷”?看定義。如果是業(yè)務(wù)層面的感知閾值,兩百毫秒的確用戶無感。但如果是交易類數(shù)據(jù)——錦城國投下屬有商業(yè)地產(chǎn)的租金結(jié)算系統(tǒng)——兩百毫秒的同步延遲可能造成數(shù)據(jù)版本沖突。
這個(gè)點(diǎn),評(píng)審組未必會(huì)問。
但她可以讓他們問。
四家公司全部陳述完之后,甲方給了一個(gè)自由**環(huán)節(jié)。
“各參標(biāo)單位如果對(duì)其他公司的方案有技術(shù)層面的交流或疑問,可以在這個(gè)環(huán)節(jié)提出?!敝鞒秩苏f完看了一圈。
沒人動(dòng)。
競標(biāo)會(huì)上公開質(zhì)疑對(duì)手方案,這種事情不是不能做,但得掂量。做得好叫專業(yè)探討,做不好叫惡意攻擊,甲方觀感會(huì)很差。
簡心舉了手。
“我有一個(gè)技術(shù)問題,想請(qǐng)教一下淮遠(yuǎn)科技?!?br>會(huì)議室里的空氣緊了一分。
陸淮轉(zhuǎn)頭看她,表情平靜。
“請(qǐng)講?!?br>簡心沒站起來,坐在位子上,手指在文件上點(diǎn)了兩下。
“陸總方案里提到橋接引擎支持熱切換,單系統(tǒng)切換窗口八小時(shí),業(yè)務(wù)零中斷。我想了解一下,同步鏈路的冗余設(shè)計(jì)是什么方案?”
這個(gè)問題問得極其克制。
她沒有說“你的同步鏈路是單鏈路,有風(fēng)險(xiǎn)”。她問的是“冗余設(shè)計(jì)”,把判斷權(quán)交給陸淮自己回答。如果他的方案確實(shí)有冗余設(shè)計(jì),那她這個(gè)問題只是常規(guī)技術(shù)交流。如果沒有——那評(píng)審會(huì)自己琢磨。
陸淮看了她兩秒。
“橋接引擎默認(rèn)部署雙活鏈路,主備自動(dòng)切換,RTO小于五秒。”
簡心的睫毛顫了一下。
雙活鏈路。他的PPT架構(gòu)圖上明明畫的是單鏈路。
兩種可能。第一,PPT畫簡化了,實(shí)際方案是雙活。第二,他剛才現(xiàn)場補(bǔ)的。
不管是哪種,她沒法再追下去了。再追就變成質(zhì)疑對(duì)手誠信,在甲方面前撕破臉,不值得。
“明白了,謝謝陸總。”簡心笑了一下。
評(píng)審組的宋嶼在電腦上打了一行字。簡心看不到內(nèi)容,但她注意到宋嶼打完字之后,目光從陸淮身上移到了她身上,停了大概一秒。
這一秒她讀不出任何含義。
會(huì)后散場,簡心沒有第一時(shí)間離開。她在七樓的洗手間里站了五分鐘。
面前是整面墻的鏡子,燈光白得發(fā)冷。她洗了把手,擦干,看著鏡子里的自己。
妝還在,口紅沒掉色,眼底的倦色被粉底蓋住了,整個(gè)人看上去還是那個(gè)走進(jìn)會(huì)議室時(shí)雷打不動(dòng)的簡總。
但她知道自己剛才在那個(gè)**環(huán)節(jié)手心出了汗。
不是因?yàn)榫o張,是因?yàn)殛懟吹姆磻?yīng)太快了。
雙活鏈路。這個(gè)回答要么是他方案里本來就有、只是PPT沒體現(xiàn),要么是他在三秒鐘之內(nèi)判斷出她在攻擊什么、立刻給出了封堵方案。
不管是哪種,她都沒占到便宜。
洗手間的門被推開,進(jìn)來一個(gè)甲方的女員工,二十出頭的樣子,看見簡心點(diǎn)了個(gè)頭,進(jìn)了隔間。
簡心把水龍頭關(guān)了,對(duì)著鏡子補(bǔ)了一下口紅。
手機(jī)在口袋里震了一下。她掏出來看——不是微信,是短信。
一個(gè)陌生號(hào)碼,內(nèi)容只有一行字:
“雙活鏈路是臨時(shí)加的?!?br>簡心拿著手機(jī)的手沒動(dòng)。
她退出短信界面,看了一眼號(hào)碼。136開頭,本地號(hào)段,沒有歸屬信息。
誰發(fā)的?
甲方內(nèi)部的人?第三家或**家競標(biāo)公司的人?還是別的什么人?
她沒有回復(fù),把***了圖,存進(jìn)了一個(gè)加密相冊(cè)。
隔間門開了,那個(gè)女員工出來洗手。簡心收起手機(jī),走了。
回到公司已經(jīng)下午一點(diǎn)半。簡心沒去食堂,辦公室里啃了半個(gè)三明治就打開電腦。
她先查了那個(gè)136號(hào)碼——公開渠道查不到任何登記信息,可能是預(yù)付費(fèi)卡。
然后她把今天競標(biāo)會(huì)的過程復(fù)盤了一遍,逐條記錄陸淮方案的變化點(diǎn),和上次做了對(duì)照。
兩次方案之間的差異指向一個(gè)明確的方向——他在快速迭代。第一次競標(biāo)他展示的是基礎(chǔ)框架,第二次把框架填實(shí)了。而且填的方向每一個(gè)都踩在她的軟肋上。
這不是正常的方案迭代節(jié)奏。正常投標(biāo),方案在遞交之后小修可以,大改意味著前期準(zhǔn)備不充分。但陸淮的改動(dòng)不是補(bǔ)漏洞,是換打法。
他第一次是在探路。
第二次才是真的出拳。
簡心把三明治的最后一口塞進(jìn)嘴里,擰開礦泉水灌了兩口。
手機(jī)屏幕亮了。
陸淮的微信。
簡心嚼東西的動(dòng)作慢了一拍。她伸手拿過手機(jī),點(diǎn)開。
陸淮:今天會(huì)上有人問了個(gè)技術(shù)問題,角度很專業(yè)。
簡心看著這句話,有一種很復(fù)雜的感受。這人在夸她。但這種夸法——“有人問了個(gè)技術(shù)問題”——他沒有說“你問了個(gè)技術(shù)問題”。
他在用第三人稱。
距離感拉得很準(zhǔn)。
簡心沒有接這個(gè)話題。她切換到另一個(gè)身份——那個(gè)眼睛不好、需要關(guān)心的“簡心”。
她打字:我今天也有一個(gè)競標(biāo),好累。對(duì)手太強(qiáng)了,我感覺我們方案被針對(duì)了。
發(fā)完之后她等了二十秒。
陸淮回:被針對(duì)不一定是壞事。說明對(duì)方研究過你,研究你才會(huì)針對(duì)你,針對(duì)你說明你值得被認(rèn)真對(duì)待。
簡心握著手機(jī)沒動(dòng)。
這段話說得滴水不漏。放在任何一個(gè)職場社交場景里都是得體的鼓勵(lì)。但她反復(fù)看了兩遍,總覺得多了點(diǎn)什么。
“說明對(duì)方研究過你?!?br>這句話如果換個(gè)語境——比如兩個(gè)人面對(duì)面坐著,他看著她的眼睛說這句話——那意思就完全不一樣了。
她又看了一遍。
“研究你才會(huì)針對(duì)你?!?br>“針對(duì)你說明你值得被認(rèn)真對(duì)待?!?br>簡心想了一分鐘,打了四個(gè)字:那你呢?
發(fā)出去了。
陸淮回得快:我什么?
簡心:你會(huì)認(rèn)真對(duì)待一個(gè)值得被研究的對(duì)手嗎?
對(duì)話框里的狀態(tài)顯示“對(duì)方正在輸入”,跳了好幾秒。
然后消息彈出來。
陸淮:我不會(huì)把值得被研究的人只當(dāng)對(duì)手。
簡心盯著這句話的時(shí)間超過了她今天讀過的任何一份文件。
她沒回。
不知道怎么回。
放下手機(jī),打開方案文件繼續(xù)改。改了二十分鐘,存了檔,伸了個(gè)懶腰。拿起手機(jī)準(zhǔn)備查看老趙發(fā)來的郵件。
屏幕亮起來的瞬間,她的手停了。
通知欄里有一條系統(tǒng)提示,很短。
“定位服務(wù)已開啟——微信(持續(xù))。”
簡心的手指在屏幕上方懸著,兩秒沒動(dòng)。
她點(diǎn)進(jìn)去,翻到隱私設(shè)置——定位服務(wù)——微信。
顯示“始終”。
她一直設(shè)的是“使用期間”。
什么時(shí)候被改成“始終”的?
簡心退出設(shè)置,打開微信的權(quán)限記錄。最近一次定位權(quán)限變更的時(shí)間是——
今天上午八點(diǎn)五十四分。
競標(biāo)會(huì)開場前六分鐘。
她在那個(gè)時(shí)間段在做什么?陸淮給她到咖啡,她伸手去接,手被燙了一下,縮回來。陸淮拿走紙杯去倒瓷杯。她的手機(jī)放在桌面上,屏幕朝上。
那個(gè)時(shí)間段,她的注意力——不在手機(jī)上。
簡心把手機(jī)翻過來,看著背面。沒有異常。再翻回來,鎖屏,解鎖,反復(fù)檢查了一遍通知設(shè)置和**應(yīng)用。
除了定位權(quán)限被改過之外,沒有其他異常。
她把微信的定位改回“使用期間”,然后關(guān)掉所有**應(yīng)用,重啟了手機(jī)。
重啟完成后她坐在椅子上,盯著黑下去又亮起來的屏幕。
腦子里有三條線在同時(shí)跑。
匿名信封。紙條。136的短信。定位權(quán)限。
這些事情可以是同一個(gè)人做的,也可以是不同的人。
但不管是誰,有一個(gè)事實(shí)她不得不面對(duì)——她被人摸到了牌桌底下的手。
簡心拉開抽屜,把那張白色便簽紙拿出來又看了一遍。
“你的眼睛,什么時(shí)候方便,讓我也看看?”
她忽然覺得這句話多了一層意思。
不是“讓我看看你的眼睛”。
是“讓我看看——你到底看不看得見”。
簡心把便簽紙放回抽屜,鎖上。拿起手機(jī),點(diǎn)進(jìn)陸淮的對(duì)話框,看著那句“我不會(huì)把值得被研究的人只當(dāng)對(duì)手”。
她打了一行字。
“陸總,你今天上午碰過我手機(jī)嗎?”
然后她看著這行字,一個(gè)字一個(gè)字地**。
跟上次一樣,刪得干干凈凈。
她把手機(jī)扣在桌上,椅子轉(zhuǎn)了個(gè)方向,面對(duì)窗戶。
樓下的車流照常走,太陽往西移了半個(gè)手掌的距離。
簡心閉上眼睛。
這場牌局比她預(yù)想的復(fù)雜。她一開始以為自己在釣魚,現(xiàn)在越來越不確定魚竿在誰手里。
手機(jī)在桌上又震了一下。
她沒翻。
過了三十秒,還是翻了。
媽:心心,王姨的侄女認(rèn)識(shí)一個(gè)眼科專家,要不要幫你介紹?
簡心差點(diǎn)把手機(jī)摔了。
她深吸一口氣,回了四個(gè)字:不用,謝謝。
然后想了想,又加了一句:媽,我眼睛真的沒事。
發(fā)完她自己笑了一下。
眼睛沒事。
對(duì),她眼睛好得很。
好到能在競標(biāo)會(huì)上一個(gè)字不漏地看完陸淮的PPT,好到能隔著兩米遠(yuǎn)看見宋嶼屏幕上的字號(hào)大小,好到能在洗手間的鏡子里發(fā)現(xiàn)自己嘴角有一絲三明治的碎屑。
但她不能讓任何人知道她看得見。
尤其不能讓陸淮知道。
或者——已經(jīng)來不及了。
簡心把手機(jī)鎖屏,放在桌角,離自己遠(yuǎn)一點(diǎn)的地方。
她重新打開電腦,調(diào)出競標(biāo)方案文件。光標(biāo)停在第十五頁的成本測(cè)算表上,閃了一會(huì)兒都沒動(dòng)。
腦子里全是那句話。
“我不會(huì)把值得被研究的人只當(dāng)對(duì)手?!?br>那你想把我當(dāng)什么?
簡心刪掉了腦子里這個(gè)問題。
就像刪掉那些打了又刪的微信消息一樣。
閱讀下一章(解鎖全文)
點(diǎn)擊即可暢讀完整版全部內(nèi)容
相關(guān)書籍
友情鏈接