Intel的面试随机性比较大,不太容易准备,以底层知识,C/C++为主。
项目
C++
STL容器
指令执行流程及优化
算法题:
最长连续子数组和
就面了一面,感觉问得特别简单,不知道是不是没hc了,本来说要接着面试,接下来面试的人有会要开说再约时间。有点迷惑
这个面的比较简单,除了指令执行流程及优化这个比较难
因特尔flex部门:
9.24:
一面
一)问项目
二)象征性问点机器学习深度学习的基础知识
二面:
一)基础知识:
1.C语言基础,出了一道题跟sizeof(),不会
2.java和python垃圾回收机制的区别,不会
3.还问了一些听不懂的名词…
(注:基础问答环境凉的非常彻底,当时以为二面肯定过不去了)
二)手撕代码:
1.数组中找第k大的数(Partion)
2.输出一个二叉树的左叶子节点的和,不能用递归(BFS)
3.开放性问题:打印一个hello world,用最差的可读性来写代码
4.开放性问题:在一个字符串中找出大于0x70的数字(用的滑动窗口)
面试官说该数字可以包括二进制八进制十进制十六进制等…跟他讨论
感觉是撕代码的环节表现尚可,就让我等三面了
三面(主管面):
一上来让我用英语自我介绍和介绍项目(丝毫没有任何准备一两年没开口说过英语,支支吾吾大半天,想扇自己两巴掌)
面试官看我这状态没法正常交流,就转成了中文,问了一些我的优缺点,学生期间做的事情等,总感觉这个环节考察的是正常的口语交流能力
反问环节:问了下那边的生活状况和部门情况
主管说十月中下旬等待结果。特别想要这个offer,跪求许愿吧。
一面
面试官是写C的,问了很多底层
1.TCP和UDP,校验和是怎么算的
2.IP头长度,TCP头长度,UDP头长度
3.会写bash脚本吗
4.会用gdb调试吗
5.进程crash了,怎么定位
Linux环境下经常遇到某个进程挂掉而找不到原因,我们可以通过生成core file文件加上gdb来定位。
6.两个线程,用同一个socket,同时给另一端发送字母和数字,会出问题吗
7.了解红黑树吗
8.写一个sql语句
9.i=5;sizeof(i++)和sizeof(++i)的结果分别是什么
10.内存对齐相关
11.代码:找出一个二叉树所有的左叶子节点
12.反问环节
二面
面试官是写C++的,问的一脸懵逼,最后因为闪退,直接结束了
1.写了一个很复杂的函数类型,让解读一下是什么意思,但是我根本看不懂....然后换了一个简单的 void *(*foo)(int *,char c[]),但是还是不知道*(*foo)是什么意思,感觉是函数指针相关
函数指针
2.static关键字
3.explicit关键字
关键字explicit,可bai以阻止不应该允许的经过转换构造函数进行的隐式转换的发生。声明为explicit的构造函数不能在隐式转换中使用。
4.一个类中,把拷贝函数和=定义成private,有什么作用
5.智能指针相关
6. move和forward
7.知道pimpl吗
8. C++中,令你印象深刻的头文件是什么
9.代码,实现一个offesetof方法(根本不知道是啥,完全不会)
10.英特尔的cpu是大端还是小端,存储方式是什么
其实big endian是指低地址存放最高有效字节(MSB)
而little endian则是低地址存放最低有效字节(LSB)
英特是小端。
三面
应该是boss面,基本没有问专业上的问题,中途因为闪退改成打电话了,对方介绍了很多部门相关的问题,感觉收获比较大
1.英文自我介绍
英文聊天
2.你现在拿到了什么offer,怎么考虑的
3.是哪里人,大城市的生活成本很高,户口问题,怎么考虑的
4.你觉得你的学习能力怎么样
换回中文
5.你对未来的职业怎么看
6.介绍实习经历
7.在英特尔会有很多英文会议,你觉得你的沟通能力怎么样
8.反问环节
intel 面经
三面连着的,岗位是cemera的software engineer。简历偏深度学习CV。
一面
项目介绍(对论文似乎不感兴趣)
谈谈深度学习的认知,发展
接触过传统视觉算法吗
还记得操作系统,网络的知识吗(说不记得就没问了)
二面
项目(项目为什么不用传统算法,有什么创新,收获是什么
c++析构函数为啥是虚函数
c++多态怎么实现
手写(c++,排序数组查找某个树,链表反向输出)
三面
毕业时间,后年会来实习吗
生源地,高考分数
intel在心中排序,哪些公司优先级高于intel
介绍了他们的业务
反问
翻译一个英文API文档
英文讲partime体现innovation的例子(英文对答了几句)
连续两轮面试,同一个部门不同的同事,没有手撕代码,更多是在拉家常。。。(感觉没戏了
一面:
1、自我介绍
2、介绍项目
3、他给我介绍部门(发现我们好像不太匹配,他们是做视频播放器编码、图像处理的,跟硬件打交道多)
4、问我如果测试一个播放器软件需要怎么测试,关注哪些方面(逐渐引导)
5、多态和继承
6、c语言怎么实现多态(没答出来)
7、static关键字
8、反问
二面:
1、英语自我介绍
2、介绍最自豪的项目
3、介绍研究生项目(花了很多时间,然后面试官说不错,他不懂这些都听明白了 )
4、为什么研究生换专业?
5、如果来他们部门,很多都是全新的东西,从舒服的领域到这边会比较suffer,怎么看?
6、你的职业规划和想法是什么?
7、反问
先自我介绍
然后聊了一下地区,因为我在深圳。面试官表示,深圳比他们上海互联网企业机会多很多。
然后让我用英语随便说一段,强调了一下他们跟外国人的沟通,被面试官夸口语还不错。
然后我研究生期间的两个研究项目,说的非常仔细,面试官也听得很仔细。
操作系统:
进程和线程的区别
切换进程和切换进程带来的损耗
我说自己操作系统不是太熟练,但是计算机网络很不错,并且约我面的这个部门也是做网络相关,于是转向网络
七层网络协议,我说的时候带着英文一块说的。
运输层协议
TCP/UDP的区别
ping的过程,用了哪些协议
路由转发
手撕代码就一道题
反单转链表
(一定要用c++写)
最后反问了两个问题
IT Flex Software 相关
第一轮:
手撕了快排
手写了文件读写锁逻辑
手写了简单文件系统逻辑(考虑多线程并发)
第二轮:
讲了内存管理
讲了进程调度
讲了C++的多态,虚函数
讲了一些数据结构,具体忘了
然后问了相关的项目
最后谈了下自己的代码习惯,有啥特点
我投递的岗位:
1、Software-engineer(Complier)
第一面很简单,先中文的自我介绍,然后问了项目,最后问了C和C++的基础问题,都基本上秒了,手撕的题目也很简单,第一个忘了反正很简单,第二个是二叉树的深度,写完解释给面试官听。没什么问题,顺利进入第二轮面试。
第二面有点难受,因为这部门是做Complier的,我非科班,编译原理也没学过,回答的不是很通顺,面完之后的感觉是面试官想要也不想要,想要是因为我的确向这个方面培养的话也可以,不想要是真的一些问题答得不好,所以就不知道了。。。
2、Software IT-Flex Engineer
这个部门面完之后我觉得就是很Flex的部门,好像说了句废话,就是说intel其他部门哪里有软件开发需要,这个部门可以马上顶上去,重在flex,很flex,very flex。
一面问技术,自我介绍,项目,然后看我MFC和QT都用过,就问MFC和QT的区别,我扯了一些,然后又问单片机的东西,写一段代码来处理按键的单击和双击,要包括消抖,我写了单击的,双击的没写出来。。。
二面一上来不用自我介绍,让我用英文介绍一个自己的项目,那我肯定选最简单哪个,阿巴阿巴了半天。然后就问我实习,对我实习中因为需求变更频繁更改代码这样一个事情是怎么看待的,扯了很久这个问题。具体细节就不想多说了,反正就是一句话,需求至上,要适应这种敏捷软件开发,我当然不能一口咬死说不接受啊,那必须是需求至上,最后强烈表达意愿这种软件开发思路很好,我很喜欢。。。然后问了些实习过程中的冲突是如何处理的,更多像是一种hr面的感觉。
三面记不大清了,和二面的内容有点像,简单问了一下技术,给他介绍了一下我项目中的框架,讨论了一下框架的好坏。
这个部门最后留了我的简历,给了我一张部门介绍的宣***,不知道是不是对我比较认可。。
3、Firmware Engineer
这个和我的方向比较对口。他们是做服务器的BIOS开发的。
一面是个小姐姐,先是自我介绍,介绍完之后就觉得我好像是个大佬,告诉我说她的主管让她重点面试一下我,好像没有问专业的问题吧,还是问了个很简单的,我忘了,反正没面多久,小姐姐就说我们不用面了,我们就随便聊聊吧,反正剩下的面试官会让你手撕代码的,去给我拿了瓶水,然后我俩就开始闲聊状态了,她对我的年龄很吃惊,我98年的,她说她是去年进入intel的,有实习,没有经过这些秋招的面试,也比较容易,说她家是河南那边的,本来她想回去,但是专业在家那边又没有对口的工作,就留下来了。然后给我介绍intel,说我刚进来不用在意选哪个部门,因为以后可以随时调整。然后intel不用996,可以有自己的时间做一些感兴趣的事情,我觉得很好,聊的很愉快。然后等别的面试官结束了,我就结束了该轮面试啦。。
二面是Fireware测试,自我介绍,然后两道题目,题目是全英文的,第一道是给一个string,找出第一个没有重复出现的字符,写出来了,第二个让写一个正则表达式匹配,然后把匹配的string转成十六进制输出,唉,我裂了,自己不会写正则表达式,然后就直接告诉面试官了,我说我正则表达式接触的很少,不会写这个,他说没关系,让我提供一个别的思路来解决问题,就是找规律,最后写出来了。然后就问我会不会python,我说不会,但我可以学,又问我机器学习的overfitting和underfitting,我不会啊。。。他说没关系,开始让我用英文介绍一下我刚手撕的第一题,就又开始阿巴阿巴了半天。最后面试官给了我一些建议,让我把英语口语练一下,逻辑思维加强一下,说介绍东西的时候可以分firstly、secondly、finally,我说好吧。。最后让我反问,我就了解到面试官所在的组就是用python来测试BIOS开发的一些代码。我觉着挺好。
三面我以为还是fireware测试,但其实是fireware开发,这就对我胃口了啊,咱必须C和C++啊,自我介绍,项目,然后很简单的一道题目,int64的一个数组,让我用BYTE输出内容,刚开始写了一个移位Solution,面试说这样也可以,但直接用指针更好,我就又写了一个指针版本,很简单的题目。然后问项目,然后面试官说他们组是负责fireware开发的,主要是写c,工程规模是linux kernel的几百倍,我说啊?然后我问每个人负责多大规模啊,他说每个人就很小了,我说好吧。。最后面完面试官觉得我还不错,安排了一轮加面。
第四面就是加面的,自我介绍,项目,问了C的基础,intel问的c的问题都是堆栈区别、static、volatile。都很简单,最后让我用英文再对自己简单介绍一下,俺balabala,最后对我挺满意的,问我有没有offer,我说暂时是0offer状态,给了我一个口头offer。
总的来说,intel面试体验很好,而且intel里面的人都超级nice,老是喜欢冲你笑。顿时感觉外企真的好人性化,氛围真的很好,而且955,有时间做些自己感兴趣的事情,提升自我。
就是从早晨9点面到下午3点,就喝了一瓶小姐姐拿给我的水,谢谢小姐姐!!
许愿intel offer