那天下午,我正在工位上摸鱼式上班。
不是我职业态度出了问题,主要是最近项目确实没什么特别要命的事。七夕活动那波折腾完以后,手头上剩下的基本都是些边角优化,优先级不高,做不做都不会影响公司股价,更不会影响我这个月工资到账。
严格来说,我那段时间已经处于一种“人还在公司,魂已经开始做灰度迁移”的状态了。
因为就在一周前,我已经把离职提了。
提离职那天,顺哥还象征性挽留过我一下。
“要不再看看?”他说,“后面项目说不定能起来。”
我当时坐在会议室里,心情倒也没多激动,就是很平静。平静得像一个已经看完线上日志,确认问题不在自己这边的后端。
“顺哥,”我说,“不是项目起不起得来的问题,是我想换个环境试试了。”
他看了我两秒,最后还是叹了口气。
“行吧。”他说,“你这人我也算了解,平时看着好说话,真决定了的事,配置改不回来。”
这话说得还挺准确。
我这人平时嘴上没什么硬气,开会能让一步让一步,改需求能忍一点忍一点,但真到了那种心里已经把版本规划写明白的时候,别人再怎么热修,也很难把我回滚回去。
只是我自己也没想到,后面的流程会顺成这样。
本来按我的预期,这波跳槽怎么也得折腾个几周。先投简历,再约面试,再反复被拷打几轮,最后再从几个不太满意的机会里做选择。作为一个在深圳被职场教育过很多次的程序员,我对“顺利”这种东西,一向不抱太大幻想。
结果那天下午,我正在工位上装模作样看接口文档,微信突然弹出一条消息。
是那家我前几天刚面完的公司 HR 发来的。
我顺手点开,本来还以为是常规流程通知,结果第一眼就看到一句:
“阿雷你好,面试结果已经出来了,整体评估不错,这边准备给你发 offer,方便接收一下邮件吗?”
我盯着那行字,整个人当场卡住了。
那种感觉有点像你本来已经做好了接口超时重试三次的心理准备,结果请求刚发出去,对面直接秒回了个 200。
而且还是带数据的那种。
我下意识点开邮箱,果然,offer 已经安安静静躺在收件箱里了。
岗位、薪资、工作地点、入职时间,全写得明明白白。
我盯着屏幕看了半天,第一反应不是高兴,是懵。
真的懵。
因为这才第一家。
我连后面的面试节奏都还没完全铺开,连“连续几周被面试官拷打到怀疑人生”的预案都做好了,结果第一家就直接过了。
我坐在工位上,鼠标点着邮件来回切了三遍,确认自己不是看错字,也不是 HR 把消息发给了隔壁叫阿雷的别的程序员。
不是。
是真的。
我过了。
而且过得比我预期里顺利太多。
我把手机扣在桌上,靠着椅背长长出了一口气。那一瞬间,我脑子里有种很奇怪的空白感,就像某个一直高负载运行的线程,突然被系统释放出来了,整个人都轻了一下。
伟源刚好从旁边路过,看我那个表情,停下来问了句:“怎么了?你这脸色像接口从 500 变 200 了。”
我抬头看他:“差不多。”
“啥意思?”
我把手机递过去:“面过了,offer 下来了。”
伟源低头看了一眼,直接“卧槽”了一声。
小马哥也被这一声吸引过来了,探头看完以后,表情比我还夸张:“你这也太快了吧?你不是才面第一家吗?”
“是啊。”我自己说出来都觉得离谱,“我本来还以为得再找几个星期。”
“那你这波属于什么?”伟源拍了拍我肩膀,“属于刚提离职,系统那边就给你自动分配新实例了。”
我笑了笑,心里那点高兴终于开始慢慢往上冒。
说实话,人有时候不是不想开心,是很多年打工打下来,已经被训练得不太敢提前高兴。总怕哪一步流程还没走完,怕中间再来个意外回滚,怕 HR 下一秒补一句“发错了”。
但 offer 白纸黑字摆在那,实在不太像能回滚的样子。
那天后半段时间,我基本没怎么干活。
不是故意摆烂,主要是心思已经不在当前环境里了。你都知道自己这个服务实例快下线了,很难再对眼前这些低优先级需求产生什么深度感情。况且手头本来也没啥事,代码写两行,脑子就飘到南山去了。
对,南山。
那个我来深圳以后绕来绕去,最后又要回去的地方。
只不过这一次不是当年那个刚毕业、拖着箱子坐绿皮火车南下的愣头青版本了。这次去的是南山高新园,岗位更核心,工资也更高。说得直接一点,我会选这家公司,原因其实没那么文艺,核心逻辑就一条:
它给得多。
深圳这地方教会我的一个朴素道理就是,理想和成长都很重要,但工资是最先到账的真理。尤其你谈了恋爱、开始考虑以后怎么过日子以后,这个道理就更像写进配置中心的核心参数,轻易改不了。
快下班的时候,我给小璇发了条消息。
“下楼一起走?”
她回得很快:“行。”
等到点以后,我收拾了下桌面,跟她一起出了公司。电梯往下走的时候,我把 offer 的事跟她说了。
小璇先是看了我一眼:“这么快?”
“我也没想到。”我笑得有点压不住,“第一家就过了,我本来还以为至少得再找几个星期。”
“那说明你这几年夜没白熬。”她说。
“也说明我简历吹得还行。”
“你少来。”她瞥我一眼,“你要真只靠吹,面试官也不是做慈善的。”
电梯门开了,我们一边往外走,我一边顺手在群里叫了伟源和小马哥。
“下楼吃饭,庆祝我跑路成功。”
伟源秒回:“你请?”
“废话,不然你请?”
小马哥也跟着回了一句:“那我建议你点贵一点,毕竟你现在已经是拿南山工资的人了。”
我们几个在公司楼下碰头的时候,天还没完全黑,深圳那种典型的傍晚光线把写字楼和路边绿化都照得有点假,假得像开发环境里专门给你造出来的示意图。
伟源一见我就笑:“雷老板,恭喜啊,提前进入人生新版本。”
小马哥更直接:“今天你必须交代,工资到底涨了多少。别跟我们玩接口脱敏。”
“商业机密。”我说。
“那不行。”伟源立刻接话,“你都提离职了,还保什么密。你现在跟我们已经不是同一套权限体系了。”
小璇站旁边听着,没说话,但嘴角一直有点压不住笑。
那顿饭吃得挺热闹。
我们几个本来也熟,平时工位上就没少互相阴阳,这会儿我拿了 offer,他们更不可能放过我。话题从工资涨幅一路聊到新公司靠不靠谱,再从我是不是早就蓄谋已久,聊到我以后去了南山会不会嫌弃宝安人民。
我一边吃一边被他们围着输出,感觉自己像个刚上线的新服务,还没正式接流量,先被压测了一轮。
但这种被朋友起哄的感觉其实挺好。
不沉重,也不煽情,就是很真实。你知道自己要走了,大家也知道,但谁都不会把气氛搞得像离职欢送会,反而是这种半开玩笑半认真地损你几句,更像程序员之间默认的情绪表达方式。
吃到后半段,伟源忽然冲我举了举杯子:“说真的,挺好。”
我愣了下:“什么挺好?”
“你这次跳得挺好。”他说,“不是被逼走,也不是一气之下拍桌子走,是自己想清楚了往前走。这个挺难的。”
这话让我停了两秒。
小马哥也跟着点头:“而且你这波属于一周前提离职,一周后拿 offer,流程顺得像提前写好脚本了。”
“你别毒奶。”我立刻说,“我现在最怕的就是哪天 HR 跟我说邮件发错人了。”
“放心。”小璇终于开口了,“真发错的话,你这表情不会这么得意。”
一桌人都笑了。
吃完饭以后,伟源和小马哥先走了。我和小璇沿着路慢慢往前走,天已经彻底黑下来,路边的灯亮着,风吹过来,整个人都比白天清醒不少。
我把手揣进口袋里,沉默了一会儿,才开口:“其实我下午看到 offer 的时候,第一个反应不是高兴。”
“那是什么?”
“有点不真实。”我说,“太顺了。顺得像我这些年被生活折腾惯了,突然给我来一段不卡顿的流程,我反而不敢点确认。”
小璇听完笑了下:“你这人真是,顺也担心,不顺也担心。”
“那不一样。”我叹了口气,“以前跳槽,我只考虑自己。工资涨多少、累不累、值不值。现在脑子里会多很多东西。”
“比如?”
“比如以后住哪,比如通勤,比如你怎么办,比如……我们怎么过。”
我说到最后一句,声音不算大,但我自己能听出来,那不是嘴硬,是认真。
小璇脚步慢了一下。
她平时不是那种特别容易脸红的人,但那天路灯底下,我还是能看出来她耳朵有一点发热。
“你想得还挺远。”她低声说。
“没办法。”我笑了笑,“成年人谈恋爱,总不能一直靠表情包和奶茶维持吧。恋爱和系统一样,光能跑不行,还得考虑长期维护。”
她没接我这句,只是抿了抿嘴。
我把手揣进口袋里,跟她并排走了一会儿,才慢慢把后面那句真正想说的话接上。
“其实我刚才一路都在想,不光是换工作的事。”
小璇转头看我:“那还有什么?”
“还有住的事。”我顿了顿,“我...... 我想搬去固戍跟你一起住......”
说到这儿,我自己都觉得有点像在提交一个高风险需求。
这句话说出来以后,我自己先紧张了。
那种紧张很难形容,差不多相当于你把一段明知道很关键的代码推上生产,然后盯着监控面板等第一波流量进来。表面上装得还算稳定,实际上心跳已经快得像报警群连响三次。
她没说话,安静地听着。
我只好继续往下补,全当自己在做一场人生需求澄清。
“我的意思不是单纯为了省房租,也不是图方便。”我看着前面的路灯,尽量把话说清楚,“我是觉得,咱俩现在也不是刚在一起那会儿了。工作、生活、脾气,能磨的基本也磨过一轮了。既然我这次本来就要搬,不如干脆认真一点,把以后的日子也一起往前挪一步。”
说到这里,我自己都能感觉到心跳开始提速了。
那种紧张感,跟把一段明知道很关键的代码推上生产差不多。表面上看着还能稳住,实际上心里已经在等第一波流量了。
我咳了一声,终于把最后那句话说出来:
“所以……要不我搬去固戍,跟你一起住?”
小璇脚步明显慢了一下。
她平时不是那种特别容易露情绪的人,可那天路灯底下,我还是能看见她耳朵有点发红。她低着头走了几步,手指轻轻拽了下包带,像是在心里给这个提议做一轮静默评审。
过了好一会儿,她才小声说:“你这算不算……把搬家和未来规划一次性提测了?”
“差不多,主要是这个需求现在优先级挺高。”我老老实实承认,“而且我不是临时起意,是真的想过。”
她抿了抿嘴,还是没看我,只是耳朵更红了,脸上那点不好意思压了半天,到底还是没完全压住。
“我知道。”她说。
再过了几秒,她像是终于把自己心里那点害羞和别扭都处理完了,才抬头看我一眼,声音很轻:
“行吧。那就……试试。”
我一时没反应过来:“行吧是什么意思?”
“意思就是,”她别过脸,声音很轻,“可以试试。”
我那一下,心里像长时间 pending 的请求终于返回了 200,而且不是空响应,是带完整业务数据的那种。
“真的?”我问得像个傻子。
“你再问一遍我就撤回。”她说。
“别别别。”我赶紧闭嘴,笑得差点没收住,“这个接口我已经收到返回值了,不接受回滚。”
小璇被我逗笑,抬手轻轻打了我一下。
那一刻我突然觉得,成年人把喜欢的人写进未来,可能也不是多轰轰烈烈的事。无非就是你原本只打算给自己做环境迁移,后来发现,想一起迁过去的人,已经有了。
那天晚上回去以后,我开始认真想搬家的事。
说实话,从麻布新村搬走,我心里挺复杂的。
那地方条件真不算好,房子旧,楼道窄,夏天热得像服务器机房散热坏了,冬天又阴冷得像谁把环境配置写反了。可我在那住了这么久,很多乱七八糟的人生缓存都堆在那儿。
疫情后回来找工作是在那儿。
跟老袁、馆长、宇辉他们一起熬日子是在那儿。
重新上岸、重新把生活拉回正轨,也是在那儿。
所以真正开始收拾东西的时候,我忽然有种奇怪的舍不得。像一个陪你跑了很久的旧系统,虽然性能不怎么样,bug 也不少,但你知道,没有它,你有一段时间真扛不过去。
搬走前,我们几个专门约着吃了顿散伙饭。
老袁、馆长、宇辉,一个没少。
这几个人对我来说,早就不只是“合租室友”这么简单了。疫情后那阵子,大家一起在麻布新村熬过最灰头土脸的日子:一起找房、一起投简历、一起改简历、一起算这个月房租怎么分摊最不至于把人逼疯。那段时间谁都不体面,谁也都没资格嫌弃谁,活得像几台配置不高但硬是并联起来跑的旧机器,性能一般,噪音很大,但胜在谁都没先断电。
所以真到要走这天,心里多少还是有点堵。
饭桌上气氛倒没怎么煽情。
老袁一边给我倒酒一边先开喷:“你这人现在是真行,工作升级,感情升级,连住处都准备升级了。我们还在麻布新村坚持跑老版本,你已经准备去固戍部署新环境了。”
馆长立刻接话:“准确点说,人家这不是升级住处,是上线双人版本了。”
宇辉笑得最缺德:“别说双人版本了,我看他这波都已经不是单机程序了,直接往分布式生活架构上走了。”
我被他们三个一顿围殴,只能端着杯子回击:“你们差不多得了,我这还没正式搬进去,你们就开始给我做线上解读了。”
“那不然呢?”老袁看着我,“你总不能让我们把这事当普通搬家处理吧。你这波明明属于人生大版本更新。”
一桌人全笑了。
笑归笑,真碰杯的时候,大家还是都认真了一点。
我举起杯子,看着他们几个,脑子里一下闪过很多很碎的画面:麻布新村楼下的猪脚饭、半夜一起回来看谁先抢到浴室、谁面试挂了回来先被另外几个损一轮、谁拿到 offer 以后请大家喝最便宜的啤酒还装得像融资成功。
那些日子现在回头看,其实都不算光鲜,甚至有点狼狈。
可也就是那些不太体面的时刻,最能看出来谁是真的陪你一起扛过来的。
我本来想说点正式的,结果话到嘴边,又觉得太正经了不适合我们这桌人的风格。最后我还是只举了举杯子:
“谢了,兄弟们。”
馆长马上皱眉:“你这话说得像项目下线前写的致谢邮件。”
宇辉也补刀:“而且还是那种没什么信息量、全靠感情撑着的致谢邮件。”
老袁笑着跟我碰了下杯:“行了,听懂了。你这人表达能力一直一般,能说出这句已经算超常发挥了。”
我也笑了。
笑完以后,还是把杯子碰了上去。
“认真说一句,”我看着他们,“那阵子要不是咱们几个一起扛着,我可能真被生活给回滚了。”
这回桌上安静了两秒。
馆长先把酒喝了:“行,算你这句写进主干了。”
宇辉也跟着举杯:“以后混好了,记得回来请客。别搬去固戍以后就把麻布新村这个旧仓库给删了。”
“放心。”我说,“这个仓库我不删。顶多算归档。”
后来我把东西一点点搬去固戍。
搬家那天没什么浪漫镜头,现实情况就是我一个人扛着箱子爬上爬下,累得像刚扛完一次全链路压测。小璇站在门口给我开门,脸上明明也挺高兴,嘴上却还是要装得很淡定。
“你慢点。”她说,“别把自己搬坏了。”
“放心。”我一边喘气一边说,“后端这点体力活还是扛得住的。实在不行我就做服务降级,先把最重的箱子延迟处理。”
她没忍住笑了。
屋子不算大,但收拾得很干净。我的箱子、她的书、厨房里的锅碗、阳台上的衣架,所有东西一点点放进去以后,那种“同居”才终于有了实感。
以前我总觉得,同居这种事离我挺远的。
那是偶像剧里、朋友圈里、别人故事里的情节,不像我这种天天被需求追着跑的程序员该有的配置。可真到了这一步,又会觉得,好像也没什么特别戏剧化的。
就是两个人,终于决定把彼此写进更长期一点的生活里。
不是临时变量。
不是测试环境。
是准备上线长期维护的正式配置。
那天晚上收拾完以后,我和小璇一起下楼买了点吃的。回来的路上,固戍的风不算大,街边有点吵,跟南山那种写字楼底下的风不太一样,但我心里反而很稳。
我突然想起自己第一次来深圳的时候。
那时候我坐着绿皮火车南下,脑子里想的东西特别简单——这城市这么大,我只要能先活下来就行。
后来很多年,我也确实一直在做这件事。
找工作、搬家、加班、跳槽、扛项目、谈恋爱、再跳槽。一路被 bug 教做人,被现实做 code review,被生活按在地上反复热修。
可到了这一刻,我才发现,自己想要的东西已经不只是“活下来”了。
我开始想怎么把日子过好。
怎么把工作往前走。
怎么把喜欢的人放进未来。
怎么不再只是一个人,闷着头在深圳这座城市里单线程硬跑。
我转头看了小璇一眼。
她正低头看路,灯光落在她侧脸上,很安静。
我忽然觉得,宝安的风吹了很多年,宝安的地铁我也坐了很多年,深圳这个城市还是一样忙、一样卷、一样不太会对谁温柔。
可这一次,好像真有点不一样了。
因为我终于不是一个人往前走了。