其实这篇总结很早以前就开始写了——去年11月底就面的头条,只是由于总总原因没有完成,趁现在假期补上。
面试用的是ZOOM视频会议,这里提醒大家视频面试前现检查网络情况如何!一定要保证非常流畅,不然等等面试官听到你的讲话断断续续的,或者是你听不清问题一直让面试官重复一次,都是一个减分项。
一、面试前
这次面试可以说是比较匆忙,当时我手里还有一个比赛,再加上那时候正好是我们伟大的岳麓第一高中期中考的时间段,我几乎没什么准备就上了,就只看了简历上写的几个项目,还有网络协议、java基础、算法题的一些东西,也不是很深入,对于数据库这些简历上没有写的东西压根没有复习到。这里提醒大家注意一点:面试官特别是在一面的时候,是会问所有的基础知识的,就是网络通信、数据库、操作系统、基础算法。
二、面试ing
首先面试官应该是看过我的简历,发现我还是大二的学生,就问我可不可以保证实习时间之类的,这个要怎么回答就不用说了吧。接着让我自我介绍,从操作系统、算法、数据库、网络通信四个方面介绍自己的了解情况。这里就实话实说简单介绍一下了。其实这里最好有偏好,引导面试官接下来的问题。可是我那时候没有想到这个。接下来我也会从这四个方面来总结这次面试的问题。
1、操作系统:
聊一聊操作系统的内存管理?具体一点,聊一聊虚拟内存?
线程和进程有什么区别?具体一点,谈一谈它们堆栈的关系(区别)?
怎么处理高并发问题?加锁、控制信号量、加条件?怎么处理死锁?
2、网络:
看你做过网络聊天室的项目? 你用的是UDP还是TCP? 可以聊一聊TCP的三次握手和四次挥手吗? 最后一次握手和挥手有什么意义吗?
3、数据库:
什么是数据库的第一范式和第二范式?
谈一谈数据库索引为什么可以加快查找速度?数据库主键可以有很多个吗?为什么只能有一个主键?
4、算法:
算法题1:怎么最快的找到一堆大数组里面第十大的数?
算法题2:从一个素数到另一个素数有几种方式?
三、面试结束:
你还有什么问题要问我的吗?问:你对我有什么建议吗?头条对于实习生有什么要求吗?或者说更看重哪些?
面试官回答,他们部门想要招基础比较好,学习能力强的同学(貌似每个厂子都是这样的吧),对于实习同学,更加看重数据库....建议我才大二,还有时间,打好基础.....
最后,这次面试感觉面试官从我高并发那问回答开始,就放弃我了,后面只是照顾我的面子没有直接挂我视频,面试半个多小时结束。。好多问题我也回答不上来。。。看来对于像我这样的非科班来说基础还是最重要的....结果果然一面挂了,看来这400块不是那么好拿,任重道远啊.........