第29章 南山必勝客的稱讚
十一月的最後一個星期六,陳明難得睡到了八點。
跑步沒斷,只是推到了下午,他穿著拖鞋在陽台上澆花,琴葉榕又冒了兩片新葉,綠蘿從花槽邊垂下來,藤蔓快夠到樓下的陽台了。
手機放在茶几上,屏幕亮個不停蘇冉每隔半小時發一條消息,羅湖的鋪面平面圖、福田的裝修報價單、寶安的設備清單、龍華的人員排班表。
他一邊澆水一邊語音回她:「周末你歇一天,周一再說。」
蘇冉回了兩個字:「不累。」
陳明搖搖頭,把手機翻了個面扣在茶几上。
十家供應商的聯繫方式安靜地躺在他郵箱裡快一個月了,衣索比亞的,肯亞的,哥倫比亞的,巴拿馬的,牙買加的,瓜地馬拉的,印度尼西亞的,葉門的,巴西的,坦尚尼亞的——十個產區,十個莊園主。
他挨個打過電話,不是商務談判的那種打,就是聊天,聊產區的天氣,聊今年的採收情況,聊海運延誤對生豆新鮮度的影響。
聊著聊著,供應商們發現這個中國買家不只是會挑豆子,他對全球精品咖啡產區的微氣候和土壤類型了如指掌,能從海拔和年均降雨量一直聊到發酵罐的控溫精度。
巴拿馬翡翠莊園的老莊主跟他通完第三次電話後,主動派了兒子從博克特專程飛香港,帶著當季競標批次的全部樣品和氮氧鎖鮮技術資料,在時光咖啡二樓跟他聊了一整個下午。
哥倫比亞棕櫚樹莊園的少東家跟他視頻通話時,專門把鏡頭對準窗外火山腳下的種植園,用磕磕絆絆的英語說「你一定得來,我帶你去看我們的發酵站,這上面的是今年安第斯山最早的雨」。
蘇利南和牙買加的供應商在WhatsApp上拉了個小群,把陳明也加了進去,說要搞一個「精品咖啡直供中國」的聯合報價機制,群名被埃塞的老莊主改了,叫「Chen’s Group」,陳明的名字被他們當成了品牌的代稱。
這些名字和面孔,不再是郵箱裡的郵件地址或WhatsApp上的頭像,他們會在周末給他發自家的貓趴在生豆袋上的照片,會在他生日那天集體發來一段用七國語言七嘴八舌翻唱的生日歌。
時光咖啡的生豆供應鏈,從「陳明的供應商」變成了「陳明的朋友們」,以後不管市場上缺什麼豆子、漲什麼價,他一個電話就能拿到品質最好的批次這已經不叫渠道,叫人脈。
下午三點,陳明到時光咖啡的時候,門口圍了一圈遊客在拍照,三角梅開得正好,玫紅色的花瓣鋪了一地,幾個姑娘站在門頭下舉著手機,擺了半天姿勢還沒拍完。
他從側門繞進去,剛進吧檯,周悅就湊過來,聲音壓得特別低,但眼神出賣了她:「老闆你今天不該穿拖鞋來的。」
「怎麼了?」
「小馬哥來了。」
陳明順著周悅的視線往二樓看了一眼,靠窗的卡座上坐著一個穿深灰色連帽衫的人,很瘦,戴著一副銀色細框眼鏡,面前是一杯還沒喝完的手沖瑰夏。
旁邊的包間門開著,看起來是剛從包間裡出來換了個位置,他正低頭看手機,兩個助理模樣的人坐在隔壁桌上,一人一杯美式,安靜得像是兩塊背景板。
陳明低頭看了看自己腳上的拖鞋——淺灰色麂皮樂福鞋,還好,不是人字拖。
他拿起吧檯上蘇冉剛沖好的一杯翡翠瑰夏,端著上了二樓。
「馬總,這杯是剛沖的,比桌上那杯更新鮮。」他把杯子放在桌面上。
小馬哥抬頭看了他一眼,又低頭看了看杯子裡的咖啡液,端起來抿了一口。
「你就是陳明?」
「是我。」
「我最近總聽人提到你,先是老張,然後是老孫,然後是你這家咖啡店自己火起來了,說你以前寫代碼的,還自己寫了一套點單系統,搞得跟我們那幫程式設計師一樣什麼都想自己動手寫。」
「那套小程序只是一套簡單的交互邏輯,跟您做的沒法比。」
陳明在他對面的椅子上坐下來。
小馬哥擺了擺手:「別謙虛,你店裡用的點單系統我讓同事試了一下,訂單並發處理的穩定性比我們園區好幾家合作商的SaaS都好,後廚分單的邏輯是你自己用C++寫的?」
「後端核心模塊是go寫的,做了一些協程池的優化,尖峰時段並發用到廚房和吧檯兩個隊列自動分流,其實沒太複雜,就幾個goroutine的調度邏輯。」
小馬哥的表情變了一下,不是客套的微笑,是那種技術人對上電波之後特有的專注感,手指無意識地在桌面上點了兩下。
「協程池的分流怎麼處理優先級?高峰期如果客人催單,你的系統是插隊還是順延?」
「不插隊,我在消息隊列里設了一個優先權重,往前提半格但不打斷當前處理,主要靠分流而不是搶順序咖啡機和蒸烤箱不能搶,搶了會出事故。」
「這個思路跟我們做服務端的隊列調度很像。」
小馬哥往前傾了傾身子,銀框眼鏡反射出筆記本電腦屏幕的一小片藍光,「你們門店的翻台率是手工統計還是系統實時計算?」
「實時算,座位狀態用傳感器加掃碼點單的時間戳推算,翻台數據和客單價聯動,每半個小時更新一次。」
「這個聯動模型你怎麼調的?」
兩個人從協程池聊到了微服務架構,從咖啡機的時序控制聊到了伺服器的容災方案。
陳明講到節點切換的延遲問題時,說了一句「需要控制在一點二秒以內,咖啡萃取的黃金窗口是二十七秒,斷了就廢」,小馬哥聽完當場用筷子蘸了水在桌上畫了一張時序圖。
樓下的客人和店員們暗暗注意到了這一幕,周悅端著壺站在吧檯邊往二樓偷瞄,蒸汽棒停了好幾次都沒顧上重新加熱牛奶。
旁邊一位熟客正在用手機小心翼翼地朝二樓方向拍了幾秒視頻,發到朋友圈配了句「在時光咖啡二樓看到小馬哥在跟老闆聊技術」。
小馬哥的助理之一輕聲提醒了一下時間,他擺了擺手,陳明說到微服務邊界拆分的時候,舉了一個咖啡豆供應鏈和三方平台的跨域調用例子,小馬哥摘下眼鏡擦了擦鏡片,說了一句:「你這個思考的深度比我們很多海歸博士都到位。」
陳明笑了笑,沒有說自己是程式設計師出身,也沒有說自己之前在這行幹了七年,他只是端起瑰夏又喝了一口,聞到花香的尾調在鼻後慢慢散開。
「我一直覺得咖啡跟代碼很多時候是相通的,」
他說,「都是把一堆變量放進去,等一個結果。」
小馬哥愣了一下,然後笑了,那笑聲不大,但整個二樓都聽見了。
「你這個比喻我回去要講給我們技術總監聽。」
他把杯子端起來,跟陳明的杯子碰了一下,碰得很輕,咖啡液晃了晃沒灑,「你這家店真的不錯,以後我常來,包間幫我留一間,我有時候需要換個地方想事情。」
陳明回頭看了一眼樓下,蘇冉已經站在樓梯口等著了,他沖她招招手,蘇冉立刻上樓,手裡拿著新印出來的專屬預約卡。
陳明大概五天前讓小豪幫店裡趕製了一批給特別客人的東西,可以在小程序上直連包間預訂的專屬通道,她把卡片輕輕放在小馬哥面前。
「給馬總的預約通道,」
蘇冉說著,又補了一句,「瑰夏競標批次在桌上最後一杯了,再喝就得等明年的新豆了。」
小馬哥的助理不動聲色地收了預約卡,他倒沒多說什麼,只是站起來的時候朝陳明點點頭,轉身跟著助理下了樓。
樓梯踩到一半又回了一下頭:「你的系統有更新版本就發我看看,我有個技術群可以把你拉進去。」
陳明靠在二樓欄杆上,看著小馬哥一行人走出店門,街對面一輛黑色轎車緩緩啟動,融進了科技園周末傍晚的車流里。
他聽到身後有動靜,轉身一看,周悅已經衝上了二樓,手裡還抓著咖啡壺,臉上是那種拼命忍住尖叫的表情,整個臉都憋紅了。
「小馬哥剛才說你的代碼比他們海歸博士還到位?他說了!我站在吧檯全聽見了!」
「你別亂傳。」
「我沒有亂傳阿濤也聽見了!小羅也聽見了!蘇冉姐」她回頭看蘇冉,蘇冉已經若無其事地回了吧檯後面翻帳本,但翻帳本的動作明顯比平時快,嘴角還掛著一個壓不下去的弧度。
阿濤端著新烤的肉桂卷跟了上來,把盤子往陳明手裡一塞:「老闆你配肉桂卷,小馬哥配瑰夏,我配一個傳奇故事。」
他撓了撓頭,麵粉蹭在耳後,「以後我出去跟人吹我是時光咖啡的,就不用再解釋時光咖啡是什麼了,直接說『小馬哥來過的店』。」
陳明咬了一口肉桂卷,酥皮在嘴裡碎開,黃油的香氣混著肉桂的甜辣,他嚼完咽下去,喝了一口瑰夏清口。
樓下的客人們還在交頭接耳,三三兩兩地往二樓指,有兩個姑娘跑過來問能不能加單小馬哥同款瑰夏,周悅從二樓衝下去連聲說「馬上馬上」。
蘇冉已經切出後台排期表,重新檢查了一遍下周的包間預留。
桌上的瑰夏還剩最後一點,涼了反而更甜。
陳明對著店堂里此起彼伏的點單聲和說笑聲看了片刻,耳邊響起小豪的聲音:「宿主,你的底層架構筆記剛閃了一下雲端同步的提醒,看起來你把剛才聊的架構給你自己做了個備忘?」
「同步就同步吧。」
他把最後一口瑰夏喝完,杯子放回桌上,今晚回去把那個時序圖的思路整理成一份技術分享文檔,改天發給那位同樣痴迷底層邏輯的小馬哥看看。
跑步沒斷,只是推到了下午,他穿著拖鞋在陽台上澆花,琴葉榕又冒了兩片新葉,綠蘿從花槽邊垂下來,藤蔓快夠到樓下的陽台了。
手機放在茶几上,屏幕亮個不停蘇冉每隔半小時發一條消息,羅湖的鋪面平面圖、福田的裝修報價單、寶安的設備清單、龍華的人員排班表。
他一邊澆水一邊語音回她:「周末你歇一天,周一再說。」
蘇冉回了兩個字:「不累。」
陳明搖搖頭,把手機翻了個面扣在茶几上。
十家供應商的聯繫方式安靜地躺在他郵箱裡快一個月了,衣索比亞的,肯亞的,哥倫比亞的,巴拿馬的,牙買加的,瓜地馬拉的,印度尼西亞的,葉門的,巴西的,坦尚尼亞的——十個產區,十個莊園主。
他挨個打過電話,不是商務談判的那種打,就是聊天,聊產區的天氣,聊今年的採收情況,聊海運延誤對生豆新鮮度的影響。
聊著聊著,供應商們發現這個中國買家不只是會挑豆子,他對全球精品咖啡產區的微氣候和土壤類型了如指掌,能從海拔和年均降雨量一直聊到發酵罐的控溫精度。
巴拿馬翡翠莊園的老莊主跟他通完第三次電話後,主動派了兒子從博克特專程飛香港,帶著當季競標批次的全部樣品和氮氧鎖鮮技術資料,在時光咖啡二樓跟他聊了一整個下午。
哥倫比亞棕櫚樹莊園的少東家跟他視頻通話時,專門把鏡頭對準窗外火山腳下的種植園,用磕磕絆絆的英語說「你一定得來,我帶你去看我們的發酵站,這上面的是今年安第斯山最早的雨」。
蘇利南和牙買加的供應商在WhatsApp上拉了個小群,把陳明也加了進去,說要搞一個「精品咖啡直供中國」的聯合報價機制,群名被埃塞的老莊主改了,叫「Chen’s Group」,陳明的名字被他們當成了品牌的代稱。
這些名字和面孔,不再是郵箱裡的郵件地址或WhatsApp上的頭像,他們會在周末給他發自家的貓趴在生豆袋上的照片,會在他生日那天集體發來一段用七國語言七嘴八舌翻唱的生日歌。
時光咖啡的生豆供應鏈,從「陳明的供應商」變成了「陳明的朋友們」,以後不管市場上缺什麼豆子、漲什麼價,他一個電話就能拿到品質最好的批次這已經不叫渠道,叫人脈。
下午三點,陳明到時光咖啡的時候,門口圍了一圈遊客在拍照,三角梅開得正好,玫紅色的花瓣鋪了一地,幾個姑娘站在門頭下舉著手機,擺了半天姿勢還沒拍完。
他從側門繞進去,剛進吧檯,周悅就湊過來,聲音壓得特別低,但眼神出賣了她:「老闆你今天不該穿拖鞋來的。」
「怎麼了?」
「小馬哥來了。」
陳明順著周悅的視線往二樓看了一眼,靠窗的卡座上坐著一個穿深灰色連帽衫的人,很瘦,戴著一副銀色細框眼鏡,面前是一杯還沒喝完的手沖瑰夏。
旁邊的包間門開著,看起來是剛從包間裡出來換了個位置,他正低頭看手機,兩個助理模樣的人坐在隔壁桌上,一人一杯美式,安靜得像是兩塊背景板。
陳明低頭看了看自己腳上的拖鞋——淺灰色麂皮樂福鞋,還好,不是人字拖。
他拿起吧檯上蘇冉剛沖好的一杯翡翠瑰夏,端著上了二樓。
「馬總,這杯是剛沖的,比桌上那杯更新鮮。」他把杯子放在桌面上。
小馬哥抬頭看了他一眼,又低頭看了看杯子裡的咖啡液,端起來抿了一口。
「你就是陳明?」
「是我。」
「我最近總聽人提到你,先是老張,然後是老孫,然後是你這家咖啡店自己火起來了,說你以前寫代碼的,還自己寫了一套點單系統,搞得跟我們那幫程式設計師一樣什麼都想自己動手寫。」
「那套小程序只是一套簡單的交互邏輯,跟您做的沒法比。」
陳明在他對面的椅子上坐下來。
小馬哥擺了擺手:「別謙虛,你店裡用的點單系統我讓同事試了一下,訂單並發處理的穩定性比我們園區好幾家合作商的SaaS都好,後廚分單的邏輯是你自己用C++寫的?」
「後端核心模塊是go寫的,做了一些協程池的優化,尖峰時段並發用到廚房和吧檯兩個隊列自動分流,其實沒太複雜,就幾個goroutine的調度邏輯。」
小馬哥的表情變了一下,不是客套的微笑,是那種技術人對上電波之後特有的專注感,手指無意識地在桌面上點了兩下。
「協程池的分流怎麼處理優先級?高峰期如果客人催單,你的系統是插隊還是順延?」
「不插隊,我在消息隊列里設了一個優先權重,往前提半格但不打斷當前處理,主要靠分流而不是搶順序咖啡機和蒸烤箱不能搶,搶了會出事故。」
「這個思路跟我們做服務端的隊列調度很像。」
小馬哥往前傾了傾身子,銀框眼鏡反射出筆記本電腦屏幕的一小片藍光,「你們門店的翻台率是手工統計還是系統實時計算?」
「實時算,座位狀態用傳感器加掃碼點單的時間戳推算,翻台數據和客單價聯動,每半個小時更新一次。」
「這個聯動模型你怎麼調的?」
兩個人從協程池聊到了微服務架構,從咖啡機的時序控制聊到了伺服器的容災方案。
陳明講到節點切換的延遲問題時,說了一句「需要控制在一點二秒以內,咖啡萃取的黃金窗口是二十七秒,斷了就廢」,小馬哥聽完當場用筷子蘸了水在桌上畫了一張時序圖。
樓下的客人和店員們暗暗注意到了這一幕,周悅端著壺站在吧檯邊往二樓偷瞄,蒸汽棒停了好幾次都沒顧上重新加熱牛奶。
旁邊一位熟客正在用手機小心翼翼地朝二樓方向拍了幾秒視頻,發到朋友圈配了句「在時光咖啡二樓看到小馬哥在跟老闆聊技術」。
小馬哥的助理之一輕聲提醒了一下時間,他擺了擺手,陳明說到微服務邊界拆分的時候,舉了一個咖啡豆供應鏈和三方平台的跨域調用例子,小馬哥摘下眼鏡擦了擦鏡片,說了一句:「你這個思考的深度比我們很多海歸博士都到位。」
陳明笑了笑,沒有說自己是程式設計師出身,也沒有說自己之前在這行幹了七年,他只是端起瑰夏又喝了一口,聞到花香的尾調在鼻後慢慢散開。
「我一直覺得咖啡跟代碼很多時候是相通的,」
他說,「都是把一堆變量放進去,等一個結果。」
小馬哥愣了一下,然後笑了,那笑聲不大,但整個二樓都聽見了。
「你這個比喻我回去要講給我們技術總監聽。」
他把杯子端起來,跟陳明的杯子碰了一下,碰得很輕,咖啡液晃了晃沒灑,「你這家店真的不錯,以後我常來,包間幫我留一間,我有時候需要換個地方想事情。」
陳明回頭看了一眼樓下,蘇冉已經站在樓梯口等著了,他沖她招招手,蘇冉立刻上樓,手裡拿著新印出來的專屬預約卡。
陳明大概五天前讓小豪幫店裡趕製了一批給特別客人的東西,可以在小程序上直連包間預訂的專屬通道,她把卡片輕輕放在小馬哥面前。
「給馬總的預約通道,」
蘇冉說著,又補了一句,「瑰夏競標批次在桌上最後一杯了,再喝就得等明年的新豆了。」
小馬哥的助理不動聲色地收了預約卡,他倒沒多說什麼,只是站起來的時候朝陳明點點頭,轉身跟著助理下了樓。
樓梯踩到一半又回了一下頭:「你的系統有更新版本就發我看看,我有個技術群可以把你拉進去。」
陳明靠在二樓欄杆上,看著小馬哥一行人走出店門,街對面一輛黑色轎車緩緩啟動,融進了科技園周末傍晚的車流里。
他聽到身後有動靜,轉身一看,周悅已經衝上了二樓,手裡還抓著咖啡壺,臉上是那種拼命忍住尖叫的表情,整個臉都憋紅了。
「小馬哥剛才說你的代碼比他們海歸博士還到位?他說了!我站在吧檯全聽見了!」
「你別亂傳。」
「我沒有亂傳阿濤也聽見了!小羅也聽見了!蘇冉姐」她回頭看蘇冉,蘇冉已經若無其事地回了吧檯後面翻帳本,但翻帳本的動作明顯比平時快,嘴角還掛著一個壓不下去的弧度。
阿濤端著新烤的肉桂卷跟了上來,把盤子往陳明手裡一塞:「老闆你配肉桂卷,小馬哥配瑰夏,我配一個傳奇故事。」
他撓了撓頭,麵粉蹭在耳後,「以後我出去跟人吹我是時光咖啡的,就不用再解釋時光咖啡是什麼了,直接說『小馬哥來過的店』。」
陳明咬了一口肉桂卷,酥皮在嘴裡碎開,黃油的香氣混著肉桂的甜辣,他嚼完咽下去,喝了一口瑰夏清口。
樓下的客人們還在交頭接耳,三三兩兩地往二樓指,有兩個姑娘跑過來問能不能加單小馬哥同款瑰夏,周悅從二樓衝下去連聲說「馬上馬上」。
蘇冉已經切出後台排期表,重新檢查了一遍下周的包間預留。
桌上的瑰夏還剩最後一點,涼了反而更甜。
陳明對著店堂里此起彼伏的點單聲和說笑聲看了片刻,耳邊響起小豪的聲音:「宿主,你的底層架構筆記剛閃了一下雲端同步的提醒,看起來你把剛才聊的架構給你自己做了個備忘?」
「同步就同步吧。」
他把最後一口瑰夏喝完,杯子放回桌上,今晚回去把那個時序圖的思路整理成一份技術分享文檔,改天發給那位同樣痴迷底層邏輯的小馬哥看看。