这个算是换工作系列最后一篇了,主要是想说下找工作过程中的一些感想,比如公司对于学历的看法,有些公司面试为什么相对来说是面试造核弹、入职拧螺丝以及我对这些东西的理解与看法。
在准备好换工作之后其实有面试过几家公司,包括大的小的,直接远程电话面试就可以搞定的,以及需要赶过去现场面试的。之前最开始面试的一家公司是大华,就是做安防的那个大华,满打满算是一轮电话面试,一轮笔试,两轮现场面试。电话面试基本上就是问下你做过什么项目,大体描述下你的项目内容之类的,我遇到的都是这样子类型,主要目的应该就是先看下你是不是真的有做过些东西,能说出来个1234,否则就不用现场面试浪费大家时间精力了。所以电话面试基本上就不着重描述了,因为都大同小异,除了有一个,我就特别说下。
电话面试就不说了,就是问下技能树、做过的项目。现场面试的话会先给你做一份笔试题,笔试题目的内容看起来还是跟校招时候我见过的差不多,也许是他们把我按照校招的标准来看待的?又或者是笔试就是这些套路。基本的东西有指针的运算、多线程编程题、链表排序题、变量在内存中的存储方式、基本的计算机概念。
其中笔试比较难的我觉得有那个链表排序的问题,需要你手写代码出来。其它的对于工作一段时间之后的小白来说难度不大,毕竟也只是嵌入式的题目,没有非常高大上的算法复杂度分析,当场手写一个堆排序、KMP 算法之类的东西。
由于会安防上面会涉及到视频数据流的编码传输,中间就问了些 H264 的基础概念,我之前有了解过一些,但是现场问的一个概念我是没有了解到的,因为平时我的工作没怎么涉及到 H264 码流的处理,于是就直接说了不会,然后就是根据自己写的项目内容来问了,还是必须想强调下,自己写上去的项目即使你不是作为中坚力量的存在,也必须要保证你自己对里面的所有东西都了解的非常透彻。就我的经验来讲,很大一部分时候,自己做的东西都是整个项目里面的一部分,并且很多时候自己也只关注自己的那一小块,整个项目整体基本上没有去关注过或者没有那个精力全部覆盖一遍,我觉得这是一个比较偷懒的行为,因为全部撸一遍确实很累,但是我觉得很有必要,不管是对于这个项目的贡献还是对于自己能力的提升来讲都是很不错的。
后面第一轮的面试官问完问题就换了下一个(第一个貌似是部门里面的主管),第二个看起来就像是某个技术负责人或者是技术比较优秀的哥们,他上来就也是先介绍下自己做过的某个项目,越详细越好,于是就又是一轮新的介绍,然后他就问了一个问题:最新写代码比较多还是解问题比较多,挑一个来讲讲。我说最近解问题比较多,于是就挑了一个我觉得涉及面比较广,比较难以解决的问题来详述。我觉得这个过程就是看你对工作内容的理解掌握程度,看你能否说的清楚、逻辑是否能够理顺以及你自己是否有自己的见解。
再接下来就是 HR 面了,主要就是说下你为什么换工作啊,期望薪资啊,有没有想更多了解的东西啊等等,比较常规,按道理社招来讲到这一步已经算是比较稳了是吧,但是我第二天收到了面试未通过的消息,当时还是一脸懵逼的,因为面试过程中我后来也复盘了下,并没有比较差的地方啊,后来想了想应该是因为期望薪资的问题,但是我也没细问,因为想去那里的主观意愿不是非常的强烈,就当作是一个锻炼了,毕竟自校招以来,已经有段时间没有接触过面试了,多少有些套路有点生疏。
我记得的有中软国际、百钧成、诚迈科技、中科创达等等一大票公司。我开始的时候也不知道,后来才发现,卧槽好多都是华为的外包公司,有的是专门做华为外包的,有的是某几个部门做华为外包的,说到这里不得不对华为表示敬意,华为一个公司带动了多少周边产业,养活了多少人员啊。并且还有一个,很多的外包公司都是上市公司,也算是比较牛杯的一类了。
具体是哪个公司我忘记了,当时只有一个电话面试,问了我一个问题,就是:指针与数组名有什么区别?我就按照我自己的理解说了一遍,然后面试官就开始问了其它的问题,诸如你喜欢什么样的运动啊,平时有什么爱好等等。我好奇问了下,面试这就结束了吗?对方说是的,你看你什么时候过来这边工作?(因为薪资什么的之前 HR 有给过一个大概的数目)。
咳,这我也不太敢去哈,因为总是给我一种比较随意的感觉,虽然我校招被录用的过程也是很魔幻随意的,但是毕竟还是校招时候,没太多选择。这个给我的感觉就是很草率,关键这个不是重点,重点是我不是很了解对方公司的文化、技术等等,这么果断让我不太踏实,如果是我和对方合作了很长一段时间(技术合作之类的),双方认可的话我也就不会在意这个了。
总之外包类的公司会有不少都是基本上直接让你过来那种,我个人呢因为各种各样的原因吧,不喜欢去外包的公司,可能没有那么夸张,但是我可能深受网络上对于外包公司看法的影响,这个也没办法,于是这种类型的公司此后就作罢,暂时不再考虑。
高通的话最开始是通过一个猎头的关系来的,最开始的职位是 AE/CE 的职位,想着毕竟是高通,可以先看下情况,于是在很早的时候经过一轮电话面试,然后约了周末去那边现场面试。
本来有准备了笔试题,开始的时候经过了面试,问了不少的问题,我个人觉得对于那个技术方向来讲,这个面试过程很不错了,问的还是比较深入细致的。最终笔试也就没让我做,可能是觉得没必要哈,意思大概就是我的水平他们差不多已经了解了,感觉还可以,没必要再笔试了。
但是这个职位我仔细问了下对方具体的工作内容,最后我觉得那不是我现阶段向往的类型,所以虽然是高通,但是我也没有选择过去,就放弃了这次机会。
后来的后来,猎头可能觉得这小伙子技术看来还可以哈,就又推了一个 RD 的职位,本来我没打算再去参加面试什么的,因为那个时候我没想要换工作,但是后来阴差阳错因为一些原因就选择了试下。
有好几轮面试,一轮笔试,笔试题我觉得比较难,有递归、C++、指针、多线程、动态规划(你没看错,就是动态规划)、C语言基本概念等等。题目考得还是比较细致的,我有很多都不确定答案,一些是根本不会,比如大部分C++的,还有那个动态规划的,还有一些是因为递归太多,我无法确定人工计算出来的结果是否正确,但是思路我确定是对的。
面试好几轮轮番轰炸的赶脚不是很好,因为很多问题你得一遍又一遍的去重复回答,这就造成后期你的心态可能会不稳定,然后某些比较深入的问题就可能会因为心里面的烦躁而出错。这几次面试都会有现场手写代码,每一轮口头面试都有,不过我基本上都写出来了,涉及内容包括:链表基本操作、字符串基本操作、简单的排序(快排)等。
RD 的职位面试是我迄今为止经历的难度比较高的,我觉得干货比较多的一个面试经历,还是蛮有帮助的,碍于我现在就职高通,面试更多的细节也就不想过多描述了哈。
不管什么行业,学历永远都是很重要的一隅,它决定了你的起点下限,并且很大程度上决定了你能达到的高度,我经过校招到现在对学历的看法有了一定的改变。
在校的时候,因为我本身是本科,算是能够达到招聘市场上面名义上的最低要求,校招之前就听说很多大公司会卡学历,我本人对此非常不屑,难道顶尖的学校里面就没有学渣了么?为什么要对我们次一点的学校学生这么不公平。
我后来的看法就有所改观,基本上可以归结与下面几类:
假如你真的天赋异禀,但是仍然学校出身不好,可能是因为你志愿报错了,可能是因为你在进入大学之后才觉醒,可能是因为客观条件等等等等。然后觉得自己被不公平对待,这个如果摊到我身上我也会觉得很不公平,我也会想不通的。
但是我觉得对于大部分情况下来讲,你觉得自己学历不高受到的就是非常不合常理的不公平待遇,就是因为你的错觉,或者说你的认知不够导致的。更高的学历,大概率代表更强的学习能力、更完善的世界认知、更好的社会资源、更强的自我升级修复能力。
退一步来讲,如果自己真的很牛逼,但是不管怎样,已经在一个比较低的起点了,那么请不要放弃努力,尽自己的一切可能去往前冲,会有一个好的回报给你的,我确信这一点。
我觉得现在面试除了考察我们的技术能力之外,更多的是要考察你这个人本身,包括思维能力、性格、认知等等。
问一些工作基本上用不到的数据结构与算法,请问你是否感觉到不舒服,这什么鬼,我的工作会需要用到这些吗?我可以提供一种视角来看待这类事情,虽然它不一定对。
问的那些东西,如果你很感兴趣,不觉得很扯淡,并且回答了出来(大部分时间不会很难的),是不是可以认为你这个人在性格、思维上更加接近面试官,也就是说你们能够达成良好合作的可能性是不是会更高,假如你觉得这个实在是太扯淡了,那么是不是一定程度上说明你的性格看法与面试官或者这个公司内部的氛围不符,那是不是就很可能达不到良好合作的这个程度。
况且,据我的观察,那些不觉得这些东西扯淡的人通常工作上面都更加能够折腾,能够答对并且有所扩展的人在工作上面会有很多细节要更胜于他人。不过这个这是我实验性的结论,完全不代表事实,你也可以觉得我在扯淡。还有一些可能看起来与技术无关的东西,也会帮助了解一个人的性格,从而达到找到正确合作者的目的。
以上是我作为应聘者所总结出来的一种看法,抛砖引玉,仅供参考。
下一阶段我的工作目标、生活目标基本上还是比较明确的,但是博客、文章主题什么的我发现暂时没有什么头绪、方向了(时间、资源上的影响),所以可能会有瞎扯、极具个人风格化的东西,权当我任性一把了。