当前位置: 首页 > 科技观察

作为小米面试官,原来这种学生最吃香!

时间:2023-03-15 08:40:37 科技观察

大家好,我是楼仔!你一定看过很多文章,都是教你如何面试的,比如很火的《吊打面试官 xxx》系列,你觉得掌握了某个知识点,就真的能打败面试官吗?来打我试试?现在是九月中旬,秋招如火如荼。在过去的几周里,我还采访了十几名学生。我的第一感觉是今年的就业形势比较严峻,主要体现在各大公司招聘名额的缩减,然后我也觉得今年的学生参与度比较高!以下是我的一些面试感受,仅限大厂。如果是小厂,就没必要这么高的要求,但是如果你什么都掌握了,那小厂就真的是可以自由进入了。1.代码检查如果你想进大厂,这是一道不可逾越的坎。因为所有的面试都是提前批下来的,没有通过笔试,一方面,算法肯定是我们考察的重点。面试官一般会问2道难度系数适中的算法题,时间不要超过40分钟,比如重排链表。一般要求直接写进阶版代码,即空间复杂度O(1)。首先考察算法思路。在写代码之前,我们会让面试官先思考5分钟,然后说说思路。牛头要是错了,大概率就pass了。直接给出最佳方案。开始coding吧,时间控制在15-25分钟以内。在线编程一般使用牛客网,需要代码能够正常运行。如果代码写好了不能运行,印象会大打折扣。但是在线编程有个问题就是不能调试。遇到问题只能用眼力检查。如果代码是手写在纸上的话,个人觉得难度稍微小一些,因为只要画出来就行,不用考虑能不能运行。好的代码质量也能加分。下面是我们采访的一位武汉大学的学生写的。方法封装的很好,可以直接运行。公共类解决方案{publicvoidreorderList(ListNodehead){if(head==null){return;}ListNodemid=middleNode(head);列表节点l1=头;ListNodel2=mid.next;mid.next=null;l2=reverseList(l2);mergeList(l1,l2);}publicListNodemiddleNode(ListNodehead){ListNodeslow=head;ListNodefast=head;while(fast.next!=null&&fast.next.next!=null){slow=slow.next;快速=快速.下一个.下一个;}返回缓慢;}publicListNodereverseList(ListNodehead){ListNodepre=null;ListNodecur=head;while(cur!=null){ListNodetemp=cur.next;当前.下一个=前;前=当前;当前=温度;}返回前;}publicvoidmergeList(ListNodel1,ListNodel2){ListNodetemp1;列表节点temp2;while(l1!=null&&l2!=null){temp1=l1.next;temp2=l2.next;l1.next=l2;l1=温度1;l2.next=l1;l2=温度2;}}}有粉丝可能会说,你这个问题有点难。其实前两年我面试基本上只考察链表的反转,但是今年和尚太多,稀饭太少了。我们不增加难度,那怎么区分呢?2、面试环节,如果算法题两道都过了,或者一道过了,另一道因为时间紧没写,但是你的思路没问题,就进入面试环节。可能有粉丝会出来说,“如果我第一道算法题都没过,就完了怎么办?”其实为了不让面试官难堪,我们至少会花30分钟,后面还会象征性的问一下基础知识,由于大部分时间都花在写代码上,所以只有25分钟左右的时间来考察知识点分,所以面试问题可能不会太多,但是考察会比较有侧重点,比如MySQL,我们不会问四个事务的隔离级别,因为这个大家都知道,直接问你什么是a幻读?幻读的原因?如何避免幻读?需要什么锁来避免幻读?如何手动加这个锁?这些问题基本上都是由浅入深,能做到的同学不多回答最后一个问题,如果你连MySQL的事务隔离级别都不知道,基本不会问你MySQL,直接进入下一个知识区。再比如Spring,我们会问你是否了解circula依赖项?Spring是如何解决循环依赖的?为什么使用三级缓存而不是两级缓存?可以直接去掉二级缓存吗?如果不能删除,为什么?三级缓存里存的是什么?如果你回答对象工厂,这个工厂里存的是什么?大多数学生只能回答前几题,能全部回答的更是凤毛麟角。对于Java并发编程,我们会问线程池的工作原理,然后详细考察拒绝策略和任务队列。如果这个检查通过了,我们会问几个关键字的内存屏障,重排序,内存模型等相关知识。当然,我肯定不会随便挑什么知识问,我会先问面试官哪些知识比较好,不限于设计模式、MySQL、Redis、操作系统、计算机网络、Java、JVM、Spring、Messagequeue和其他相关知识。如果你说xx的知识还不错,那我就对这块知识进行深入的考察,为你不断的探索。3.个人意愿个人意愿对面试官来说也很重要。如果你直接问他,你想来小米吗?这不是废话,我是来面试的,我肯定是要过的,就算我不想来,我也会说好,拿offer去找offer,不是很好吗?我先看看面试官的出身地。如果简历上没有写,我会问的。比如武汉小米。如果老家在湖北,或者老家在武汉,那是非常加分的,因为这种学生留在武汉。概率非常高。还有那种纯米粉。我很喜欢小米的产品,这也是加分项。不过,我也遇到了一个本来不是武汉人但非常想来武汉小米的同学。他给了我两个理由。首先是他在武汉读了本科和硕士。他在这里呆了7年。最重要的是她的女朋友是武汉本地人,你说这种情况,你能不舍得留在汉地吗?写到这里,是不是又学会了一招?如果老家不在本地,谈了N年的女朋友在本地,那不是加分项吗?没有女朋友怎么办?你就是要成为新人,这部分我们已经介绍过了,如果你还不明白,那么我会的。..喷你的旧血。..4.注意事项面试时不要紧张。其实之前遇到的面试官人品都很好。他们不但不会刁难你,还会慢慢引导你。那种面面相觑的面试,我遇到过这种,当时就直接FMD了!在面试过程中,一定要实事求是。如果你不会做,你可以直接sayno,这样面试官就会换个问题来考察你。如果你说你知道的比较多,但是一点深度的问题你都答不上来,面试官可能会觉得这就是你掌握的知识水平,其他的估计就更差了。学会引导。不是所有的面试官都像我一样。他们会先问你哪一块知识掌握得比较好,然后再深入挖掘,因为这对面试官的水平要求比较高。很多面试官会上来问你会不会什么东西,比如MySQL,然后再问。如果恰好触发了你的知识盲点,你可以适当引导面试官,让他问你熟悉的领域。注意你的个人形象。面试过程中,有个同学不停的清嗓子,然后吸着喉咙吐,声音很大,思考的时候不停的在那里嘀咕,也会降低印象分。985/211学校确实会优先考虑,因为录取的人不多,所以基本都是双985和211选的,专业基本都是计算机相关的。如果你不是计算机专业的,但是学校真的很好,有自己的技术。还将考虑广度和深度。5.我写到最后面试其实是双方的博弈。前提是我肚子里的货够多。记得当年我被学校录取的时候,虽然不是Offer收割机,但是还是很不错的。那么今年的就业形势就更加严峻了。大家一定要提前做好充分的准备。有什么问题也可以加我微信进行交流。最后祝大家都能拿到自己想要的offer,加油!