实习面试随记

来源:互联网 发布:linux 文件分割 编辑:程序博客网 时间:2024/06/05 10:23

三月初,陆续投了几个简历,冒着被导师骂的风险战战兢兢的去面试了几家(其实是自己心虚~~~)。现在将几家公司的面试内容记录一下,一方面给自己打气(还有几家将要面试的),一方面给后来的学弟学妹们一个参考,想当初我也是到处搜集面试经历。

其实面到现在我觉得有几个比较重要的点,是至关重要的,一个是自信,一个是项目经历,一个是基础知识,还有一个就是刷题多刷题。自信是你外在表现出来的一种积极、有把握、行云流水的一种态度。项目经历就是你简历上写的项目,可以写跟面试岗位不想关的项目,比如我面的算法但也写了一个工程性的项目。但是面试官基本就只关注和面试岗位有关的项目。即使这个项目你只是边缘性的参与了,只要把简历上涉及到的搞的一清二楚那就没问题。三是基础知识,就是你面试领域的基础知识。最后是刷题,刷题是必须的,每个面试官都要让现场编程手撕代码,这也是我现在为止仍然心有余悸的一个环节。

  • 新浪微博
    新浪微博是我第一个面过的公司,岗位是数据挖掘/推荐算法,当时是在牛客网上看到的一个内退消息就发了邮件。很快人家就回复了,而且好像很缺人,第一次打电话问我的时候都没有问什么项目或者算法,上来就问什么时候可以上班可以实习多久等,让我当时还多少有一点窃喜。第二天去面试的时候,是那人下来接我进去的,面试地点是新浪总部大厦还挺气派的,那附近就是著名的西二旗,什么百度、网易都走那个地方。进去的时候就感觉里面休息区特别多,到处是五颜六色的沙发座椅和吧台,会议室也很多但是还是稍显紧张。刚开始没找到会议室,那人准备在休息区的沙发上面试,让我在那等一会。大概五六分钟之后,那人又回来说找到了会议室,让我跟他过去。到了会议室之后,那人(面试官)就拿着笔记本、白纸和笔就过来了。面试开始的时候,就问了一些简历上的问题,每个项目都问了,在你回答的过程中他也会穿插着提问。项目的部分大概有二十分钟左右。之后面试过说写几个题吧,然后把白纸递给我当时我就开始紧张了,第一道题是编程题,让我算法实现字符串的最短编辑距离,听完之后我心里就开始窃喜,这个题老子刷过啊。。但是我依然表现的很淡定一脸懵逼的样子,我知道是用动态规划做的但是中间的一些逻辑也有点忘了。不过拿着笔在纸上推几下也推出来了,最后写完给面试官看的时候讲了讲思路,面试官还觉得不错。第二道题是一个sql语句的查询,大概就是表的关联查询那一类然后是需要汇总插入到另外一个表里,我当时说了下思想,具体的语句代码有点忘了就写了一个查询,面试官也觉得还可以。第三道题是概率题,假设北京摇号有300个人一起竞争,问你n次之内摇上号的概率。我当时用最笨的方法写了出来,写完之后发现直接用1-对立面更简单,写完之后照例也是给面试官讲了一下。然后做题的环节就结束了,楼主也总算松了一口气。然后面试官告诉我说就一面,不用再面试了,他比较缺人可以直接决定过或者不过。楼主当时听到这句话,心里那一个爽啊,没想到第一个面试就这么通过了。接下来的环节就是闲聊了,聊了聊深度学习,问了我什么时候毕业,实验室是做什么的,毕业之后有什么想法,讲了下他们是做什么的,用到哪些技术,我如果过去会做什么什么,再有就是介绍了下新浪的基本情况。最后还跟我说你看我都这么坦诚了,那你也坦诚的跟我说如果给你offer什么时候会来,面试官人很好知道我也投了其他的,为了不让我为难还跟我说可以晚点回复。我看面试官人这么好就也坦诚相见说了下我的情况,包括投了哪的简历,面了几家,什么时候可以确定去或者不去。最后又闲聊了几句就愉快的结束了,整个面试过程大概一小时30分钟吧。总之实习的第一个offer还是挺意外的,也有一些侥幸的成分在。比如机器学习的算法没有怎么问,手撕代码也是之前碰到过的,不过这个过程还是挺有激励作用的,让楼主对找实习有了些自信,当时走出新浪心想,怕什么老子也是有offer的人了,回去想投什么就投什么。
  • 阿里
    阿里也是走的内退,不过这个流程就比较正式了,在官网上填简历完善资料,还有人才测评和编程测验,人才测评挺恶心的,一共50分钟要答很多题好几个类型,都是选择题,刚开始是类似阅读理解考察你的逻辑性的,但是有的题很长时间很短还没来得及反应就过去了。还有图表题,看图找规律的题,心里题,事件排序的题就是给你几个事件问你这些事完成的优先级。其实都不难,但是题量有点多。编程测验的题挺难的,一个人做在规定时间内很难搞出来。不过这个好像也只是参考。但是出人意料的是楼主第二天就收到了阿里的电话面试,是蚂蚁金服部门的,跟他们约了晚上的时间面试。第一面感觉还可以,还是主要问项目,将项目完成的过程,中间也会提问。他们那个组好像是和nlp有关的,就对我文本分类的项目问的很详细,涉及到特征提取,TFIDF,召回率,数据不平衡处理,用了哪些算法,效果比较好的有哪些觉得为什么比较好。之后让我比较文本和图片处理的区别,还有Google的word2vec用过没,觉得和TF-IDF这种形式有什么区别,欧氏距离和余弦距离的区别,有没有尝试过深度学习在文本处理上,用过哪些深度学习的框架,他们还提到了TensorFlow。印象中第一面就这些,最后也问了我什么时候毕业,可以实习多久,一周可以去几次这些问题,还跟我说后面会有人给我接着面试然后就结束了。整个过程大概四十分钟,也是很出人意料,因为官网上写的是一到两周内会有电话面试,没想到第二天就来了。

大概一周之后阿里第二面电话面试,提前约好了时间说是要现场编程了,要准备一台电脑他们给一个链接你进去答题,他们那边是可以远程监控屏幕的,所以要作弊也是很难的。对了忘了说,阿里在北京的面试前几面都是电话面试,可能前几面过了之后会需要到现场去面试。楼主第二面也是很紧张的,因为要编程了啊啊啊啊啊。吓得我赶紧刷几道题压压惊先,我以为会是那种常见的算法题,还祈求可以碰到原题。真正面试的时候打开那个链接第一眼就傻眼了,问我假如100W篇新闻,需要两两计算相似度,找出最相似的新闻,让我设计一个高效的算法实现查找的过程。楼主当时就懵了也不敢百度,还好这时候面试官说让我先看着,他针对我简历再问几个问题,这一次的面试官问的就很深,项目的每个点都会问你怎么做的以及实现的过程,而且还老是YY出各种场景让你回答怎么处理,不过你答不上来也没关系,他会慢慢的引导你,对于开阔思路还是很有帮助的。之后也问了机器学习的算法,深度学习训练和调参的一些问题。这一面好几个问题都没答上来,当时就感觉要挂了,最后问完又重新回到链接上的算法题,问我思路,楼主从最笨的二分查找开始说起,又到KD-Tree,接着是哈希,没说完一次面试官都稍微评价一下然后问有没有更好的解法,给我提示了一下但是我还是没搭上来,面试官说可以看下倒排索引的算法,我想应该就是用这个来做的吧。还问我知道这个做法吗,楼主当时如实回答说不知道,感觉要被人家鄙视了。说完让我敲几行代码响应一下说是他们那边看不到我答题,最后的结果是他们那边好像出了问题就没让我写代码了反正也看不到。还好没让我要不然就尴尬了,之后问我还有什么问题吗,我就随便问了两个,问完就结束了。整个过程大概一个小时多点。结束之后不久就收到了阿里算法岗的回绝邮件,但是给我调到了Java研发的岗。楼主兴趣不大而且还要重新开始做简历,答题,面试等一系列操作。于是就放弃了阿里,只能说无缘了。。

  • 美团
    个人感觉美团是面试很专业的一个公司,包括面试流程和面试官问的问题。我是下午一点多到的新美大的总部约好的面试时间是两点,C座的一层有一个专门的休息区接待面试人员的,那天下午大概有十来个面试的,但是大部分都是研发岗的而且是社招,期间还跟一个面Java研发的社招生聊了会。两点的时候一个年轻的面试官下来接我手里拿着我的简历,进去的时候还要在门口等级一下领取访客码真实麻烦,进去里面也到处都是门禁。跟着面试官到了五层的面试区,期间也随便聊了几句。坐下之后,面试官先让我做个自我介绍也没说多长时间,我自己说了大概一到两分钟。之后让我详细介绍下简历上印象最深最熟悉的一个项目,我就挑了一个讲了下过程和思路,期间面试官也掺杂着问问题,印象中问了如何解决特征不平衡问题,特征词典大小,都用了哪些分类器哪个效果比较好,觉得调整数据比例和训练样本权重哪个对模型影响比较大,贝叶斯和SVM的优缺点。讲完之后问了另外一个项目,开始的三十分钟内基本都是问项目。项目问完之后,会针对简历上他们感兴趣的地方继续问。对了他们会提前在简历上标注好感兴趣的点或者符合要求的地方,这让楼主觉得面试官做事很认真很有条理同时也是对面试人员的尊重吧。然后看我简历上有写spark,就聊了会spark,Hadoop,给我一张白纸让我写一个mapreduce的程序,题目是他自己出的,印象中是求分别求男女在美团上的下单率,楼主当时想了想沉默了一分钟左右,面试官说他出去一下让我先思考着然后就走了,当时楼主心里就开始忐忑了,要不要拿出手机百度一下啊?可回头一看偌大的五层,就我一个人在边上面试,心想不会是面试官的一个计吧,难道在暗中观察考验我是不是诚实?细思极恐于是楼主就正襟危坐坚持自己的沉思状。面试官回来后笑着问我怎么样,我就诚实的回答时间久有点忘了,但是跟他说了思路。面试官人很好说没关系。然后告诉我他们主要做算法模型的,需要考察我对模型的认识程度。问我机器学习算法里对哪个比较熟悉,我当然挑一个最简单的LR出来,然后面试官就让我讲讲LR的思想写下LR的公式,写完之后问我LOSS怎么求写一下LOSS的公式,又问我怎么求LOSS的值,我回答梯度下降和牛顿法,于是就让我写梯度下降的公式,写完问我知道SGD吗,SGD和这个有什么区别。这还没完,然后回过头来问我知道sigmoid函数怎么得来的吗写一下推导过程,这楼主就有点懵逼了平时都是拿来用根本没有注意sigmoid是怎么推导的,楼主就弱弱回答大概知道是由高斯分布推出来的具体的过程不太清楚,然后面试官就说没关系试着推一下,就给我提示,楼主也是蠢面试官提示一点写出来一点,最后结果还算可以吧,没完全推出来但是面试官说可以了。之后又问我LR的解是不是最优解如何确定最优解,梯度下降的学习速率怎么设定大了有什么影响小了有什么影响,正则化的方法有哪些,说一下L1正则和L2的区别。到这LR才算过去了,楼主也总算松了口气。but还没有结束,接下来问我现在DNN的种类有很多,让我讲下DNN的每个种类的区别和应用场景,卷积能不能用在文本上,CNN每层的特征有什么区别哪一层的特征比较好,还问我说神经网络几十年前就有为什么现在才火起来让我分析原因,有没有用过TF。。。(TF很重要,基本上每个面试官都有问我)。这个结束之后就开始手撕代码了,写了两个编程题,一个是反转链表一个是求二叉树中两个节点的最近公共祖先,都不是很难,第二个写出来被面试官发现一个bug最后又改了过来。手撕代码之后又随便聊几句,他说让我等一下会有其他人面我,一面大概有一小时四十分钟吧。楼主就等了会,马上第二个人就过来了,手里拿了三种纸第一个是我的简历第二个是面试候选人XXX,下面写了一些话。还有一张面试评估的表,楼主也只是看到了标题别的就没看到。这个面试官没有问技术的问题,上来给我解释下他们的工作,还打开美团APP演示了下,问我有没有兴趣,毕业之后想去那一类的公司,可以实习多久一周能去几次,导师让出去吗,开题了没有。。完了之后照例问我还有没有什么想问的,楼主就问了几个问题聊了会。二面大概30分钟左右,最后面试官说他这通过了,明天会有他们的boss部门leader给我电话面试,因为人在上海所以不能现场面。但是不面技术了,就是闲聊。

    番外篇:楼主回去第二天并没有boss给我电话,可能是太忙了。。

  • 中移在线
    中移在线是中国移动下面的一个子机构,总部好像在郑州北京这边相当于分公司。刚开始也是有一个电话面试,是郑州那边的一个号码,其实刚开始的面试都差不多,就是问简历上的项目,问了几个算法的原理,讲下SVM,LR,贝叶斯的过程和优缺点。之后就是闲聊,聊了下他们是做什么的公司的情况等,最后约了现场面试的时间。其实楼主后来不太想去了,但是出于礼貌还是过去面了。到了地点后先等了会,说是他们不知道今天有面试还让我自己把简历拿出来,楼主当时也是醉了。。跟面试官坐下的时候,他也说没通知今天会来人面试,还找了半天笔没找到最好拿了一个笔芯,楼主当时都想把自己的笔拿出来了。刚开始也是先自我介绍,之后开始聊简历,问了spark,git,c++,那人比较擅长c++问了几个c++的问题。项目问了问,有一个跟他们现在的工作挺对口的着重问了下,交流了下各自遇到过的问题。之后开始写点代码,读一个文件把没行字中的\t替换为|,然后写到另一个文件。写完跟我聊了聊编码的问题,写文件的w,wb的区别,楼主当时用Python实现的,又聊了下Python和c++。之后问了几个机器学习算法,讲下GBDT的思想,楼主果断放弃。然后问我弱分类器都有哪些,CART选择特征的标准(基尼系数)并写下公式,楼主当时也没写出来。但是机智地说了句我知道信息增益和信息增益率的推导,自然就让我写了下这两个的公式,这个楼主还是很有把握的。写完问我为什么会出现信息增益率,给他举一个例子。这个说完之后开始写代码了,可能是想看我的基本功吧,刚开始让我定义一个二叉树的数据结构,然后写了下二叉树的前序中序的非递归版。写完还验证了下有没有bug free,然后就跟我说他这过了。但是好像第二个面试官在开会,我们又接着聊了差不多一个小时,聊天过程中知道他是哈工大的也是刚来几个月的实习生,但是是被他们导师派过来的。后面的聊天过程还挺愉快的,直到第二个面试官过来,这个面试官一看就不是搞技术的,有点痞子的样子,穿个短袖翘着二郎腿坐在那,就开始跟我吹牛忽悠我。楼主当时就决定不去了,但是还是坚持着把天聊完,最后跟他说回去考虑一下就结束了。

1 0