心情

感觉这篇年终总结拖了很久,一直没想好怎么写。碰上现在肺炎疫情弄得人心惶惶,大家都躲在家里不敢出来,我正好也抽空把这个作业给一并做了吧。

工作

寻工启事录

今年最大的变化要算工作变动了:从深圳来到了北京(这中间也是颇多折腾,但大多属于个人琐事,所以在这里也暂且略过)。其实在上一家公司其实做得还算开心,不紧不慢,技术能力也得到了一定提升。但是后面由于公司业务实在不行,个人可发挥的空间越来越小,再加之团队变动,索性就想跳出来看看。不得不说,北京互联网提供的机会比深圳要多太多了。有针对性面试了几家后,收到了几个独角兽公司的 Offer。再三思考之后,接受了其中最大一家独角兽的 Offer。心想着,从深圳千里迢迢来到北京,目的就为了开拓视野,增加后续技术生涯更多的可能性。

在找工作的过程中,我发现现在互联网公司在面试人的过程中存在不少让我不太适应的地方。比如我最不喜欢的手写代码,又或者是叫 Whiteboard Testing。 Whiteboard Testing 源于 Google,目的是为了测试候选人的代码能力,本意是好的,但是实际操作过程中充满了问题(不一定是不好的问题):

  • 是考察代码实现能力,还是考察算法能力 ?过分考察不常用算法相当于刁难候选人;
  • 面试官理应循循善诱,在重点看候选人思路的过程,要尽可能引导候选人找到解题思路,但是这对面试官自身素养要求太高,大多数面试官并不具备这样的能力;
  • 如何筛选刷题者和非刷题者 ? 中国互联网公司所用的白板面试题大多非原创,都是从题库中(LeetCode)按照难易程度和类型选几道出来。这样就避免不了有候选人会提前把所有可能的题目都刷一遍,这样面试效果就要大打折扣。但是听说北美求职者大多需要刷题,这也成了一股风气,所以最终 Whiteboard Testing 相当于驾校考科目一。大家都经过刷题训练,然后面试官给几道题目考察一下大家。刷题训练对工程师的技术能力提升还是有一定帮助,所以这件事也称不上好坏,看用什么角度去看;
  • 手写代码的体验实在太糟糕,为啥不给候选人一个专用平台进行写代码 ?这一点上我看到不少公司正在改进,相信未来应该有更好的解决方案;
  • 大多白板面试题与实际工作要解决的问题差别较大,有可能候选人更擅长解决实际问题,而不习惯做白板面试题(比如我就属于这一类),是否要对这类人选做一定的适配 ?比如有公司给出的代码题就是花一个星期做一个真实场景的小服务;

总体来说的,手写代码这种模式受到互联网公司的青睐无非就有就是:

  • 标准化带来的快捷。现成的题目和标准答案有助于快速筛选候选人,增加面试效率;
  • 考察的题目已经过高度抽象建模,便于面试官和候选人之间的沟通更聚焦,减少一些因领域知识带来的信息不对称;
  • 头部公司的模范效应(Google,Facebook 等);

所以在国内公司,除非你是非常对口的专业人才或者级别较高的管理人才,否则总免不了几次或难或易的手写代码面试。在这一点上,除了保证自己尽量去适应节奏,似乎也没有太多更理想的解决方案。

在找工作的过程中,我发现行业对于中高阶工程师的缺口依旧很大,高水平的技术管理者更是凤毛麟角。尽管如此,行业对于年龄的歧视还是广泛存在。虽然我还不属于年龄被歧视的范围,但是从面试过程中还是能感受到面试官对于候选人年龄上还是有一定的倾向性(同等能力上,优先选择较年轻的人)。其实年龄歧视在各行各业都存在,只不到到了 IT 行业愈加明显而已。这是一个很复杂的社会问题,三两句很难讲得清楚。但是,中国青年在年龄上承载的东西实在太多,以至于大家都活得普遍不开心和受拘束。

总而言之,作为一个工程师,除了保证自己专业能力够强够硬的基础上,还要不断磨练自己的软实力,比如沟通表达能力、项目管理能力等等。工年几年来的感受是:只要技术基础足够扎实,很多新技术和问题只要用心花点时间都能够掌握和解决,这中间并不存在太多高深莫测的东西。但是越到职业的中后期,软实力就愈发重要,有可能最后人与人之间的差距就在于软实力上:有些人就是总可以把事情做成,而有些人就算技术很厉害,但事就总做不成。因此,只要软硬实力足够强,年龄其实并不是一个问题。

新工作环境

新工作地点位于帝都 CBD,据说是宇宙中心的宇宙中心(之前工作地点位于也称为宇宙中心的五道口)。这里工作的大多数都是西装革履金融从业者,平日吃饭也常能听到一些几个亿,几十个亿的资本传说。我们一群不修边幅的工程师混迹于此,和如此洋气的工作环境有些格格不入。

新的工作内容主体方向并没有太大变化,还是在云原生这个大领域,但是更偏安全方向。花了大半年时间,把云原生安全的几个方向都摸索了一遍,确定了几个方向打算尝试一下。新团队成员的技术积累比以往待过的团队都要强非常多,期间也了解到了不少很有意思的领域。

这期间,除了把之前对 Kubernetes 和 Istio 的一些理解不断加深外,对 Kubernetes 生态的安全也有了更深的认识:

  • Google 的全站加密设计
  • Google 的 BeyondCorp 设计
  • 安全容器
  • DevSecOps
  • Infra As Code
  • Policy Engine

等等。虽然深度上没有太多长进,但是广度上比之前有了较大的提升。

吃喝玩乐

今年由于工作地换到了北京,离开了香港这个廉价便捷的旅游交通枢纽,日常旅游顿时变得不是那么方便。

今年和女朋友玩了 3 个地方:

  • 马来西亚沙巴

    感觉中规中矩,没有太多留下深刻印象。风土人情和自然景观和大多数东南亚国家差不多。吃了顿大海鲜,过足了海鲜瘾。

  • 俄罗斯海参崴

    海参崴在 100 多年前属于中国领土,后因中俄战争割让给了俄罗斯。经过百年变迁,海参崴早已没有任何中国城市的影子,留下的只有东欧风情。之所以选择海参崴旅游,一是它距离北京非常近,二是对中国免签(当时时间紧张,来不及办理其他国家的签证)。海参崴是一个很悠闲的俄罗斯城市,在领略俄罗斯文化的同时也顺便以一个相对较低的价格住了一个靠海公寓。

  • 塞尔维亚贝尔格莱德

    塞尔维亚是一个很小众的旅游国家,以前属于南斯拉夫的一部分。大多数中国人对贝尔格莱德(塞尔维亚的首都)的了解源于当年美国轰炸南斯拉夫的中国大使馆。在首都闲逛的时候,当地仍旧保留一部分当年轰炸的建筑作为历史见证。塞尔维亚虽说是衰败没落的东欧国家,但是感觉生活质量还是挺不错的。在塞尔维亚旅游,主要还是文化游,去逛逛当地保留的城堡教堂等历史遗迹。更舒服的是,我们还去了多瑙河畔的泽蒙小镇,绕着小镇逛了一圈,还顺便在多瑙河边上吃了顿饭。

    值得一题的是,塞尔维亚也是特斯拉的故乡,当地还特地修建了一个很小的特斯拉博物馆,专门存放特斯拉生前物品和一些后人仿制的特斯拉发明。塞尔维亚对特斯拉的诞生相当自豪,当地的货币也用特斯拉作为人物形象。整个博物馆最有意思的环节当属现场演示一个经典电磁实验:让观众拿着荧光灯棒,在高压电线圈的电磁波辐射下,发出淡淡蓝光。

    塞尔维亚感觉也是一个很悠闲的国家,城市基础设施很完善,生活质量说实话不必北上广深差。闲游数日,也不失为一个度假的好去处。

读书

今年各种变动,导致正经读完的书很少。地铁上翻完了《美国陷阱》,深知美国作为一个世界头号超级大国,很擅长使用域外执法权来达到本国利益,华为事件可见一斑。达里欧的《原则》翻看了 50%,其中的原理也差不多明白,并不感觉是一本可以吸引人的书,但是一本有意思的经验集。至于读者能从这些所谓的「原则」受益多少,那就是见仁见智了。

技术书籍看得零零散散,不成体系,暂且不提也罢。

总结

2019 年对我来说实在充满了太多变化,但是各种变化都朝着一个相对较好的方向前进。我对 2019 年智识上的收获很不满意,读书甚少,而且技术也没太大的提升。生活上虽不够稳定,但也是有滋有味,开开心心。2020 年是我而立之年,但我自认为我早在很多年前就做到了「而立」,所以对此并没有太大感触。按照自己的想法活着是我一直以来的目标,现在依然是。一些世俗的目标,我发现只要稍加用心也可达到,不应该作为束缚自己的枷锁。

对于 2020 年,我的计划就是保持稳定的发展态势,不断地给自己提出新的目标,不给自己设上限。我感觉我心态仍很年轻,依旧保持着 18 岁时的好奇心。勇敢地面对未知的挑战,稳定地发展工作和生活,这便是我 2020 年最大的心愿。