5月4号通过电话进行了百度实习生面试,同时也是人生第一面,感觉十分糟糕,问到的都是很基础的东西,但由于自己掌握不够扎实,回答的一片混乱。
一开始先是自我介绍,由于我在自我介绍的时候说到自己的项目经历不是很丰富,于是面试官接下来就问我那你都做过那些简单的项目,简直欲哭无泪啊,接下来整整问了我有20分钟的项目,整个面试也就才36分钟啊。总结下,项目真的还是非常重要的,或大或小,只要是你自己认真做过的,能够有条理的讲出来就可以,所以,面试之前还是应该准备至少两个项目吧。
项目经历被虐后,面试官开始提问,一下是我还记得的一些问题,仅供大家参考:
1.cookie与session的区别,什么时候用cookie什么时候用session?
我自己对这个问题其实不是很清楚,当时答的时候也是模棱两可,给一个博客大家可以参考下,感觉讲的非常清楚:
Cookie/Session机制详解
2.数据库考察:
给你一张表,假定表名为a,其中有四列信息分别为id,city_name,user_name,number。例如,表中有一项为(1, beijing, xiaozhang, 3),表示小张在北京购买了3件商品。现要求写出sql语句,列出销量前三的城市以及其总销量。
数据库好歹我也认真学过,但就是想不出来top3要怎么实现,哭死了好嘛。。。
之后上网看了看,发现不同的数据库系统的实现是不同的,具体如下:
postgres下:
select city_name,sum(num) from a
group by city_name
order by sum(num) desc
limit 3//选出前三个
sql server下:
select top 3 city_name,sum(num) from a
group by city_name
order by sum(num) desc
以下是在postgres下实验情况:
3.http返回码都有哪些?
当时就只说出来一个200ok和404Not Found。。。
推荐:
HTTP返回码总结
4.http的get方法和post方法了解吗?两者有什么不同?
不是很了解。。。
推荐:
全面比较HTTP GET与POST方法
5.Linux操作系统用过没有,它的命令你都了解哪些?
我是真的没用过。。。不过上课的时候学过一些命令,所以就跟面试官说了解一些基本的,然后面试官就让我讲一讲,又一次被虐。。。
在网上百度Linux命令大全会有一堆信息,这里我就不贴链接了。要说的是,Lnux真的非常重要,百度产品大部分都是在Linux上进行开发的,所以还是去装个虚拟机用一下吧,那些比较重要的命令要理解的透彻,这样才能清楚地讲出来。
6.OSI七层模型都有哪七层?
这七层模型我还是记得很清楚的,于是就从物理层到应用层背了一遍,讲完了看面试官没有反应,以为自己哪个记错了,于是又再重复了一遍,接着就是一起沉默了好几秒钟,现在才知道人家不是只让我背一下这七层,而是应该再对每一层进行必要的解释的。。。关于七层模型网上的资料也是非常多,这里就不写了。
7.在百度首页搜索框中输入一个关键词,点击搜索后显示出搜索结果,这个过程是怎样的?
我当时答的根据网址找到百度的服务器,然后在上面检索,得到结果之后再返回,然后就涉及到了DNS域名解析系统,TCP传输协议,HTTP报文等等很多内容,但是我没能整体系统的回答清楚这个问题,主要是自己真的不清楚,求助各路大神,能不能给这个问题一个系统的解释,困扰甚久。。。