找工做总结-机会每每留给有准备的人(转载自江南烟雨)

2014找工做总结-机会每每留给有准备的人

转发请注明出处:http://blog.csdn.net/xiajun07061225/article/details/12844801html

 

其实个人求职过程在十一以前就已经结束了,整体讲比较顺利。参加面试的几家公司基本都拿到了offer,分别是阿里巴巴、美团网、创新工场涂鸦移动以及华为当时也参加了其余公司的面试,好比人人,一面事后收到了二面通知,拒了。创新工场豌豆荚一面结束后等消息。十一事后的公司基本都是酱油而过。去哪儿面试拒了。腾讯一面后收到了二面的通知,也拒了。主要是由于本身已经拿到了理想公司的offer。看来人仍是须要一点压力,这样才能发挥出本身的潜能。也本着攒RP的原则吧,感受不必刷那么多offer,并且我也知道本身的水平,对阿里的offer已经很满意了。剩下的时间还不如先预习一下入职要用到的东西。其实好早就想着写总结的,一直拖到如今,我想要是我再不写总结,估计不少东西就记不起来了。linux

 

1、自我介绍-往事不堪回首nginx

 

首先自我介绍,某985院校计算机学院普通硕士。无ACM、挑战杯或者是各类编程大赛获奖经历,无牛逼哄哄的项目经历,无名企实习经历。总之一句话,一个再普通不过的CS硕 士。本科期间成绩平平,课外也没有学太多东西,基础很通常。经常后悔白白浪费了本科期间阅读那些经典书籍的大好时机。对于硕士期间本身的实验室,很差意思 吐槽太多。项目很扯,没有感受学到了什么东西。方向是什么图形图像,面试到如今没一个面试官感兴趣。代码也没有写多少行。因此起初一直很担忧本身在面试中 怎么来介绍本身的项目。所以,为了准备秋季校园招聘,我提早作了不少准备,在如今看来,我当初的选择是彻底正确的。下面详细介绍本身所作的准备吧。web

 

2、实习生应聘-备受打击面试

 

我正式开始准备找工做是从4月份开始。在此以前,除了在实验室作所谓的项目,而后就是学习一些基础的东西,主要包括C++STLLinux、算法。这几项其实都学的比较浅。看过的书有:《C++Primer》、《C++标准程序库》、《STL源码剖析》、《深度探索C++对象模型》、《EffectiveC++》、《鸟哥的Linux私房菜》。到了4月份,参加了腾讯是实习生招聘,结果是挂了。我报的是后台开发。因为没有Linux项目经验,面试官狂问数据结构和算法。一面还好,顶住了。问到的题目有:非递归二叉树遍历-纸上写代码、shell排序、基数排序、找出一堆数中出现次数大于总数一半的数,还有一道算法题是:给出一天内的不少条QQ号的登入及登出记录,每条包括时间、QQ号、标记是登入仍是登出的标记符。要求求出一天中最大在线人数。(精确到秒)。基本都答出来了,顺利进入二面。二面面试官瞅了一下个人简历,就开始问算法。四道算法题,具体题目能够看这里http://blog.csdn.net/xiajun07061225/article/details/8882981。 四道题答出来两道,一回宿舍,用微信查了下,就进入人才库了。好吧,被鄙视了。其余的一些公司也投了,好比阿里、大摩、百度等等,不是简历筛选没经过,就 是笔试没经过。反正木有得到面试机会。不过,我很庆幸本身参加了实习招聘,知道了本身的短板,知道了本身之后想作后台开发须要准备些什么,也了解了面试中 面试官的经常使用套路,这对我接下来着手开始准备看书准备找工做有很大做用。算法


在 这里须要说明的一点是,根据个人了解,实习是一把双刃剑。若是能去好的公司实习,可以得到正式offer,这样可以给本身的简历锦上添花,再去面试别的公 司也是一个筹码。可是若是不能得到正式的offer,也由于实习的缘由失去了复习打牢基础的时间,在笔试面试中会很吃亏。因此,你们必定要考虑清楚。shell

 

3、为找工做作准备-养兵千日数据库

 

在此以后,我便开始了个人读书计划,目标是后台开发职位。重点放在C++、数据结构和算法、Linux、网络、Nginx我之因此要学习Nginx,主要缘由有,一,这是一个优秀的开源web服务器,研究开源代码,很是有意义。这也是腾讯面试官给我以及另外同窗的建议。二,拓展下个人视野,弥补本身项目经历不足的问题。下面展开介绍这几个方面的准备。编程

 

下图是个人部分书籍。其中一些也没有去细看。数组


 

1、数据结构和算法

在以前已经阅读了一遍《算法导论》,感受学的不够深刻,不少都忘记得差很少了。所以从新阅读了重点部分,并且用C++编程实现。好比:链表、二叉树、AVL树、红黑树等等。图的算法就看了搜索算法:BFS以及DFS。而后另外在网上找了A*搜索算法的资料看了下。一提到搜索,A*算法确定是少不了的。以后又看了《编程之美》、《剑指Offer》。不只仅要看书,还要总结。尤为是笔试面试中出现频率很高的链表以及二叉树的操做,我将各类操做进行了总结,而且练习白纸写代码。白纸写代码是一项重要的基本功,包括边界条件考虑、书写风格等等,会直接决定面试官对你的印象,所以我着重进行了系统训练。《STL源码剖析》看完以后,我已本身动手实现了一些容器:stackquenepriority_queneheap等。另外,我也阅读了网上一些大牛强力推荐的博客资料,好比July的编程艺术等。将前面几本书中未曾出现的一些数据结构和算法看了一下,好比:并查集、K-d树、R树、约瑟夫环问题、数据库存储的倒排索引等等。总体讲,这部分准备的仍是很充分的,面试中出现的大部分数据接结构和算法题都解决出来了。

 

2Linux和网络

linux和网络是我最薄弱的部分,也是最担忧的部分。由于木有这方面的项目经历,一直担忧若是在简历上写上这一项,会不会被问倒。在这里要特别感谢个人基友LM,给了我很大的指导,在这段时间里,一块儿学习,一块儿进步。linux首推经典书籍《Unix环境高级编程》和《Unix网络编程》,网络基础知识首推《TCP/IP协议详解-卷一》。APUE读了两遍,UNP挑了部分看了。感受只看书根本不够,因而在LM同窗的提议下动手写一些demo程序,好比聊天程序、基于线程池的生产者消费者程序等,加深了对基础知识的理解。

 

3C++STL

重温面向对象经典书籍《深度探索C++对象模型》。这本书介绍面向对象机制讲的很是不错,这也是笔试面试中常常出现的考点。重温《Effective C++》。关于STL,我想学的更深一点,做为本身的一项能够在面试中发挥的亮点,所以又从新看了STL内存管理、迭代器、traits编程技法、典型容器的原理。这也在后面的面试中屡次被问到。

 

4Nginx

其实Nginx只学习了两个月。我购买了两本书籍:陶辉的《深刻理解Nginx-模块开发与架构解析》以及《深刻剖析Nginx》。首先阅读陶辉的书,从整体上对Nginx有个初步的了解,了解了Nginx模块开发流程以及总体架构。并尝试搭建了Nginx环境,实现了书本上的几个模块例子。接下来开始着重看重要的模块:进程模型、负载均衡、epoll模块。阅读了重要的源码,并尝试用gdb跟踪(其实作的比较少了,没太多时间!)。在面试中常常被问到我以为Nginx的优越性在哪?我就提提进程模型、epoll了,再和Apache简单作了下比较,基本能够蒙混过关。


笔试题面试题

 

至于笔试题面试题,也看了很多。大多数在网上搜索的。在这里给你们推荐一些比较好的学习资源吧:

Coolshellhttp://coolshell.cn/

Matrix67大牛的博客:http://www.matrix67.com/blog/

July的CSDN博客:http://blog.csdn.net/v_JULY_v

何海涛博客:http://zhedahht.blog.163.com/

笔试面试的经典:Cracking the coding interview--问题与解答http://hawstein.com/posts/ctci-solutions-contents.html

LeetCodehttp://leetcode.com/

这里有很多笔试题集锦:http://blog.csdn.net/hackbuteer1


 

项目经历

除了上面的基础知识,也系统梳理了一下本身的项目。虽然项目经历很扯,可是,也须要仔细梳理下思路,不能让面试官感受读研期间没有作什么事情。把项目流程、关键点、难点、解决方案等等从新回想了下。以便面试官问到这些问题可以很流利地答出来。

 

4、校园招聘-用兵一日

接下来介绍我参加的几个公司的面试状况:阿里巴巴、美团、人人、华为、创新工场涂鸦移动、创新工场豌豆荚。

 

一、阿里巴巴-拿到offer

阿里巴巴笔试比较难,题目属于互联网公司中比较难的了。笔试题中有较多的几率题之类的数学题。并且选择题选错了会扣分,想得高分真是有难度啊。22日晚上笔试完以后就感受不好,当时感受可能就没戏了。没想到次日中午午睡的时候就收到阿里巴巴的面试通知,竟然是当天下午四点。起初还觉得是次日。不得不说阿里巴巴的效率真高,传说三天所有搞完。猛然间想起来已经和创新工场涂鸦移动HR约好了二面,也是最后一面了,刚好也是在下午四点。这可怎么办?连忙打了一个电话给HR,结果发现是个总机,须要拨分机号,无奈只能做罢,先去阿里吧。

 

三点从学校出发,坐公交来到君宜王朝大酒店。发现等待的场地很小,等待的人也不是不少。等到4点, 阿里面试还没开始,结果涂鸦移动那边打电话来了。情急之下说如今有点事情,能不能十分钟以后打过来。而后我去和阿里的工做人员说能不能推迟四十分钟,我想 四十分钟应该可以结束涂鸦移动的面试。工做人员说没问题,而后连忙去找安静的地方、光线充足的地方准备电面。结果发现酒店里面处处都很暗,比较亮的地方只 有走廊了。算了,蹲在走廊上面吧。整个面试过程大概四十分钟,感受面的还能够。结束后立刻去找阿里的工做人员,等候阿里的面试。

 

等了没 一会就通知去一面。进去后,发现很大的一个屋子里面摆着不少桌子,一个桌子是一个面试官和一个面试者单面。个人面试官很年轻,也很和善。一开始就和我聊一 些轻松的话题。他首先是看我简历,看到个人兴趣爱好的时候,还问我:“你还会交谊舞?”我笑了一下,回答:“是啊”。他又笑哈哈的说:“就是为了把妹 呗。。。”囧。。。我忍不住笑了(PS:竟然这也被你看穿了)。而后问我家是哪里的,等等。以后就是开始一个自我介绍,而后是对着简历问技术。C++、算法与数据结构、LinuxGDB、网络、操做系统等等只要我写了的都问了一个遍。由于我在简历上写了博客地址,因而在电脑上敲进去打开看了下。我博客写的文章还挺多的,不过都是些基础的总结的东西。没想到面试官很仔细的看了,以为还不错。又对着博客问了不少东西。他看我课外研究了Nginx,还写了一些博文,也问了nginx上 的一些东西。还好前两天看了一下前面的笔记,答的还凑合。后来竟然从我博文里面抽一些东西来问我,我回答以后才告诉我说:“我是在用你的博客来当面试问题 哈”囧…总共面试了一个半小时左右,比通常人的四十分钟多好多。整体感受一面面试官人很好,很和善,健谈,这样的面试很开心。

 

因为一面面完以后就七点多了,工做人员告诉我,因为今天太晚了,就让我明天早晨9:30再去参加二面。次日一大早,天下着大雨,早起吃个早饭便匆忙赶到酒店。等了会就参加二面了。二面是一个技术面试官和一个HR同时面。首先依然是自我介绍,和一面的自我介绍差很少。项目也许是不感兴趣吧,便开始出算法题,都要求写代码。总共问了两道算法题,不算难。第一道题是两个字符串AB。从A中剔除存在于B中的字符。好比A=hello world,B="er",那么剔除以后A变为"hllowold"。空间复杂度要求是O(1),时间复杂度越优越好。我又问了下字符串中字符是否是仅限于小写字母,它说能够这么认为。那么判断A中字符是否是在B中的话就能够用hash了。这道题不难,直接设置一个count变量,记录A中存在于B中的字符数量。而后设置一个指针遍历字符串A,遇到不是B中的字符往前移动到正确的位置便可。第二道题是求打靶十次,得到80环的几率。我是用相似于八皇后来作的,遍历加回溯。只不过代码没写太全。先想写一个非递归的回溯的,可是楞是憋不出来,因而想着用递归吧,要简单一点。反正写的不全,仍是TM代码写少了啊。水啊~~技术方面其余的就是问的课余时间都学些什么。我课余也就学习了NginxLinux。首先就聊了下Nginx,什么进程模型,优势等等。而后问了selectpollepoll的区别。这个很熟悉,很快答上来。以后又问了Linux是如何减小内存碎片的问题的。我就说了下slab,貌似主要应该是伙伴算法。这个问题回答的很差。而后HR问了一些问题,什么家乡啊,职业规划啊,最感兴趣的三家互联网公司什么的。结束了我问何时能够出通知,说一周以后。囧!这是否是挂的节奏啊!!!

 

话说等通知真是纠结的很。终于在25日晚10点左右收到了阿里的HR电话,说经过了面试,次日去参加意向会议。阿里是目前为止我最满意的互联网公司了,这段时间的努力总算没有白费。

 

二、创新工场-涂鸦移动(拿到offer)以及豌豆荚(仍在面试中)

笔试题答的不错,总分25分,得了22分。错了一个选择题,编程题求根号2的我采用的是二分法,实际上更好的方法是牛顿迭代法。还有错了一道数据库的选择题,数据库真的是不会啊,o(╯□╰)o

 

大约9点 多笔试完,当天晚上十一点就收到了面试通知,开始说是早晨八点多,可是由于上午有华为面试,就从新约在了下午一点。上午从华为面试完急匆匆赶回学校吃了午 饭,回寝室坐了一会就和同窗一块儿出发去启明学院参加创新工场的面试。到达地点的时候大概还有二十多分钟,因而我和同窗掏出手机,又温习了Onenote上的笔记,把堆排序、归并排序等等基本算法又琢磨了一遍。话说onenote真心很好用,比有道笔记要好用不少。啊哈哈~算是给微软免费打一个广告吧~

 

很快就一点了,一位面试官把我叫了进去。猛然间发现这位面试官怎么这么眼熟,后来知道了他的名字后才发现是我在人人网上的一个好友,ACM大牛。面试官人很随和,让我作了一个自我介绍,仅限于技术上的,一看就是技术宅,哈哈~而后对着简历看了下,开始问问题。由于个人实验室项目都是图形图像方面的,面试官一点都不感兴趣,因而都是对着个人技能那一栏写的进行提问。先是问了Vim我平时都使用过哪些插件。GDB调试命令:查看栈帧backtrace等等。fork函数的返回值,以及执行过程。linux方面的东西问完以后就开始算法。总共写了三个算法题,都要求白纸写代码。由于我平时这方面练习比较多,所以都不是问题,很快就写出来了。第一道题是有一个int型数组,每两个相邻的数之间的差值不是1就是-1.现 在给定一个数,要求查找这个数在数组中的位置。我先说了下最基础的方法,那就是顺序遍历,还没说完面试官就打断问有没有更好的方法。我就说能够在遍历的时 候进行一些跳跃,提升查找效率。而后他说,嗯,写代码吧。第二道题记不得了。第三道题是一个字符数组,里面的字符多是a-zA-Z0-9.现 在要求对数组进行排序,要求全部小写字符放在最前面,全部大写字符放在中间,全部数字放在最后。并且各部份内部分别有序。我一开始没想到这个数组可能会很 大,因而用比较笨的方法来写代码,他过了一会就问我是否是要先分别排序再合并,我说是的。他就问若是数组很大呢?我立马回答出了桶排序。所以你们在开始答 题的以前必定要和面试官多沟通,把题目意思搞明白。

 

而后面试官就说没啥问题了,问我又没啥问题。我就随便问了下总共有几面就出来了。出来才发现总时长才二十分钟。囧!这是否是挂的节奏啊!还好很快就收到了双选会的通知。

 

双选会

双选会在中秋前一天下午举行。主要是到场的6家创新工场旗下的公司作介绍,而后你们填了一个意向表。每一个人能够选择三家意向公司,并且三家公司都有面试机会。我填的是豌豆荚、涂鸦移动和墨迹天气。会上还说涂鸦移动的面试会在当天晚上就开始,所以中秋期间也要准备随时面试。

 

二面-涂鸦移动

果真当天下午5点就收到了涂鸦移动的二面通知,仍是晚上十点的。我去,这是第一次这么晚去面试。原本是十点,结果开始得比较晚,十一点半才面试完,回宿舍都关门了。感受面试官特别注重考查思惟能力。他问我会哪些数据结构和算法,我先说可链表、数组、栈、AVL树等等还没说完就被打断了,他补充说,偏重算法。我挑了我熟悉的几个说了下:BFSDFSKMPA*算法。而后就出了四个算法题。下面说说两个较难的算法题

1)一个矩阵,指定其中两个元素,将这两个元素用折线链接起来,折线只能朝右或者朝下,要求:折线组成的路径上的数的乘积末尾的0最多。

 

2)连连看游戏。判断两个点可否链接起来消去,并且要求出最短路径。能够用哪些搜索算法?BFSDFSA*A*如何剪枝?

HDOJ 1175

典型解法:BFS

 

其余同窗的面试题:

由‘0-9’组成的字符串,求一个最大子串。该子串不能知足条件:该子串的任意两个子串对应数字的乘积字符串对应的数字不能是这个子串的子串。

 

原本觉得涂鸦二面面的不好,结果仍是收到了Offer。今年好像招的人很多。

 

二面:豌豆荚:

豌豆荚的代码超级好,氛围也很不错。咱们学院一个大牛在4月份就拿到了正式offer,听他说,里面所有是大牛,给力的工资以及各类福利等等,让人艳羡不已。豌豆荚招人很是严格,通常有6-7轮技术面试,难度可想而知。我本着打酱油的心情参加了面试。

 

面试时间:2013-09-21,5:00

总时间大概1小时。

先是一个女工程师面试,主要是问简历,聊了Linux shell命令,统计出一个文件夹下大小大于7MB的文件夹,这个没答上来。还有的记不得了。接下来又安排了一个面试官专门问我C++的,主要是问STL,内存管理、Vector容器等等。以后就是线上编程环节。那边能够看见个人一举一动,第一次这样面试,压力仍是有点大的。题目就是将一个四位整数好比4298转化为大写:四千二百九十八。我漏掉了一个状况:就是十的时候,前面不须要一!PS:不得不说,中文博大精深啊!而后就结束了,我问了下以后还有几面,HR说还有至少两到三面。好吧。不得不说豌豆荚的招聘真心严格。

 

原本觉得豌豆荚挂了,结果时隔十多天于1016日收到了HR电话,说要进行二面。面就面吧,就当长点见识,这高富帅公司也从没想过进去。

 

三、美团-拿到offer

笔试是六道大题,有几道是写代码,有几道是计算题。次日收到面试通知。美团是三面连续着面,经过一轮面试立刻进入下一轮面试。面试地点在大学生活动中心。一面,面试官让我介绍了一下项目,我就blabla介绍一通,目测他也没听懂。随便聊了下就开始问C和算法题。算法题不难,纸上写代码。大约35分钟面试结束,在门外等候了一会,紧接着进去二面。二面就是几道算法题,有的写代码,有的讲思想。基本都答得差很少了。又出来等消息。因为已经5点了,hr告诉我先去吃个饭,而后回来参加三面。我特地问了一下三面是技术面仍是HR面,她说是技术面,技术副总裁面。汗!压力大啊,副总裁面试!果不其然,副总裁面试就是不一样,问题一个接着一个,也颇有深度。好比项目中遇到了哪些问题,是怎么解决的,软件设计,LinuxNginx等等。反正不少没答上来。面完以后就感受要挂的样子。由于听宣讲会的时候说道美团今年全国只招200人。没想到一会就收到了HR电话,算是HR面吧。

 

十月初便收到了美团网的offer,薪资也还蛮给力的,氛围也很不错,只不过在北京额。

 

四、华为-拿到offer

华为先是机试,三道编程题,题不难,可是只作出来两道,第三道题题目理解错了,尼玛。面试分为两轮,一轮技术一轮HR。感受华为技术面试是我面的最差的。几道题一个都没答上来。什么数据库存储原理、linux内核的东东….囧。干吗老是问我不会的呢!

 

本感受没戏了,不事后来也收到了签约池的信息。再后来就收到了HR聊意向的电话。虽说华为今年涨薪了,可是对华为的氛围一直没有什么好的印象,没有去的欲望,不久就拒了。

 

五、人人-二面就没去了

人人就面了一面,由于有阿里offer二面就没去了。一面感受还不错。面试在咱们学校的一个咖啡厅。面试官主要问C++STLC++主要问面向对象的一些东西,基本答出来。STL我比较熟悉,也没啥问题。最后他介绍了一下本身所在部门的状况,说是作广告推荐、数据挖掘的。问我对之后职业发展有什么意向没。我说对后台开发、广告推荐很感兴趣,他就记录下来了。一面大概35分钟,这样就结束了。

 

后来不久就收到了二面通知,不过没有去了。

 

5、总结-一点小感悟

其实我历来没有料到本身的求职过程会这么顺利,由于实现没有发现本身身上有哪些过人的优势。

 

自我感受我在面试中的亮点主要有三部分:

1)基础扎实。不少公司都很是注重基础:语言、数据结构与算法、Linux、操做系统等等。手写代码能力很重要,有必要重点强化训练。

2)课外知识。我课外花时间学习了web服务器Nginx,虽然研究得不是很深刻,可是了解基本的架构和重点模块。对于服务器模型有了基本理解。

3)技术博客。个人技术博客原创博文已经不少了,虽然没有太多高深的东西,都是一些基础知识,可是大可能是本身加以总结了的。大多数面试官都打开个人博客看了,评价还不错。


其实,关于怎么样去学习,并无固定的套路。有 的同窗,在研究生期间作过比较出色的项目,可以赢得面试官的青睐,好比发过论文,或者是和面试官的方向一致,或者是当下互联网比较热的方向等等,这样,可 能一次面试,项目聊完就没有多少时间了,面试官也不会去问其余的东西。好的项目经验可以让面试官以为你实践经验丰富,能够直接拿来干活,经过面试的几率也 是很是之大的。若是没有好的项目经验,最好努力去打牢本身的基础,多关注互联网的前沿,充实本身,同样能够赢得面试官的赞许。总之,你们都要有本身的亮 点,能让面试官眼前一亮,那么,经过面试也是不难的事情了。


不 得不说,面试也看眼缘和运气,有时候问的东西恰好是本身都会的,有的时候容易遇到挫折。你们要善于把面试朝本身擅长的方向引,展示本身的优点。多数面试官 都不会以问倒求职者做为目的,而是每每尝试去发现求职者身上的有优势及潜力。应聘者应尽可能将面试当作一个相互交流的过程。

 

最后,但愿个人总结可以给各位学弟学妹一点借鉴的意义,但愿你们都能找到好的工做!

 



相关文章
相关标签/搜索