一直以来,自知心比天高,眼高手低,目空一切。也许看不起或者不在意某些东西,但闭门造车绝对不是好的主意。我经常站在高的角度思考问题,但实际上身处底层,这是无法轻易改变的事实。我会参加一些明知道通过不了的面试,以此了解自己和现实的差距,并由此选择接下来的路。这会是一段艰难的时光。
面试前就明白面试通过不了,其实很离谱。主要是早对一些企业的面试难度有所耳闻,这两年我虽然没闲着,但是都把技能点加在别的地方了,前段时间还在思考公司产品的方向、能不能找到亮点之类,几乎没有过记知识点,没有专注技术细节。这两年的经历让我能够应付目前公司目前职务的工作,以及同级别公司同级别程序员的工作,但是向上跳一个台阶,我是没有信心的。
(1)
经历过一些面试,有一点简单的体会。
招聘的公司分三种。第一种是我需要你拥有哪些技能,然后去判断你是否拥有相应技能。第二种是,我想知道你拥有哪些技能。第三种是,我看不起你,你看不起我。
面试的问题分三类,面试官会问这三个方面的问题:编程语言基础;数据结构和算法;项目经历、系统架构、系统组件。
虽然目前面试次数并不多,但一次次的面试失败还是会让人沮丧。理想的工作到底是什么?薪资?办公环境?工作强度?发展前景?同事关系?不可能样样齐全啊?好的机会够不着,不好的机会又没兴趣。
还是坚持一下,怎么也得面 10 家起吧。
(2)
招聘的公司会更加关注技能匹配情况。
其实对于跳槽来说,现在不太是一个好的时机,一般都说金三银四,金九银十,现在 6 月份大热的天,属于招聘淡季。
我突然想提前换换思路。
之前投简历的全是知名公司,也就是做互联网产品的传统行业。这些公司关注的技术能力也往往侧重常见那一套。在最近的面试中,我最大的感受,就是对区块链的了解完全无法发挥。这样的跳槽,是直接换行业了。
之前对区块链是充满失望的,国内的联盟链基本都不靠谱,即使是蚂蚁链、趣链这样的行业头部,过得也并不好。除了币圈和交易所能挣到钱,其他的企业都没找到商业模式。
一方面,目前基本能认为,我没有去互联网头部企业的机会,而且我已经大概知道这些企业的招聘要求。另一方面,不得不承认,区块链是当前为数不多的 “新” 技术之一。在优先级上,肯定要排在互联网一般企业之前。
所以,我接下来开始投简历到区块链公司,重点寻找有海外业务、海外背景的创业公司,希望从事 Premissionless Blockchain 的开发工作。
(3)
为什么进不了大厂?
去大厂需要回顾基础知识和刷题,这有点不同于我的价值观。所以首先还是想试试,在不刻意准备的情况下,能不能找到合适的公司。
目前在等待某公司的结果,正好工作上也有些事情,暂时不再参加新的面试,看看后续的情况。
(4)
从开始到现在有接近三周的时间,虽然面试的公司数量少于预期,但……也很累。即使接下来会进行其他的面试,也算是下个找工作周期了。暂时先告一段落。
(5)
最近一周时间,又面试了几家公司,数量不多,质量不高,距离上一阶段时间较短,就直接把内容补充在这里了。
经历过上一阶段的面试,我意识到应该摆脱一些错误的思想。希望可以从容不迫地进行接下来的面试。
也许这一次找工作,结束地比想象中更快一些。
记得当年找实习工作的时候,惟一电话面试的大厂就是百度,当时当场就挂了 :)
原计划视频面试,遇到点问题。百度用自家的 “如流” 视频会议软件,页面提示是有网页版本的,但实际上完全不能用,进入页面反复刷新还是提示 “会议不存在”。点击下载如流软件的按钮,网页直接跳到了 about:blank
。我的笔记本是 Linux 系统,如流又没有 Linux 版本,临时改电话面试了。
面试反馈和我的预期基本一致,算法能力弱,语言基础不是很过关。面试过程中能听出面试官模板化的问题,以及敲键盘的声音,猜测应该是有标准化的面试流程,在记录面试结果吧。据说百度有个传统,除非特别差劲,否则一面不会挂人。。。一面的问题确实偏基础,虽然我没有答好。
我明确没有回答出来的问题有两个:
语言方面,我经验确实不多。一直不太关注语言的细节,尤其是具体实现,除非真的用到,即使问 Java 相关的语言问题,我估计也答不上来。这也是我目前的工作很大的特点和弱点,代码量太少了!不过我不太担心这个。
第二个问题是经典的算法题,难度不大,能说上思路,但以前没有写过相关代码,说不出结论,不知道复杂度是多少。后来面试官降低难度,问排序算法有哪些?要的不是思路,是最高最低以及平均复杂度分别是多少。我不知道。
最后提问环节,我问提高技术能力从哪些方面入手?答沟通能力、代码能力,代码写的好技术不会差。
回顾及感受:今年找工作,第一家面试的公司,没有任何准备,基础不过关。面试官人还不错,但面试是有 checklist 的,一直至少目前不太喜欢这样的面试标准和流程。从意愿上,也没太期望一步到位,到所谓的大厂,跨度有点大。
(一面)
视频面,面试官没开摄像头。
比较重视 Go 语言基础,问怎么退出协程、向已关闭的 channel 里写数据会发生什么。
算法题相对简单,反转二叉树(共享屏幕写代码)、判断链表是否有环。判断链表是否有环追加了第二个问题,环的起点在什么位置?有印象做过但不是很清楚,回答快慢指针相遇的位置。
最后提问环节,我问提高技术能力从哪些方面入手?答去模仿、造轮子。关注独立工作的能力。
(二面)
手写 LRU,要求查询和写入时间复杂度都是 O(1)。不会。面试官比较和蔼,全程在提示。仍然不会。
最后提问环节,我问比较看重哪方面的技术能力?答学习的热情,Geek 精神。
(终面)
表现最差的一次。
一开始网络信号差中断了几分钟,直接打乱自己的节奏,变得慌了起来。想说的东西很多,却反而让说话没有条理。
问,在做的工作中,认为最有成长的事情是什么?其实太多了,没能清晰条理地说出来。
问,如果重新做一次之前做过的工作,会有哪些改善的地方?答的比较差。也是第一次到终面,面对高级别的面试官,面对这种类型的问题。
后来写转置矩阵的题目,实在是太简单的题,结果卡在 Golang 语法上好几分钟。
后来问你平时写测试代码吗,我竟然说工作中写的少。
最后提问环节,我问比较看重哪方面的技术能力?答这个问题太宽泛了,人的能力是多角度的。
(HR 面)
大姐姐笑的很欢……
现场面试。
办公环境优美。
技术栈落后互联网多年。
面试结束时,面试官建议我说,朝着一个技术细节深挖下去。
回顾及感受:属于互相看不顺眼的情况,问了一些很 low 的问题。如果脱离面试场景,那样的面试官是没资格评价我的技术能力的。
现场面试。
一面白板写算法,是一个温柔的小姑娘。
二面白板画架构,重视对系统组件的理解,出题设计一个即时聊天系统。表现比较差。第一次遇到,稍微有点懵。也确实没有太多东西可说。
回顾及感受:能力不匹配,对方期望能够独立架构和运维整个后端服务的人,我目前架构经验比较少。突然想起来二面的过程中,面试官竟然说 WebSocket 只能在局域网通信,不能在公网通信。我当年没出学校的时候,就看着教学视频,做过基于 React.js + Node.js + WebSocket 的手机端的实时聊天 APP。估计面试官的技术能力也挺水的。
(部门一)
电话面试。
只问语言基础。全部不会答。
回顾及感受:原来火币也是血汗工厂,至少我面试的部门是。同样属于互相看不顺眼的情况,面试官自己说,除了语言基础,就不知道问什么了。算法呢?项目经历呢?区块链呢?搞笑呢?
(部门二)
这个部门的面试官态度很好,随便问了问,说是火币集团下做联盟链业务的,不会接触到币圈相关的业务,还说我的能力挺符合他们需求的。虽然我确实没兴趣。
现场面试。
面试结束时,面试官建议我说,要关注技术细节。
回顾及感受:面试官性格还可以,技术上不敢恭维。和知网的面试官感觉类似,属于会根据学历给人贴标签、有心理预期的人。面试半小时,当场出结果,小公司模式,就是让去也不敢去啊。
去哪儿网是这次找工作,第一家约面试的公司,后来时间上和百度撞了,推迟一周,面试官临时有事,推迟一周,第三周面试官又有事,我说直接取消吧。
主动放弃这些面试机会。流程化的面试,就不再继续参加了。估计也过不了 :P
问了一些语言基础和计算机基础。
问面试官,该从哪些方面提高技术能力?答深入语言基础、计算机基础,学习途径看书看博客。
(一面)
小伙子水平不行啊。小公司和大公司的区别一下子体现出来了。
了解到岗位是区块链钱包开发,做对接加密货币的账户和资产管理服务。
(二面)
面试官级别稍高,和一面面试官的反差太大了。
电话简单了解了一下情况。
很快结束,方向完全不匹配,面试官临时看简历,一开始就是放弃的。