这不是一篇面经,如果你想看到一篇全面、牛*、高端的面经,我们的面霸鸟哥同志已经写过了,请移步这里。我下面要写的只不过是通过两个月来参加找实习大军的奋战过程中经历和学到的一些经验教训,留作纪念,也算是备忘。
这次找实习过程中总共投了四家公司,华为、腾讯、eBay、百度四家,最后确定了去百度实习。
笔试面试来的最早是微软中国,也是这次同学们拿Offer拿的最多的公司,但是因为在网投时微软中国要求中英文简历各一份,我没有准备英文简历而放弃(我是2B我会到处乱说么)…于是当各位大神纷纷拿到Offer时我只能投去羡慕嫉妒恨的眼神了。投简历不能怕麻烦,不要过高的估计了难度,投了才不后悔!这应该是微软给我留下的重要教训。
再之后就是华为和腾讯两家,腾讯的笔试时间是投简历时就写明了的,但投简历时感觉还有一个多月,所以没有在意,而当华为的上机通知发到手机上的时候,我随手就确认了,结果发现和腾讯的笔试时间冲突了,只好放弃了华为。注意日程安排,你不会分身术。腾讯的笔试考的都是基础题,感觉腾讯很重视基本功,这提醒了我们平时要脚踏实地,学好基本功。
eBay的笔试非常水,顺利通过。但面试是个悲剧,因为对eBay提供的各种职位不了解,也没有仔细研究,看PD要的人多,又要C++/JAVA,于是就报了。结果一面的时候PD面试官机关枪式的JAVA问题将我彻底击溃…我多次尝试把问题转向C/C++/Python的方向,可是面试官毫无反应…后来才知道PD平时的工作全部是JAVA开发,也算死个明白。一定要清楚自己投递的岗位的工作、需求和自己的优势,不能乱投一气。老实说,作为本科生,对各种职位完全是迷茫的,很容易产生先投再说的想法,这也是面试的大忌,基本上选PD的那一刻我就已经败了。这是eBay惨案留给我的教训,也是区分面霸和菜鸟的重要标准。
百度是最晚的一家,而百度的风格和腾讯迥然不同。百度的笔试和面试题都非常的开放,笔试是6道题目、3张白纸,基本都是算法和发散的系统设计题。一面的一个小时基本在不停的想题目讲思路然后再想题目讲思路…二面也解了一两道题目,不过更偏重于问项目相关问题,而且面试官并不会只问你是怎么做的,面试官会问一些从你的项目中拓展开的设计或者思路问题,比如我有一个简单操作系统的项目,面试官就问我如果把你的操作系统做到多核环境下要怎么调整、进程在CPU间切换需要的代价是什么(顺便膜拜面试官,感觉百度的面试官真的很厉害,思路很快,而且知识面非常广,我跟他聊的边边角角他都懂。另外态度也非常好,面试过程完全没有压力,面试完后都会从房间一直送到电梯口~印象非常深刻)。三面是BOSS面,BOSS确实气场非常足,基本不涉及技术问题。他了解我的纠结,花了很大的功夫给我介绍他们提供的职位,帮我分析,看我适合哪一个。然后又帮我介绍了一些关于工作和读研的取舍上的经验,非常感谢!
百度的面试确实收获很多,首先,是深度和广度的平衡,我们平时应该尽可能的多看一些东西,拓宽自己的眼界,但不可能每一个方向都成为专家,这就需要在深度和广度之间做好平衡,不能眼光狭窄,但也不能每个都懂点,每个都不精。没有哪个公司需要你精通数门语言,而只需要你在某个方面有过人之处。第二,解决问题的能力大于对技术的了解,本科阶段,没有必要把自己培养成一个XXX技术的专家,技术实在太多了,变化也太快了,而大公司更重视的是你思考问题和解决问题的能力,二面面试官明确的告诉我“百度并不在意本科生来之前了解了多少技术”,技术方面在进入公司后有前辈带会成长的非常快,而思考问题的能力是公司培养不了的。第三,要有明确的人生规划,通过这次面试,感觉计算机行业细分的方向实在太多了,而能拼能学的时间是宝贵的,如果总是转来转去终将一事无成,要尽早确定方向努力奋斗才是。
最后引用百度运维部微博上的一段话:
面试中,同学们问到最多的问题是给他们建议,应该学什么,应该做什么。其实学和做的终极目标都是解决问题,如何高效准确的解决问题,如何判断已有方案是否可行,关键点和风险点在哪里,这是我们学和做的目的——从需要解决的问题去看我们要学什么,要做什么。
短短不到一个小时的面试时间,无法给一个准确详细的建议。说的更通俗一些就是,学习的关键看的是在学习中的思考深度,以及对学习内容的组织运用能力,而并不是具体学什么。很多内容大家都学过,为什么有的人是优秀的,有的人是平庸的,区别就在这里。