2018年终总结 与 2019新年展望

Merry Christmas!

离2019年还有5天,2018年就要结束了。一年过的真快呀。不知道你的2018年怎么样呀?一年前制定的新年计划实现了多少呢?

我曾在2017年的新年计划中写下这样一段话:

最近刚读了蔡东藩的五代史, 了解五代混乱的历史, 感叹大多数主子昏庸误国, 英明的主子也多少有瑕疵的同时, 也将心比心, 自己是否是一个英明的帝王. 答案却是否定的. 我是一个懒惰的人, 没有意志力的人, 不喜欢批评, 只喜欢表扬. 如果把自己放在帝王的位置上, 一定是个亡国之君了. 想想还是很可怕的.

当时真的是处于人生中一个非常没有自信的阶段。大三的寒假,刚刚被编译虐了一学期,面临未来人生道路的选择,自己完全没有信心把握自己的未来,甚至对人生的职业规划完全没有一个清楚的认识。现在近2年过去了(当时是农历新年写的),不敢说我的境遇好了多少,但起码对未来,对自己有了更清醒的认识。自信心也逐渐建立起来了。
现在如果重新回答17年时的问题,我会有不一样的答案。

将心比心, 自己是否是一个英明的帝王。
我想,我可能会成为宋仁宗那样的君主。虽然在唐宗宋祖、秦皇汉武看来,完全没有帝王的权威。但宋仁宗是真正的仁主,他在位的40年,北宋人才辈出,经济也发展到古中国的顶峰。他是一个读书人所期待的最理想的皇帝。感兴趣的同学可以更多地了解一下那个时代,那个皇帝。类似的帝王还有汉文帝、明孝宗。“仁”是他们的共同特点,也是我给自己的一个很高的评价。

回顾与展望

新的一年,既要坚持既往好的传统,又要摒弃坏的习惯,培养好的习性。

坚持一切以找一份好的工作为中心。

2018年我为此着实付出了不少努力,包括3次实习和多次实习面试。
3次实习分别是,17年9月到今年3月的偶数科技的云平台开发工程师,4月到6月在快手的推荐系统算法工程师,还有11月到目前的文远知行数据平台开发工程师。3次实习极大地让我接触到业界的需求和实际工作,提高了我的代码能力,最重要的是,帮助我更好地认识自己,从而作出合理的职业规划。
实习面试有:快手、face++、Microsoft、小红书、景驰、商汤。成功率大概只有一半,而且成功与否更多地和对方缺人程度相关。

来年要准备的:2019年暑期的实习,希望可以找个大厂(最好是跨国外企)历练历练。2019年后半年,有微软的冬季实习可以争取。已经得知Google的第一次电面会在一月末,好好为之准备吧。微软的暑期实习还没有消息,改天找师兄打探打探消息。

根据我本身的兴趣和市场需求,我确认后端的软件工程师(高级点的称呼叫做架构师)是我今后的职业方向。
因为经过4年半时间的探索,我发觉我对计算机系统是真的感兴趣,比如数据结构、计算机组成、操作系统、编译器、计算机网络这些基础设施。相反,对计算机科学不是很感冒,尤其是最近几年特别火的CV/NLP,经过简单的尝试(其实也就是上了斯坦福的机器学习网课和视觉的网课CS231n),我认为虽然这些研究确实很震撼,也挺好玩的,但比不上计算机系统带给我的快感。
其次,从市场上的需求来说,软件工程师(SDE)的需求永远是最大的,虽然今年所谓的算法岗很火,但其实这个岗位从名字到工作内容都很可笑,明明就是不同领域的SDE嘛。弄的名字听起来和科学家一样。说到名字,我想起了MIT对CS的解释

其实CS(Computer Science)根本就不是Science,更多的是Engineering或是art。
CS61A

根据自己的爱好和性格,我想外企是一个更适合我成长的平台。一是不用加班,比较强调work-life balance。虽然比不上美帝的公司,但比起国内互联网公司要强好多呀。二是可以专心写代码,享受coding的乐趣。外企相对来说氛围更宽松,技术气息也更浓厚。当然选择外企也就意味着放弃国内互联网公司快速成长的机会,财务自由的可能。我想我完全可以接受。我本身并不是一个野心很大的人,能够开开心心工作,享受coding,回家后陪老婆孩子,就是我向往的生活了。
尤其是在文远知行实习的这段时间,见证了众多的大佬和同事为了事业和财富而奋斗,却置家庭和生活于不顾。这样的人我是很佩服的,也尊重他们的选择。但我做不到,这不是我想要的生活。我需要从家庭和生活中汲取能量,才能更好的工作,我也想活的时间更久些。
这样的讲起来的话,其实技术移民可能是更适合我发展的一条道路。不过我现在对相关信息了解的还不清楚,留学、找工作、抽签证、绿卡这条更便捷的路线也已经与我无缘了。

说到留学,还有一个问题我想要回答一下,要不要读博。我的观点是要的,但什么时候读、在哪里读就很值得考虑了。

首先,因为我认为我对计算机系统是真正喜爱的,自己也有耐心深入地研究,读博之后无论是继续从事开发工作还是教书育人,都是不错的选择。我本身很看中自己的impact,如果因为自己可以给社会或他人带来一点积极的影响,我就很开心了。

其次,获得博士学位的过程本身是一种很系统的科学训练。这种训练之后不仅可以用在科研上,对解决问题也有帮助。这也是快手的大mentor的观点。

最后,博士学位本身的价值。作为一个普通人,博士学位的好处远大于一个牛人。无论是可以有个title,还是别人的重视,都是无形中的价值。

那什么时候读呢?我认为当然越早越好,但是宁缺毋滥。所以,我需要先工作若干年,然后才能找到好的机会,去读名校牛导的博士。争取40岁之前获得博士学位吧。

2019 resolution

之前总结和展望了一大堆大道理,最后却没有具体的计划和愿景?还是需要有的,虽然我认为上面那些对自己的认识才是更重要的。这些resolution很具体,是最理想的情况了,如果最后能实现80%,我就很满意了。因为具体的计划受影响的因素众多,也有自己不能加以控制的。

  • 健康的身体和良好的生活习惯。老生常谈了,但每年还是会给自己提个醒。因为你跑的速度已经比不上同行了,但你可以比他们跑的时间更长呀。
  • 一段大大厂(大师兄的说法,即指谷歌、微软等大厂,与BAT区分)的暑期实习,争取获得良好印象,得到return offer
  • 一段海外的交换经历,获得对进入外企有用的能力和经历
  • 进一步深入计算机系统 和 算法上的进阶。一方面是为了兴趣,另一方面更重要的是提升专业技能,为找工作做准备。
    • LeetCode 300+题。今年做了115道,虽然绝大多数都是Easy难度的题目,明年的努力方向在于可以在限定时间内解决Medium的题目。
    • 书籍:
      • CTCI(Cracking the Coding Interview),美帝程序员准备面试的神书
      • 剑指Offer,国内程序员准备面试的神书
      • CSAPP,CMU镇校神课及其参考书
      • SICP,计算机程序的构造和解释
      • C++ Primer, 精通一门面试/工作语言
      • 算法 第四版,基础算法
      • 算法导论,同样是算法
      • 编程之美,面试和算法
      • 设计模式,OOP
    • 多参加些实际的面试