自从去年10月份回家呆到2月底过来,也找了近两个星期的工作了,有人说形势不好,但没觉得,基本上投的公司都有回应,也都有面试,除了给不起工资的,基本上都可以谈到差不多最终面,只是愿不愿意去的问题罢了。
面试了大概10家(基本上都是50-150人的公司,几家是150-500人的),总该有点自己的感悟吧。确实,真有点。也和大家分享一下吧。(另,感觉网易的简历筛选太那个了,投了差不多两个星期,一直是筛选未处理的状态,真是坑啊)
唯一有一家公司,是不需要笔试,直接面试的,而且面试谈得也不错,还通知过去再谈一下工资问题,估计嫌我开得高了。两年,8K,说实在,不高,只是中等偏上一点点,刚毕业8K的也大有人在。
笔试题目,有难有简单的,但基本上也中规中矩,不会难到像GOOGLE那些那么变态的。基本上都是什么HashTable,HashMap等等的区别,什么LinkedList,ArrayList的区别。话说感觉这些笔试题真的可以看出你的技术水平吗?写得跟杜甫那么有文采又能怎样,等到开发的时候啥都不会,又有什么用。我认为笔试的时候尽可能弄一些项目中的东西来会比较好。有一个笔试过的挺不错的,就是给出两个函数,其中有些代码重复了,让你考虑一下应该怎么重构。这个不错,可以考出重构的能力,另外它也说了可以在面试的时候说出说法,这点更是值得赞赏的,毕竟我们开发的经常对电脑,有时候用笔写出来比讲出来麻烦多了,或者电脑打出来会更好点。笔试呢,有好处,可以筛掉一部分不靠谱的人,但也有不好的,就是会漏掉一些真正的高手(基本方面忘记得差不多的)。还好,我去面的这些都没有因为笔试而漏掉某些的人面试,而是笔试完就直接面试,这点还是挺不错的。
面试部分呢,主要还是看面试官。有些面试官真不知道说些啥好了,说是经理,但问的问题呢,就跟刚在网上看了些面试宝典直接来面试的人一样。列几个常见的RuntimeException?String和StringBuffer的区别?话说你知道几个RuntimeException跟你的开发水平有关系?你列得越多证明你程序写得越多,还是你程序写得越牛,抑或你的业务越牛?并不见得,接触JAVA几年后,还有几个人会经常看到基本的JAVA抛出的异常,就算你遇到,你会特意去记它的名字。一个异常出来了,我们是要去解决它,而不是去记住它。
面试其实是双方选择的过程,你可以看到对方公司都是招的些什么人,也可以看出他们究竟想要招什么人。如果每每问你什么代码怎么实现,那些他们只需要代码工人,或者代码写得好的,随便一个培训出来的就OK了,三大框架搞定。但如果是问你怎么理解某个东西,让你讲讲实现原理的,这样他们就不仅仅需要一个写代码的,他们需要的是一个攻城师,需要的是一个可以开发产品的人,而不是砌代码的。
有些面试官的态度很不错,当问到一个问题你不会时,他会引导你去思考;而有些面试官并不会给好脸色,一个劲地说你做的项目不难啊,很简单啊(我在想,很简单你们做个出来试试啊),有个面试官说他们一个报表程序的一句SQL涉及到上万个字段,报表我没接触过,请熟悉的朋友看看,上万个字段的报表SQL,这是真的吗?
当然,技术面一般都难不到我们的程序猿(当然是指那些真正努力工作的,打酱油的除外),HR面就更不用说了,一般只是聊聊家常,谈谈公司的情况。
面试了蛮多家,比较庆幸的就是基本上都到了谈薪资的阶段,有几个可以发offer,另外的给不起工资就算面得再好也没办法了,给不起就是给不起,钱的问题,绝对不会退让。
其实很多朋友觉得工作不好找,主要还是没重视简历吧。做过很多东西,没有写在简历上,或者在说的时候说得不好,让别人感觉好像你只是一个打酱油的人。
有人说程序员是被低估的一群人,我觉得这句话对部分人来说适用,当然是对那些技术能力可以,有自信的人。我自认为能力还可以,也有自信,所以我觉得工资低于一定水平就不可接受了。我觉得大家都应该这样,不能助长那些公司的气焰,觉得程序员就应该被压榨,就不应该拿高工资,而且还要加班。
跟大家一起共勉。