从高中开始接触电脑就使用360的产品,也算是360的忠实粉丝了,大二的时候看到360来我们学校校招,从此就开始认认真真准备,大四开始准备简历和一系列网申。现在把我的经历用时间表的形式写出来,希望给大家一点经验。
2016.08
开始搜寻网上关于奇虎360的面经和岗位要求,发现自己距离心目中的公司还差些,但是距离目标不再是遥不可及,痛下决心决定认真补上,重新拿出大一大二专业基础书开始复习算法知识,打好基础来面对面试。
2016.09.
九月上旬,开始用Lintcode刷题,对从简到难,一个一个方向搞定,不会的题目查询www.jiuzhang.com/solution (http://www.jiuzhang.com/solution),先自己动手再参考答案,觉得自己功力大涨。
2016.10
360来学校做暑期实习生的宣讲会,十分紧张的把简历递给HR。希望能顺利过简历关。
2016.10.02
HR安排了笔试。
前面大部分是考的基础方面,感觉丝毫不慌。
后面三道题,一道题关于价值观方面(不太方便透露),两道程序设计方面的题目,其中一道在Lintcode上面做过类似的,Lintcode题目是:
实现一个链表的反转:http://www.lintcode.com/en/problem/reverse-linked-list/
参考答案:http://www.jiuzhang.com/solutions/reverse-linked-list/
还有一道题完全没有思路,把自己想到的都写上去了,感觉不是特别好。后来才知道这道题目是Lintcode上hard难度的题目,然后,我竟然没刷。
Lintcode原题是:http://www.lintcode.com/en/problem/sliding-window-median/
参考答案:http://www.jiuzhang.com/solutions/reverse-linked-list/
2016.10.08
收到一面面试通知!意外的惊喜!!后来才知道,我没做出的那道题实际上大大的超出了对我们的要求,按照后来boss的说法只是“彩蛋”。
2016.10.09
早上8.30到达安排的面试地点,等待了大概一个小时之后开始一面。面试官先跟我聊了聊平时学校的一些课程,然后开始考察基础知识,主要是算法和数据结构,有同学运气比较好全称聊项目,也有同学被面试官问了4.5个算法。我被问了大概2.3个算法,然后聊了撩我在简历上面写的一个跟着导师做的项目经历。
2016.10.11
晚饭时间收到短信提示准备二面,暗暗的开心,随机好好休息。
2016.10.15
二面面试官没有问基础和算法,全称跟我聊项目,因为其中一个项目没有全称参与,所以很多点模模糊糊的说不太清楚,索性直接跟面试官说清楚了我在项目中的情况,面试官表示理解。随后让我写一下快速排序,自我感觉写的不错,抬头发现面试官也频频点头。欣喜之余感觉有戏。
快排Lintcode原题:http://www.lintcode.com/en/problem/sort-integers-ii (http://www.lintcode.com/en/problem/sort-integers-ii/)
参考答案:http://www.jiuzhang.com/solutions/sort-integers-ii/
2016.10.20
收到短信提示去北京准备三面,来往路费报销,再次重新看了lintcode错题和算法重点,离梦想已经十分接近了!给自己一碗浓浓的鸡汤。
2016.10.25
一早起来准备三面,三面的经历很波折,先是面试时间延迟了一个小时,很紧张的等在会议室,也不知道干什么。然后来的面试官看上去十分的严格,拿出我的简历仔细看了大概5分钟,然后指出了我的项目经历并不是很多。随后问了我关于进程池的一系列问题,从基础概念到具体的应用和特殊的用法,辛亏之前看过类似的应用文章,不然真的很悬。回答完这些问题,面试官随后让我写一个memcpy和非递归地中序遍历二叉树。完美完成!
Lintcode二叉树中序遍历原题:http://www.lintcode.com/en/problem/binary-tree-inorder-traversal/
参考答案:http://www.jiuzhang.com/solutions/binary-tree-inorder-traversal/
之后面试官又聊了聊关于职业规划方面的,从中得到的启发很大。他也是刚刚毕业4年,但是现在已经做到部门的领导了,负责一个项目。一个初级码农是给你任务,你回馈代码。中级码农是把代码分为多个层次,而高级码农则是指出你的结构问题。但是写出代码是基础,如果你代码都写不出来,是要被开除的。
下午HR面,无非是价值观和公司制度的考察,并没有问到比较私人的问题,随后给了offer,面试成功。