我之前没有很多前端经验,导致面试过程基本就是算法题加上之前的机器学习项目扯皮,总体体验还不错,面试不难,至于为什么挂掉我也不清楚(可能前端经验太少),具体等他们的反馈邮件吧。
每个人面试都不一样,我就不写的太详细了。
一面:
谈一谈项目,代码怎么测试,遇到的问题和解决方案
代码题: 大致意思是将ip地址转成数字,比如(192.128.0.1转成unsigned int) (腾讯经典面试题)
然后根据这个代码不断优化(排错和自动测试,减少复杂度,不难),代码几分钟写出来,然后考虑各种可能问题。
过程一直被这个面试官夸,项目被夸,我有点飘
二面:
是个女面试官( 声音好听,普通话标准,i了i了 )。谈了谈机器学习项目,怎么跟同事沟通,问我前端经验,我没有,只说了一些概念,她安慰说没关系,不关心你之前是不是有前端经验(我假装信了,其实还是挺看经验的)
代码题: 洗牌算法 random就可以,可能前一天晚上失眠,导致我头昏,思路说完之后,墨迹了半天写出来
三面:
跟之前一样,问我为啥选前端,问项目,解释一些信息论和数学概念(固态加密之类的),反正看简历来的,遇到他不懂得就问你,其实他可能懂。。。
代码题,就是变形快排,心中有模板,几分钟搞定。然后就是不断优化,打表优化。。。
整个过程就是问代码,有几十万条数据你怎么弄,你的方案有什么弊端哪里可以优化,数组范围是多少
四面:
英文面,之前问HR说不会有英文面,就算有也是简单的自我介绍,谈谈项目之类的。
不过HR估计没经历过英文面。。。全程跟其他面试一样,不过是换成了英文。对面是个法国人,他要是不说french我还以为是印度人。。。
上来自我介绍(唯一准备的),然后问为什么选前端,项目经历都是机器学习,还聊了点别的,不过主要他再说,我回yes,ok,3Q(我英文极差)
代码题: 居然还有代码题。。。可能他也觉得英文太尬了。我只听懂了几个关键词,linklist,我就写了个linklist(C++写的,我几个月没写过指针了。。。),然后又口述了一个问题,我第二遍听后听到了Merge,然后head1,head2 ,这三个关键词,我就猜是合并链表吧,他给了个不带*的接口,但我不习惯,又改成了带*的,合并出了问题,一步步排查(对,就是这么简单的题,不过我真的好久没写链表了,是我菜)
然后跟其他面试官一样,对这个代码加一些别的功能,合并三个,四个,加个display展示之类的。。。
他后面说我会有后续面试,期待和我做同事,并且打算以后用中文跟我交流啥的。。。
五面:
今天上午十点,我在面试房间等着,等了几分钟面试官没上线,我问HR,她说面试临时取消了,流程结束了,我有点懵逼,不过想来我二面发挥确实也不好
就这么多吧,面试微软的朋友一定要好好准备算法题,别觉得简单就不做,不然写的不顺会给面试官留下不好印象。