前两天,分别去了搜狐,百度和豆瓣进行面试,虽然答的不是很好,但是还是上来说一说感觉,不吐不快,在这一段时间里面,我也学到了很多东西。因为在刚刚毕业的时候,朋友推荐到一个公司工作,没有经历过真正“求职”过程,所以一点找工作的经验都没有,我投简历的时候,连最基本的姓名,年龄,联系方式都没有写,现在想起来还真是寒啊,不过好在这些大公司的hr还比较负责,所以找到了我,不过这个过程我真的是学到了东西。呵呵。
搜狐
现在我就来说一下在这三家公司面试的感觉,按顺序来,先说搜狐吧,去搜狐面试的是一个汽车频道的前端。搜狐整体来说感觉比较老气,毕竟是很多年的网络公司,做新闻比较多,技术的不算特别多。先去的时候就做题,做了很多题,量比较大,不过我自己也是很马虎的一个人,做题的时候有些没有注意到,比如有这样一道题:下面哪个不是JS的关键字。选项有[this,parent,class等等],我竟然没有选class,其实因为后端开发的比较多,当时也有点小紧张,搞的有点错。后面的题也有这样的问题,大多都是马虎的问题,后来搜狐的人还比较好,和我每题每题的讲解,中间他们也有一些题目的答案理解错误(以为我回答错误了),后来才知道我的真正意思,看来我的交流能力还是不行。
不过搜狐有一道题是值得商榷的,比如JavaScript有哪些基本类型,他们说只有Boolean,Int,String,在《JavaScript高级程序设计》这本书说到,实际上还有Undefined和Null,这两个是基本的数据类型,他们却说不是,这里求证一下。
笔试之后就是上机,做一个题目,这个题目就是一般在写HTML的时候,可以用ul,li去显示列表,而且还有1,2,3。。现在要实现一个效果,就是显示两列新闻,新闻分别标注1,2,3。。不过这里标注是要竖着排序,不是横着排序(不懂题目的可以自己写试试),这里只好用JS去做。不过也很可惜,一开始理解题意理解错了,然后又是交流和沟通,最后才写出来。所以自我感觉不算特别好。前端开发很注重HTML的语义等等,和后端还是很不同的。
总体来说搜狐面试的感觉不错(只是感觉面试的交流的时候很轻松,不是我做的不错),就算你有错别人也会和你分析,能学到东西,下次就知道怎么去避免错误了,不过硬伤是我几乎没有前端的经验,只能说自己能够快速上手,这是没办法的。。
百度
然后第二天就是去百度,百度给我的感觉就是比较大,但是百度的面试官让我感觉比较冷漠,一开始约了是10点半,然后我等了大概10几分钟,面试官除了问问题以外就说了两句话,你是郭靖吧,没有问题的话就等消息吧。最后送我到电梯的时候只是挥了一下手,我出去后才发现身上的访客的卡不能刷,而百度内部的门是必须要刷卡的,无语,和保安交涉之后只好走出门之后再饶到大门口,其实感觉不是很人性化。
百度的面试比较直接,其实从前面的面试官的态度也可以看出来,不废话,不多说,简单扼要。先开始说了一些我一开始做的项目的问题,比如做Bing搜索引擎的数据挖掘以及遇到的一些问题,还有一些优化的问题。说了这些基本的问题之后就开始说关于搜索的项目了,大概是这样的。
第一就是如何判断用户搜索的类型,比如用户搜索天龙八步,如何知道用户想要的是去电视剧,而不是书,然后我大概说了一下我的想法,比如用超链接纪录用户的信息和结果,抓取相应的网页,判断关键字和结果页面的关联程度等等。然后面试官就问如何判断两个词之间的关系的权重,比如刘德华和张学友这两个词之间的权重要比刘德华和天安门这两个词之间的权重要高很多,然后如何比较刘德华和华仔这两个次的权重比刘德华和张学友的两个词的权重(因为这两个词之间的权重在某些算法下是差不多的),差不多就是这样的题。然后面试官又问有没有更好的方式。。
最后百度还出了一道算法题,题目不是很难,大概就是20亿的URL去重复,内存1g,先说的是100万,这个简单,因为都可以放到内存中去,所以怎么找都可以(比如用堆或者用hash表),后来到20亿的时候,基本上我用的是归并的方法去重复,思路是正确的,不过后来面试官问有没有更好的方法优化的时候,我就不好回答,因为我也没有专门做过多路归并排序的优化啊。。无语。。
百度的面试基本上能说的都说了,但是面试官每次问有没有更好的方式的时候我就答不出来,很无奈,毕竟经验在那里。。另外感觉百度这边面的比较冷漠一点,不过还好了。。也没有什么很过分的,毕竟咱们都是去面试的嘛。。
豆瓣
最后说豆瓣吧,豆瓣很远,在三元桥那边然后坐967做个6站左右才能到,楼房很矮,不是高楼那种,不过进去有一种很舒服的感觉,是loft的装修类型,简约而不简单,一开始面试官没到,然后给我喝水,然后看了一些杂志,豆瓣内部比较小资,其实和豆瓣的网站感觉很像,小资,小众,不过很有个性,然后一进去就看到好多人用mac,呵呵,很对我的味嘛。
看了杂志看了一些之后(豆瓣喝水的杯子也很有个性,瓷的,不象其他公司是一次性的,也满好看的),面试官进来了,同样谈了一些过去的项目然后说了一下自己的意向,然后开始做题,题目也很多,量比较大,范围比较广,有前端和后端的,JS,HTML,CSS,C++,Java,算法,逻辑等等,后端的比较好做,大概就是字符串倒序,要求交换的空间最少,然后就是一串数字,找到升序间断最长的子串,基本上没问题,然后就是做前端的题目,做完了,感觉还行,不过和前端的人聊天之后感觉还是和理想的差比较多,不过我觉得豆瓣的题目也比较奇怪,考察的点很难理解,比如下面的题。下面css写法有什么错误和不妥的。
.somebutton {color:fafafa}
.divContent {color:red}
#hello_Content {color:yellow}
比如上面的比较明显的地方很容易找,比如第一行的颜色没有加#号,不过面试官说我题目答的不好,原因有这样的,第一somebutton取名不是很好,然后命名不好,如divContent是骆驼命名法,hello_Content又有下滑钱。说实话我听到这个感觉很无奈,虽然从题目上来说,错误和不妥,确实好像这个答案也是对的,不过不知道豆瓣在这方面倒底要考察什么,考察细心程度吗?我想一个团队不可能出现这种低级的无聊的错误吧,每个人的风格也应该相同,后面的几题也有这样的问题,感觉很怪。
不过豆瓣的最后的面试感觉很好,里面的人很好,氛围不错,聊天也比较自然,他们也是给每个题目做了点评,把他们认为完美的答案告诉我,从这里面我也学到了很多很多的东西,然后豆瓣也觉得我还行,不过基础比较不牢固,这一点其实我也知道,可能是做的事情太多了,很难真正的静下心来看基础的东西,但是豆瓣的人很好,最后还指点了一下我以后的规划,所以在豆瓣那边面的还是比较愉快的。
最后要说的
最后总结一下这三个地方,搜狐和豆瓣都会告诉我哪里错,哪里对,哪里要改进,不过百度没有,其实也没什么,不告诉你不代表这个公司很坏,人心很冷,因为每个人都不一样的风格。然后感觉其实公司招聘和我们很多人的想法都不同,公司一般都不会招那些感觉项目比较多,或者比较牛的人(虽然这能说明你比较有竞争力),比如你在做游戏方面比较牛,但是做前端,别人不一定要你,因为大公司很多不是看你牛不牛,而是适合不适合,所以如果去不了,我会感觉到有一些遗憾,不过也没什么(毕竟我完全没有做过前端的东西,经验比较少),而且从面试中学到了很多东西,这也让我觉得非常的开心,也知道了各个公司的要求是怎样的。
不过话又说回来,大公司招聘的都是最适合的职位,但是像我们这种应届毕业生或者刚工作1,2年的“学生”来说,是多么的难得,毕竟没有哪个刚干几年的人能说马上就能适合一个职位,哎,真是矛盾,不知道是不是学校的悲哀。
不过对于那些努力的但没进去的人们,稍微有一些宽慰,就是其实进不进的去和牛不牛其实没多大关系(当然很菜的话就不用说了),闻道有先后,术业有专攻,进不去不代表你水平不行,也不用自暴自弃,只能说明,你可能不太适合这个职位而已,或者又更好的人更适合这个职位(这个人不一定比你牛,但是更适合)。
这就是我的一点感受,回来之后感觉还是回答的稀烂,不抱什么很大的希望,但是还是觉得学到了东西,未来的it之路可能更加鲜明了吧。最后还是要铭记的就是,基础很重要。