系统部职位面试2篇

2020-01-12    面经大全    【本页移动版】

面试经验1

面试公司:百度 职位:系统部
首先需要说的是,百度每年8,9 月份时,会有一个内部员工的内推机会,这个时候论坛上会有
师兄师姐发贴说可以帮助内推,对于一个真正希望进入百度的同学来说,这个是最好的机会,
因为百度笔试每年都搞得声势很大,而从我身边来看,基本很少有经过百度笔试进入面试这一
环节的,而内推时师兄师姐会认真的看你的简历,这本身就是对你的简历的第一遍审查,所以
想进百度的学弟学妹们应该把握住这个机会。
我就是找论坛上的一个师姐内推的,后面也会提到,师姐的人真的很好,不但帮忙内推,还打
电话提醒我注册的注意事项等等,对于师姐,我也心存感激。9 月份内推后,是漫长的等待,
这个时候百度各个部门开始面试,各个部门的进度不一样,11 月初我接到第一面的时候,很多
别的部门已经开始发offer。
第一面是一个比看上去我年纪大一两岁的师兄,果然就像传说中的那样,穿个拖鞋就过来了。
见面后先说了下面试的流程,主要分三块,我先说说项目,他问项目相关的东西,然后就我感
兴趣的东西聊聊,最后我问他问题。我说好。
开始说项目,balabala 说了一堆,师兄不时打断,对细节发问,你觉得项目的技术难点啊什么的,
主要考察你对项目的把握,如果真的是你自己做的,这个应该很好应付。接着师兄对项目问一
些扩展性的问题,比如我的项目中有屏蔽平台硬件差异性的问题,我们提出了两个方案,他会
问,除了这个还有什么比较好的方案没有啊类似的,考察发散性思维。项目大概说了二十分钟,
说完,师兄问我对什么东西感兴趣,我们就聊什么。我心想果然牛,什么都懂,就说我对linux
内核比较感兴趣,可以聊内核的东西。师兄就问了下内核中内存管理的方式,问为什么有高端
内存啊,又问高端内存在线性地址中怎么映射的,又问了些页表的东西,还是问得比较深入。
接着师兄问了下OSI 七层模型,让从TCP 层开始往下讲,说了一堆,师兄点头表示满意。接着
师兄问一些web 方面的东西,我说不太了解,师兄点头也就没有多问。接着让写程序,之前感
觉百度算法会考很难,准备了一堆算法,这里师兄就叫写一个链表排序,心里一阵狂喜,很快
写了个O(n*n)的给他,师兄又问可不可以降低复杂度,磨蹭了一下,磨出个O(nlogn)的给他,
师兄点头表示过关。问我对他有什么问题,我问了一下他们的工作状态以及主要的项目都是什
么方面,师兄说每天会加班到很晚,因为每个人手上都有很多活,但是成长的也很快。项目说
了一些,主要是内核方面,以及分布式服务器方面的,我都很感兴趣。双方握手道别,总之这
次面试感觉还是很好的,师兄很平易近人,面试就像朋友间的对话。
第二天就接到二面的通知,在说二面以前,先说两个小插曲。第一个小插曲是我在前台等待面
试的时候,发现百度的gg 们都喜欢抱着笔记本到处走,我开始不明白,以为他们是在测试无线
信号,后面才想通他们是在干嘛。料想在百度这样思想活跃的公司里,每天都会有很多想法,
每人都能发起一个会议,而每层的会议室又是有限的,所以百度的gg 们总是抱着笔记本到处抢
占会议室。说这些是想说,像百度这样活跃的气氛我很喜欢,之前也去过一个公司,感觉技术
部门死气沉沉,没有什么活力。另外,而相反百度的mm 很少这样,料想百度的mm 们都注意
保护自己的皮肤,不喜欢整天和辐射产品打交道。
另一个插曲是,我在前台等候时,看到一个哥们,其貌不扬,留个小胡子,过来前台来了句“你
好,我是来拿接收函的。”立马激起我敏感的神经,我才知道原来offer 的中文名叫接收函。然
后我就像哈巴狗一样伸着舌头目不转睛的注视着那个哥们,帅气的从人力手中拿过百度的offer,
然后潇洒的转身,目送他扬长而去,只留下我的一滩口水。这个时候面试我的人来了,我赶紧
吞了吞口水跟着进去。在去会议室的途中,我知道面试的面试官中有一个也是北邮的师兄,另
一个胖乎乎的,一看就是个高手,姑且称他大牛。
到了会议室坐定,大牛笑眯眯的开始发问,首先还是说项目。感觉百度对于你做过的项目真的
是很重视,我又开始balabala 说一堆,大牛中间不时打断,问细节,说完,大牛点点头,来了
句让我晕倒的话,“哦,就是这样啊,我还以为做了个很厉害的***呢。”大牛果然是大牛,一说
话就不一样。
说完项目,开始问技术,说看我简历上说对驱动了解,就直接问网卡驱动的原理。说完,又问linux
底下/dev 目录怎么根据设备的设备号进行设备管理,我直说不太明白这个问题,就照我的理解
说了设备号作用,系统怎么对设备进行发现的过程,以及设备驱动中怎么在/dev 目录下生成相
应的设备文件,大牛点点头。大牛接着问,说一下linux 里面的init 进程的作用,根文件系统,initrd
的作用等等,问得都是linux 下一些比较基础的问题,但是范围很广。
另外也有一些考察深度的问题,例如,让谈谈你做嵌入式linux 与桌面linux 的区别,这是个很
宽泛的问题,能谈到什么程度,就看你的功力了。大牛问了一堆,看来是想休息了,就对师兄
说了句让我晕倒的话,“来吧,这个是你的校友了,不要客气了,上吧”,师兄开始发问。
先问linux 中一些基础的问题,inode 作用什么的。接着问C,说有一个文件中很多ip 地址,怎
么样对其进行排序,让比如191.1.1.1 放在192.1.1.1 前面,如果数量很多的话用什么排序法。接
着师兄问了一些实际情景题,还记得的几个问题是
1 一个磁盘阵列,想一个算法,让其中一个磁盘坏了,能保证其中的数据不丢失。我对于磁盘
阵列完全不熟悉,当时一下就晕了。面试过程中,这样的情况会经常出现,遇到一个你摸不着
头脑的题,这个时候该怎么办呢?给大家说一个小技巧,这个时候你一定不能冷场,一旦冷场,
你就会感觉空气像凝固了一样,越想心里就越乱,越乱就越想不出答案。这个时候,应该主动
的问他问题,尝试着把这个摸不着边的问题一步步的限定到一个具体的情景中。比如这个问题,
你就可以问,需要几个磁盘啊,两个坏了的情况要不要考虑啊,总之,一步步的把场景具体化,
只要你不问磁盘圆的方的啊这样的问题都行。可是到最后,发现自己还是没头绪,那就直说不
会,不要瞎扯,尝试着去说一个完全不懂的东西,在懂行的人眼里是一件很可笑的事。在师兄
循循善诱下,我还是没头绪,最后直接说“我母鸡”。下来查了下,磁盘阵列里面有一个奇偶校
验盘的作用就是这个。
2 在一个局域网里面,如果两台电脑ip 什么的都设好了,但是互相之间就是连不上,问分析出
现什么问题。
说了几种情况,网关的问题,协议栈的问题,防火墙的问题,实在想不到有什么可能了,连网
线的问题也说了,这题感觉答得也不太好。
问到网络,大牛把话接过去,问TCP 协议中拥塞避免的机制,甚至让画出其中拥塞窗口变化曲
线,还好这个还比较熟。这个问题多次在面试中都被问到,凡是需要考察网络,TCP/IP 的地方,
光知道TCP 的三次握手是不够的,建议大家以”TCP,流量控制,拥塞避免”等为关键字google 一
下,最好再加一个”filetype:ppt ”,这样,对TCP 协议可以有一个初步的了解。
二人又你一言我一语的啪啦啪啦问得兴起,题目不太记得了,就在我渐渐感觉有些招架不住时,
大牛终于说,问完了,说两人要出去商量一下,我才长出了一口气,想着总算完了。
过了一会,师兄进来说,还有一个同事再面我一次,我的脚瞬间就软了,心想今天活着是走不
出百度这栋楼了。没想到,过一会师兄说那个同事请假没来,让我回去等通知,一周内答复。
于是我就回去虔诚的等待着,没想到两周后等来了thanks letter,给我打击很大。这件事也告诉
我保持平常心的重要性,对一个东西抱有越高的期望,对你的打击也越大。
在准备百度的过程中,我也收获到很多。每年百度的offer 给钱很多,属于顶级的,北邮今年有
进去的,但起码就我身边看来,数量还不如中科院与清华的学生。我试着总结一下,主要就是
两点:
1、编程能力、算法等基本功。算法是个很见功力的事情,看三年算法和看三个月(就像我这种
菜鸟)一眼就能看出差别。这方面,参加ACM 训练,看《算法导论》等经典书,都能让你在
找工作的过程中如虎添翼。
2、项目因素。我在中科院实习过一段时间,对比在中科院做的和在自己实验室做的项目,老实
说,实验室的项目根本拿不出手。北邮除了一些很牛逼的实验室外,其他的实验室可能都有这
样的问题。对于百度(只了解我面的系统部,别的部门是不是这样不知道)还是很看重项目经
验的。所以早一点去大公司实习,参与到实际的项目中,对你会是一个很大的帮助。那如果不
能实习,实验室有没有什么好项目的同学怎么办呢?参加开源项目! sourceforge,freshmeat 会
是你的良师益友,其实就sourceforge.net 就已经足够。就算下来几个你感兴趣的项目源代码,
看看人家官方的说明文档, 弄清楚项目架构流程什么的也很有帮助。另外多上上论坛,
Chinaunix,咱们北邮人的linux 版,做内核的话,可以加入到linux 内核开发者中文邮件列表,
起码能知道人们都在做什么,关心什么。
总而言之,我认为百度对你的考察其实很简单,就是看你够不够牛,这也是他们选人的标准,
当然,他们的待遇也对得起这样的标准。我觉得,能进百度的人,在进入前,基本就能知道自
己的能力大概在百度的要求范围之内。想进去的同学,就苦练算法,早做准备吧。
面试官的提问:linux 中一些基础的问题,inode 作用什么的

-------------------------------------------------------

面试经验2

面试公司:百度 职位:系统部
下面简单讲讲面试的经过吧。
3点快到的时候,面试我的经理过来了,带我在里面转了一圈,找了个位置开始坐那面试。这位gg看起来比我也大不了多少,不过长的比我帅啊。gg开始问我项目经历,由于我做的主要是视频转码的方向,简单介绍了一下项目背景以及做的具体工作。经理问了一个简单的问题然后结束。然后问了一个 linux虚拟内存分几级实现的问题,答曰3级,x86平台是2级,次级目录无视。貌似答对了,gg再深入问了一个页面缓存分为几层?这个还真没仔细看过,简单说了下swap和虚拟内存怎么实现的,这个问题就pass了。然后gg开始问我一些简单的问题,就不说了,基本上一面比较简单。面试完了之后gg 让我再等一会,坐在那等啊等。
好一会,二面的经理来了,二面的经理30来岁,看起来非常和善。上来开始照着简历上写的开始问,我又将开始说过的说了一遍,累啊,真是不容易。然后程序化的开始进入linux方面的讨论,由于我简历上写了研究过文件系统方面的。第一个问题:现在有一个read系统调用,请问这个系统调用在内核中经过了几层? 这个问题貌似有点大,直接回答不大好,所以我们就开始从open系统调用开始讲,讲了设备文件与普通文件的区别,讲了字符设备与块设备的区别,然后开始讲open不同文件的时候所处理的方式的区别,最后讲完了返回一个文件描述符,然后read的一个参数就是这个描述符,然后又开始将read怎么从vfs传到driver的,read怎么在字符设备上直接到driver的。完毕,经理也没说什么,这个问题貌似也pass了,后面就没什么深入的问题了。问了一个pci与pci-e的区别,然后又来一个基础的问题,给你一堆序列读写,如何设计你的cache,照着cache的工作原理说了一通,全相联,组相联区别等。然后gg问如何设计你的cache淘汰算法,顺口说一个最常用的lru算法,gg让我描述一下lru算法是怎么实现的,结果狂汗,我说了一个最近最少访问算法,真丢脸啊,当时这个紧张啊。gg提示了一下,但是我真的把lru算法给忘了啊,哭啊,自己给自己找坑。接下来,二面基本结束了,问了一些我原来做的ep9315开发板的东西,嘻嘻,两年前做的东西了,都忘的差不多了,不过这些个问题貌似也不是重点,也没深入问。二面结束
三面: 二面结束了,我还以为可以走了呢,这个时候真的有点累了,结果二面的gg告诉我,让我再等一下,等一下三面,这个汗啊,我好累啊。gg看我也挺累了,就给我去倒了杯酸梅汤,真是雪中送碳啊。坐在位置上等了一会,三面的经理过来了,三面的gg穿双拖鞋,人也很随和,哈哈,我喜欢这种无拘无束的工作。gg坐下来之后开始狂问我视频编解码的东西,让我画编码器框图,解释h263与mpeg4的区别,哈哈,总算没白费我的项目研究啊。问完这些,gg开始问一些体系结构的东西,问了一个流水线的工作原理,流水线会出现什么问题,如何解决等等。基本上都答了出来,然后让我画 c6000(我项目里有做c6000优化的)的体系结构,嘻嘻,在他的本子上开始龙飞凤舞的画,给gg解释,dsp的特殊结构,以及他的优缺点,以及我们如何利用这些结构特点进行优化。接着,gg继续让我画出c6000的流水线。以及各级流水线的功能,又给解释了一通,总算没什么差错,以为就这么完了,结果再来一个流水线问题,如何消除流水线停顿,如何解决冲突寄存器多分配等。总算答完了,这个时候口已经渴的不行了,面试已经2个小时了,累啊。不过,gg 好像没想放过我的样子,继续开始问我arm体系结构的特点,他与mips体系结构相比有哪些优点,我说自己没研究过mips体系结构,但是我知道经典的 mips体系是5级流水线,arm9也是5级流水线,arm7是3级流水线,然后arm的一个主要特点就是支持16位指令集,这样可以压缩代码占用空间。然后他又问我arm9的流水线结构,这个。。。。都已经2年没研究了,忘了,直说了,gg笑了笑说没事。然后gg开始问我ep9315开发板的设计问题,ep9315与s3c2410有什么不同的,简单回答内核都是arm920t的,外围结构组成不一样,gg不再深究,继续开发板的问题,问我走高频线的问题,这个,呵呵,我也只略懂皮毛,说了一些等长线,蛇形线,大面积铺地屏蔽等技术。这个问题就算结束了。gg终于说没什么问题了,终于松了一口气。然后,gg让我坐着等会,说等二面经理过来,他才有决定权是否给offer,和gg一起坐着了,然后开始聊了一会,gg好像还没问够,聊了一会又开始问我的 2410的驱动问题。这个真丢脸啊,原来只是上了一个嵌入式系统的课然后做了一个实验而已,哎,没办法,被问到了就只好开始糊弄了。讲了自己怎么实现 uart串口通信传输音频数据的问题,然今后提到uart传输的不可靠,自己写了一个xmodem协议来解决的问题。嘻嘻,这一面就过去了。。。。gg不再问了,然后我们又开始等。

等了好长一会,二面经理还没来,三面gg就让我先坐着,他有事先走了。我只好一个人坐着傻等了,后来一开始接待我的前台mm过来了,说了一些什么下午面试辛苦了什么的,然后说3个经理要交流一下意见,让我回去等通知吧。终于可以走了,晕啊,这面试都快两个半小时了,真累死我了。出了普天大厦,赶紧打了个的回来了,饿死我了。
小结:
1,基本上问的问题都是很基础的东西,所以,基础一定要掌握扎实
2,简历上写的东西一定要是自己会的,做过的,因为简历上的东西基本会被全部问到
面试官的提问:一面:简单介绍了一下项目背景以及做的具体工作。经理问了一个简单的问题然后结束。然后问了一个linux

-------------------------------------------------------
相关文章
热点文章