9月份快要结束了,就来总结一下这一个月找工作的辛酸,无奈和经验教训。面了很多家,但目前还没有收到一个offer。专业是信息与通信工程,想找软件开发方向的工作。计算机的基础全部都是自学的,编程也是自己一步步摸索学习的,项(he)目(he),老师出国,全靠自己摸索,阅读过无数文献,无数作者个人主页,看过众多代码,也写过一些,项目集中在算法研究。说来就是千万找工作大员中极其平庸的一个,平庸的人找工作就由很多因素决定了,学校,运气,外貌等等,而优秀的人这些东西都是外在的,刷刷刷扔出一堆含金量高的项目,编程各种牛,公司是无法拒绝这种人的。但大牛大部分也都不是天生的,而是一步一个脚印慢慢积累蜕变而成。所以别老盯着找工作,而要成为卓越的人。就如《3 idiots》所说“追求卓越,成功就会在不经意间追上你”,追求成为大牛,好工作都会自动找上门来的。
1.华为
华为8月份就开始了,全国貌似招上万人,真是铁打的营盘流水的兵,华为笔试就是上机,三道编程题,只要做出来一道就有面试机会。很遗憾的题目在底下调试通过,在华为的oj上始终是错误,无奈错过华为,虽然软件研发没机会,但是华为给了转技术服务的机会。不太喜欢天天加班的生活,不是很想去华为,于是也没再尝试。
2.阿里
阿里也是8月多开始了,首先是上机测试,报的是算法工程师,上机测试考了很多数学,计算机基础,有两个编程题和系统设计题。感觉做的不好,稀里糊涂就进了面试。阿里面试在成都在百度笔试后两天,本打算参加百度的笔试后就在成都呆一天参加面试,可是中兴刚好中间那天来我们学校要笔试,只能赶回去在赶过来,阿里面试的 前一天睡的不好,又早早起来搭车,12点多到成都,进酒店,人山人海的,整个会场乱糟糟的,只有叫到人才能去登记,期间还认识了一个老乡兼校友,预约的是4点的面试,在那会场等到了五点才去交简历,然后又等了一个小时叫到我,又让我站了一个小时,才面试,状态糟的不行,也让我对阿里的好感度急剧下降。
面试的是一个很年轻的面试官,人很好,那时我是最后一个,面试官也有点心不在焉的,看了简历,问了项目,用的什么方法,遇到什么问题,怎么解决的,面试官还是懂一点的,问了几个项目里比较详细的内容,SVM的损失函数的定义,滑动窗口的原理,我也解释了下,不过之前没有好好准备,很多地方都没深入讲。面试官也不为难你,觉得你不会就不会深究(汗,这是被刷的迹象吗?),项目问了差不多,就开始问计算机基础的东西如tcp和udp的区别,栈和队列的区别(开玩笑吗?),大根堆的构建,还出了一道题,两个数组,其中一个有千万个元素,一个有几十个,叫你找出两个数组中相同的元素(bitmap,hash?)。整个面试过程感觉挺轻松的,面试完就回到会场等,不一会就叫我名字,可以回去等通知了(心里千万只神马奔腾而过!!)。算法报的人特别少,在等的过程中没叫到几个是算法的。面试官虽然不说,但是一个问题一定要想好再回答,不要紧张,有逻辑的回答,不要这回答点,那回答点。如果没有特别亮点的地方,基础又不好,口才又不好,还是回去好好修炼内功再来。
3.百度
大老远跑成都去笔试,感觉做的还可以,唉,可惜面试通知都没有,直觉不准?
4.中兴
一直对中兴的印象很不错,国企,压力也没华为那么大。报的是软件开发工程师,去听了宣讲,首先是一个经理介绍中兴,说中兴的各种好,一直强调安居房这一福利,然后一个师兄现身说法,最后是提问,抽奖还有面试官宣誓(这~)。笔试那个人山人海,一个阶梯教室全是人,本来还要求两个人要间隔着坐,结果人挨着人,还坐不下,试卷由AB两套,A卷考的全是JAVA,android,B卷看着应该会简单点。我发到的是A卷,由于java没怎么学过,就只会做几题,简答题考了进程和线程的区别,android用了什么数据库,敏捷开发的概念,云计算的安全性。程序题,用递归计算n!和写一个单例模式。
做完的感觉就是坑,一直以为没戏了,也没太在意,第二天下午四点多就收到一面通知,那会儿正在成都焦虑的等到阿里面试,心想不会是要推到明天,那还怎么回去。幸好八点多就面完,一路狂奔火车站,买了票,等回到学校都快晚上12点了。简直是煎熬,晚上又似睡非睡的,八点多就起来,早早去酒店等了,由于昨天做了很久火车,又走了很久的路,那天全身酸痛,好不容易到我了,到快12点半了。中兴面试官是两个男的,中年,估计也不是很懂,先叫我讲项目,项目确实有实实在在做的,面试官听了也还可以,然后就问问题了,大部分是比较常见的问题,结构和联合的区别,字节序,单例模式,udp和tcp的区别,动态链接库,静态链接库,我回答的一半一半吧,唉,当初不知道是看哪个面经说《程序员面试宝典》太烂,就压根都没看,可是大部分公司的技术面试官也是水水的,问的全是面试宝典上的问题。一面过了,接下来就是二面,二面的是一男一女,问的都是非技术问题比如有没有女朋友,喜不喜欢跟别人交流,家哪儿的,如实回答就好。
5.360
360十月多来学校,笔试考了很多,有点像腾讯,行测题,c语言,c++,算法,操作系统,计算机网络等,后面有两题编程题。报的是自然语言处理/机器学习/数据挖掘算法工程师,进面试,问的问题很广泛,面试官也是不太懂,感觉偏向应用,项目几乎都不问,仅有的一点优势都没了。问的语言基础,算法,还是试卷上的编程题。结果一面被刷····。
6.锐捷网络
笔试人挨着人做,都抄来抄去的,笔试题超简单,全是c语言(偏向底层开发),竟然还考了goto语句(不是不建议用嘛!),面试就一面,项目跟公司做的不相关,就没怎么问,问了static函数(发现公司都很喜欢问相关问题),局部变量,全局变量,计算机网络基础,还要了成绩单等。
更新:后面接连笔试面试了几家公司,终于找到个要我的公司了,岗位多媒体算法,工资···,虽然不是很满意,但是找工作太消耗体力,脑力,简直就是煎熬,就签了。
总结:
1.基础要扎实,c/c++要熟悉,操作系统,算法数据结构(很重要),计算机网络,软件工程,一些数学基础
2.项目,如果学校里做的项目太理论,就要结合自己兴趣做一些东西,建个个人网站,开发APP等,要让自己有亮点,而只有基础,公司会觉的要不要你都可以。
3.针对性的准备,很多公司技术面问的问题都大同小异,可以有针对性的去复习,准备。
4.个人表达,虽然是技术相关的工作,但是表达也是能力很重要的体现,日常交流中,回答问题要有逻辑,不急躁,说话要大声,有底气。
5.总之要有自信。
现在懊恼之前没认真做点事情,不如现在开始努力,这样以后的时间就不会懊恼了。做一件事最好的时间除了很久以前,还有就是现在!