阿里、百度、腾讯、华为算法工程师面经(均已拿到offer)

首先先自我介绍一下

我是末流985小硕一枚(本科同校),方向主要是深度学习和数据挖掘,研究生第二年去新加坡交流了一年,研究生期间表现还可以,有一些非主流比赛的获奖,然后3篇sci论文+1篇待发中。

下面说说面试情况,那就按照顺序来了:


1.华为(算法工程师)

华为是我面的第一家公司,8月20号广州优招,现场面的时候相当紧张,2016年的第一场面。。我希望他来的更早一些~~~

由于面的算法工程师,相关面试官较少,我大概等了3个小时才到我


第一面

(1)先自我介绍

(2)接着问项目,我做的项目主要是深度学习和数据挖掘相关的,所以讲了很多深度学习的东西,然后面试官的部门刚好也在做,所以对深度学习很感兴趣,他们主要用caffe,我的话有对caffe还比较熟悉所以答得比较顺利,然后问了神经网络的优化问题,他们希望把深度学习用到终端上,因为我研究方向正好是模型简化,也实现过一些简化方法,所以也答得比较顺利。

(4)问了一些基础算法,EM算法、决策树、随机森林等

(5)面试官给我介绍了一下他们部门具体是干啥的。。然后夸了一遍他们部门,反正听起来我还是很吸引我的,是我想干的一些事情。

(5)第一面按道理是没有资格谈薪资的,面试官可能觉得更我聊得比较欢,就问我期望薪资。由于是第一场面,也不知道什么行情,我按照往年的行情说了个sp价格,。。。。结果面试官很轻松地表示没啥问题(我就知道自己蠢,说低了,希望最好不要做参考)


第二面

面完一面,我就回去坐了5分钟,第一面面试官就立刻来找我让我去他老大那里面第二面了

(1)一样,自我介绍

(2)项目。。。然后问得很仔细,问了为什么要选用这几种网络,让我对AlexNet、GoogleNet、Inception V3、 ResNet进行了详细介绍,还说了各自的优缺点和参数细节。最后也是说网络优化问题,问得也很细,大部分答得还可以,不过出了一点小问题,这是我事后想起来的,他问问模型简化的时候参数最少可以用多少字节。。我说因为是整数,所以只用一个字节。其实我因为我用char来存的参数,只是后面运算时候转成整型的。所以我想表达的是,我用一个字节的char类型存整数参数的。不知道面试官会不会认为我以为整型是一个字节(泪)

(3)问了为什么选华为(家近、我爸喜欢、华为很好巴拉巴拉。。。等等说了一些优点)

(4)有没有其他offer...当时没有就说没有。。


然后一个星期前,华为打电话确认我报的岗位,问我有没有很想去的部门,还有说什么没有完全是做机器学习、图片相关的深度学习的岗位,问我能不能接受更广一点的工作范围的机器学习。我说可以。。(估计是去2012了)



2.阿里(算法工程师)

阿里比较意外,当时就是抱着面了又不会怀孕的心态去投的内推。然后7.29打给我电话的时候我刚好在大巴上,不是很方便面试,对方就说晚上打过来,结果我等了接近一个月。。8.25终于打回来了


第一面(40分钟)

(1)自我介绍

(2)项目,又是疯狂讲深度学习、数据挖掘的东西

(3)问了很多数据挖掘的基础知识,包括SVM,逻辑回归、EM、K-means等,然后给我很多场景问我遇到这些情况我要怎么来处理数据,怎么进行建模等等,问得很细。

(4)问了一两个算法题,记不清了,只记得其中一个是:找数组中2个出现两次的数字,还有3个两次的数字

(5)好像还有智力题,具体记不清了


第二面(45分钟)

(1)自我介绍

(2)项目,然后项目细节,这里面试官还问了我发了论文的东西,我就讲了我其中2篇论文的主要方法和思想。

(3)同样是各种数据挖掘算法基础,跟第一面差不多,但是问得更具体,问了我很多怎么做、为什么,还说了一些比较少见的数据形式问我应该如何处理,为什么要这样做,还有更好的方法吗等等。

(4)算法题,也只记得一个了:存在一个数组,大小我98,里面的元素均为在[1,100],且无重复, 不申请额外空间的情况下,在时间复杂度为O(N)情况下,找出确实的两个元素值。

(4)问了我对未来技术发展的看法,问我觉得未来5-10年什么技术可能变成热门等等开放性的问题。

ps:第二面的面试官是给我offer的部门的部门老大(等级p9),在这里很感谢他,面试的过程中给我很多帮助,而且25号的时候阿里内推时间其实也过了,也是他帮我申请,专门给我延后两天才让我顺利内推近阿里


第三面(30分钟)

也是总监面,不知道等级是不是超过p9,年龄大概40岁吧,视频面试。

(1)自我介绍

(2)因为面我的总监是做nlp的,所以讲了很多rnn、lstm、还有HMM的东西。不算很熟,但是接触过,以前稍微看过一些相关论文,所以还是勉强能聊的。

(3)聊论文,让我把论文从头到尾讲了一遍,说说创新点在哪里,觉得有什么地方可以改进

(4)想在哪里工作、选择地北京、杭州(明显杭州啊,当然如果阿里总部在深圳就更好了)。。



第四面(25分钟)HR面

(1)简单介绍一下自己

(2)为什么选择阿里

(3)在面试过程中觉得自己那些当面有进步

(4)自己本科生和研究生相比有哪些进步

(5)工作地点的问题

(6)有没其他offer

总得来说HR还是很nice,语气很客气,因为是晚上10点后打过来的,还抱歉说影响我休息、挂电话时候还说晚安。



3.百度

百度应该是我面得最艰苦的,算上吹水,5面吧(也怪自己作,不想去北京)


第一面(2小时!!)

(1)自我介绍

(2)项目,但是是运维部的机器学习,他们主要还是数据挖掘,所以深度学习他们问得不多

(3)各种基础、网络基础TCP三次握手、Linux线程通信、进程线程的区别、深拷贝浅拷贝、数据库transaction、悲观锁乐观锁等等。。

(4)数据挖掘各种算法,以及各种场景下的解决方案

(5)然后20分钟内手写k-means(给了一个共享编辑代码的页面、不能切出去)



第二面(1小时30分钟!!)

第二面我面的不是太开心,我甚至还有些想原地爆炸。。是个妹子面的,不知道是妹子跟我方向不一样还是怎样。。。我总觉得妹子水平有一点点问题

(1)自我介绍

(2)她说她不懂深度学习。。。所以前面的项目说了她也没听明白,就问了一下数据挖掘的东西

(3)让我一步一步地构造决策树,怎么计算信息熵、信息增益、然后C4.5 ID3 CART的区别,还说了一下优缺点

(4)问我MVC个代表什么。。。。 然后说想问问我数据库的东西,问我项目里面用的啥,我就说原生的JDBC。。她就开始笑了一下,说啊?!那这没什么好问的了。。。。 我大写懵逼

(5)问我hash表实现要素。。。然后问映射函数一般啥方法实现。。。我说一般比较naive的方案是取膜。。然后还有(话没说完) 就听到那边:2333,取膜,好low的方法。。。。 幂次方懵逼。。兄弟,不姐姐我话还没说完呢。。

(6)让我10分钟写二叉树插入方法(非递归)



第三面(还是1个小时30分!!)

(1)自我介绍

(2)项目

(3)然后问了很多他们现在的业务优化和处理的问题,比如如何协调广告商广告投递金钱与用户对广告感兴趣程度问题,还有垃圾邮件过滤问题(一些邮件对特定用户并不是垃圾邮件,但是对其他用户是垃圾邮件)。我说的是通过提取用户特征,对用户进行聚类,对属于不同聚类的用户建模,区别化过滤。还有一些其他场景,忘记了,反正主要是看你对业务的分析能力强不强

(4)若干智力题,不难

(5)聊了一下未来计划、有没其他offer

(5)如果想来北京,这就是终面。。。。 不想,于是有了后面深圳这边的两面。。



第四面(一小时30分钟)

跟北京那边差不多,介绍项目,分析了一下应用场景,一两个智力题,然后详细给我介绍了一下深圳运维部机器学习做哪些方面的工作现在,问我感不感兴趣,最后说如果我想要在深圳会尽力让HR把我安排在深圳。。


第五面(20分钟)吹水

这个应该是招我那个小组里面的组长,给我介绍了一下他们小组的工作,大概意思是深圳并不是不核心,他们小组也很核心,做的事情也很重要,最后问了一下我兴趣爱好,我说比较喜欢运动,喜欢打球等等,问了一下我身高,我说1米8。。他说了句很好。。。。(这是要肛我?!原谅我在华南基友大学呆的时间太长)



4.腾讯

之前面了TEG一面,后来推我的人说把我简历给了总监和HR,总监说跟他们方向比较合,但是在出差。。。后面找时间跟我聊聊。。。所以暂时在等,后面再补充吧。



现在还没有决定去那里,但是看得出来今年阿里招人比较少、机会很好;百度招人比较严格,问得比较细,几乎全是技术面;华为,我只能说听说给得很高,但是我现在还没通知去谈岗位、薪资等等;腾讯招人也少,特别是SNG。。。工作环境应该是很好的。。毕竟出了IEG其他加班不多。


-------

10月20号更新


腾讯TEG面试面完,顺利拿到想要的薪资offer

一次性面了三面 一共三个小时(包括技术面、总监面、HR面)

因为是熟人内推,内推部门跟自己做的方向完全相同,所以基本上没有问什么大学课程的基础知识,主要集中在以下几个方面

1.数据安全相关的深度学习相关的问题、项目以及技术(问得非常仔细)

2.讲自己在新加坡的交换经历、以及研究方向

3.为什么不读博、对读博报以什么态度

4.家庭状况、自己性格、未来规划

5.对百度、阿里、华为的看法,是否最终会选择腾讯

PS:面试官没有让我现在写代码,但是在常规情况下是需要写代码的,所以大家平时还是多在OJ平台上面刷题


至此,我的校招也结束了,找工作很累,收获也很多,希望大家都能找到让自己满意的offer.

#腾讯##百度##华为##算法工程师##阿里巴巴#
全部评论
这sci都够博士毕业的了
点赞 回复
分享
发布于 2016-09-22 15:34
看他的面经 我觉得自己要找不到工作了  唉
3 回复
分享
发布于 2016-09-22 16:50
联想
校招火热招聘中
官网直投
百度在深圳的机器学习岗只有5个,看来现在只剩4个了,好怕
点赞 回复
分享
发布于 2016-09-22 17:22
妹子面试你竟然想取膜。。。
点赞 回复
分享
发布于 2016-09-25 16:36
这才是真正的大神
点赞 回复
分享
发布于 2016-09-22 18:11
去华为,一定要把你的offer大声告诉他们,身价会涨
点赞 回复
分享
发布于 2016-09-23 00:57
这种人不去搞研究可惜了
点赞 回复
分享
发布于 2016-09-22 17:28
你把你的offer给华为的hr透露下,估计能给你开30万以上的打包价!!!
点赞 回复
分享
发布于 2016-09-22 18:50
想知道楼主本科是什么水平 本硕都是学计算机的吗?
点赞 回复
分享
发布于 2016-10-15 22:02
哈哈,要肛你
点赞 回复
分享
发布于 2018-06-10 19:04
我咋觉得SNG招人多啊。
点赞 回复
分享
发布于 2016-09-22 15:27
膜拜
点赞 回复
分享
发布于 2016-09-22 15:30
大神。。。
点赞 回复
分享
发布于 2016-09-22 15:30
给大神跪了
点赞 回复
分享
发布于 2016-09-22 15:31
向大佬低头
点赞 回复
分享
发布于 2016-09-22 15:33
给大神跪了
点赞 回复
分享
发布于 2016-09-22 15:36
给同城友校跪了
点赞 回复
分享
发布于 2016-09-22 15:42
大神,收下我的膝盖
点赞 回复
分享
发布于 2016-09-22 15:55
大神
点赞 回复
分享
发布于 2016-09-22 16:03
长跪不起...
点赞 回复
分享
发布于 2016-09-22 16:07

相关推荐

1.自我介绍2.抓着项目的一些问面试官喜欢问从顶层的实验设计的一些东西我的实验为什么要选用 cos 距离或者 mse?能不能用 KL散度?是不能用还是不好用?KL 散度和交叉熵的区别和联系是什么?(都是我没考虑过的问题 有点汗流浃背)既然你用到了那么多微调方式, 那你有什么实验过程中探究了 lora 的比如 秩之类的参数的影响吗?prompt tuning  ptuning v2 有啥区别?(说完他觉得我说的太八股太宏观了,又讲了一堆原理)为什么 p v 2 比 prefix tuning 要减去那个 lstm 和 linear? 我说论文里说适配 NLG 任务,好像记错了。有没有接触过强化学习?为什么你们只考虑微调,是因为啥原因?你是用几张卡跑实验?多大参数的模型?跑的时候内存占用量多大?有没有试过全量微调? 那你想一下,假如我用 deepspeed 的几种版本, 全量微调7B 模型,内存占用多大?最后大概的意思就是说他比较看重实验最初的一些设计能力, 不能蹬 OOM 再来解决。让我之后要多理解一下 deepspeed。说社招看的多这些理解能力。反正基本上就是项目围绕讲。 后面说我项目做的,工程应该能力不错。 代码题也是那种很简单的处理数据。
点赞 评论 收藏
转发
这次面的是工程院 bing 团队的 LLM 应用组,问的问题量不大,有一些比较开放性的问题比较有意思。1.自我介绍 两面都有2. 主要会根据项目做一些介绍,这个一面久,二面短一些。3. 一面问了 transformer 结构4. 有没有做过大模型之外的 NLP 相关的内容(简单讲了讲)二面的开放性问题5. 做 rag 应用的时候, 如果幻觉问题严重怎么办?比如已经给了很多 rag 召回的内容了,但是还是错误很多,尤其是一些时间数字类的信息,很容易不准确。(我回答:类似于指令微调,构造对应的数据集, 微调强化大模型对检索的内容的跟随能力)6.接着上面,那你觉得这种数据集怎么构造呢? 检索的内容和问题很好弄,但是答案怎么获取方便?(我: 我觉得可以反向构造,我先从网络上爬一堆内容作为答案,比如把新闻里的一些信息作为答案,然后让大模型比如 gpt4 生成对应的问题, 再检索召回相关的内容,构造数据集。 面试官说这个想法还挺有意思的)7. 我想通过加噪声的方式提高模型的鲁棒性, 你觉得这个噪声应该怎么加好? 或者说怎么确定加在 token 的什么位置,加什么 token?(不太懂,我就说从我一般的理解,加噪声都是从 embedding 去加的, 比如随机加一些高斯噪声提高鲁棒性)8.如果我做 rag 召回的相关内容里,会有人恶意注入了一些错误的信息, 你觉得会影响大模型的生成内容吗?怎么避免?(我认为肯定会有影响, 因为关注的信息有错。 我觉得可以提高召回的信息量, 从而稀释错误信息占比来解决)9.接着上面的回答, 我们的输入长度有限制,不能无限加召回的内容怎么办?(可以在检索召回链路中再加一层,类似于粗排后再精排一次,从而减少错误信息的量)其他的不记得了,就是感觉现在面试很喜欢问一些开放性问题。代码题一面编辑距离, 二面是一个有序数组左边平移一定位置后的数组,找到一个 target 的下标。都不算难。
点赞 评论 收藏
转发
135 465 评论
分享
牛客网
牛客企业服务