2020年12月在一个寒冷的周四我开着车穿过了拥挤的徐浦大桥,绕外环要开二十多公里才能到我面试的地方。距离上一次面试已经三年多了,换工作的原因可以说很多,也可以说很少。
比如,结了婚,买了房,背负的累累债务,需要更多的收入来减缓压力;比如,新冠疫情对我们公司行业的强力冲击,尤其对于一个主要业务是在北美的公司;比如,领导跳槽去了阿里;又比如,遇见一些自负的煞笔同事等等等等。可以说对自己来说理由已经很充分了。
但是也有不换工作的原因,比如不想换得太频繁,让人觉得不太稳定可靠;比如,困惑,三十而立立了好久了还是不知道自己热爱的方向;比如,怕下一份工作可能会很累甚至996;比如害怕面试不过,找不到更好的工作。
一面的时候让我给虚拟电器制造工厂建模。一个一两句话的开放式题目。我很喜欢,写写画画,涂满了A4纸的两面。面试的人留着短短的山羊胡,犀利的小寸头,估计四十来岁。有点儒雅又有点侠客的感觉,让人尊敬,但是说起话来又很亲切。这样的程序员我还是第一次遇见,感觉就是一位大佬。聊的话题也很多,从开放式的题目开始,聊到我做过的很多事情,kubernetes,CICD, .net core,从虚拟机走向轻量级容器化的和网络相关的设计和架构,代码的品味,以及相关的很多细节。
二面的时候是个小年轻,可能年纪比我还小,裹着羽绒服,带着口罩以及一个薄边眼镜。感觉一面时间太长,说是要加快节奏。问了很多我不熟悉的细节,后来我知道他是做identity。所以问了他比较关心的SSO, identity server, 跨域攻击,还有其他一些小的点。冲忙之中我就说sso和identity server没有生产用过,也就不再被追问了。糟糕的是你给面试官说了好几个否定回答后还把跨域攻击和跨站点攻击混为一谈。另外base64的目的也没回答到要害,只提及了jwt, image编码, query等应用场景,给人一种没读过书的感觉,回想起来都不禁脸红。
三面的内容基本记不清了。但面试官稀疏的头发,浅蓝色的衬衫👔,以及人到中年的肚腩给了我一定的印象。每当他边整理那弱不禁风的刘海,我就想起自己在静安中心医院植发时的煎熬,以及半年后蓬勃生长的兴奋。当然这不是我没有做出第二道算法题的分心借口,这完全怪自己刷leecode的总时长还没三面的分钟数长。他就问我什么是快排我都不记得了,也别说怎么计算时间复杂度和空间复杂度了。那个算法题我打算再单独写一篇笔记来做。
三轮面试下来,刚开始最戳心的当是三面了。后来想想二面也很糟糕,当时不觉得主要是发生得太快,我回答的时候感觉像是实时翻译,也可能是二面和我年纪相仿让我有些心理不平衡。过了一周多了,没有被拒绝和通过的消息,当然我知道基本上是凉了,但总觉得一面还会有一丝希望。本来就有些迷失,现在更多了失望和悲伤。
其实三年来,我并没有停止学习的脚步。我的web前端就有了根本的提高,至少建个动态站点,企业中台是游刃有余的。生产环境用过三大框架react, vuejs, angular,最通透的属react。近几个月来kubernetes,CICD也能够独立设计和架构。后端虽然仅限于asp.net,但在深度上也是有提升的,基本上.net才是我的主战场。所以,我只能时刻提醒自己,不能妄自菲薄,让悲伤侵蚀了自己生命的时时刻刻。但是不足还是要认识到,尤其是前辈们的结晶还是要多去拜读,多去看看技术的理论、历史甚至哲学。我就假想这是从普通程序员再向上的觉醒和开始。
看来又有很多东西要学了。正好最近这个小的练手博客也更新了,用来记录学习的点滴和心路历程也恰好。😇