最近辞了工作,离开了呆了差不多一年的H公司。H公司是一个规模中等的公司,总部在北京,在广州,深圳,重庆等地也有分公司,做移动前端外包项目,这两三年移动开发特别地火,移动前端工程师也成了国宝。我在这个公司也做过几个小项目,就目前来讲移动前端很多东西都是一个尝试的阶段,很多插件要从web端借鉴过去,还会出现各种各样的兼容问题。
离开公司也是个人的原因,这里就不再详细说了。离职后,心里也比较忐忑,每天醒来就是开电脑上招聘网站,前程无忧,智联,大街网。。开始疯狂地投简历。对于简历,我也细细地专研了一下,简历简历一定突出一个简字,简单而突出一个人的经历。简历最好写1到2页,多写实话,少来纸上谈兵。很多同学会写到,我喜欢看书,爱专研,我也会犯这样的毛病。你看了哪些书,看了马克思的《资本论》,还是洪应明的《菜根谭》,还是柴静的《看见》。。你说爱专研,怎么爱法?如果你一屁股坐在电脑面前,一敲代码就1天,忘记时间,喝水,吃饭,甚至忘记睡觉。面试官听了肯定一脸地感动,心里暗暗赞叹这岗位舍你其谁啊?这还是人吗?!还真有,我一个大学同学写Java写到零辰4点。当然该生活的也得生活,身体才是革命的本钱。。简历的核心思想就是简单粗暴。。这里是一个资深的HR写的建议,写得很不错。
货都要比三家,更何况要找一个好的公司,好的团队,所以我是先离职了,然后再专心找工作。无论怎么,踏上了漫长的面试路途。。
面试了这么多公司,无论多少面,有些公司是两面,三面,四面,总结起来就一面——技术面。技术面过了其它的面试就不必太过担心,还有同学过技术面,被产品经理刷了,这种情况毕竟是少数。如果真不巧遇上了,那就恭喜你,你今天必须要认认真真地投一注。这种小概率事件也能遇到,发财了不要忘记其他兄弟;又或者面试官一看到你颜值太低,心里印象分大打折扣,一开始就从心里否定你,无论你讲什么都是屁话,这毕竟是个看脸的世界啊。当然啦,这种事情也几乎不可能。还有一种可能,即使你技术面过了,对其它非技术的面试官言不由衷,词不达意,让面试官觉得表达能力很差,甚至是简历作假,鬼话连篇,给人很不诚实的印象。我遇到过的公司还要求提供上家公司的HR的联系电话,公司总机号,项目经理的手机,作为背景调查,看看你有没有作假吹嘘。总的来讲,面试的过程中要诚实作答就好,不要太过于表现自己,不懂装懂。跟面试官对话的过程中,面试官会对你有一个大概的了解,会发现你的能力和潜力。
我把面试的公司分为大,中,小三种。
先说说小公司吧。小公司的面试流程很简单,一般是技术总监来面,技术面完了HR来面,HR先来聊聊家常,住在哪里,上班要多长时间。。如此云云。如果你基础比较好,了解OOP,有一年以上的经验,很容易就拿到OFFER。
之前我面试过一家创业一年多的公司。这家公司在科学城附近,周围绿树环绕,旁边还有一个湖,环境相当不错。公司是13年成立的。麻雀虽小,五脏俱全。这家公司只有十个人左右,里面的布置也相当优雅,会议室宽敞明亮,椅子是绿色的背椅,看起来很新,还有一台投影仪,整个布局清新别致,落落大方。面试官是个30多年的中年人,发线已经往上移了不少,头发也稀疏,做技术的到了中年也差不多这模样。由于做过移动前端,跟面试官聊技术压力不是很大。都是说一些移动端的用过的技术, requirejs,zepto,backbone,iscroll-lite等,还有自学了些node,angular也顺便聊下。面试官还问到Css3动画的问题,我就回答平时也用过transform , transition, 渐变等属性。。。我也没想到如此顺利,很快就拿到了OFFER。后来信心满满地又去面另外一家小公司,暂时称为S公司吧。这家公司给我的印象最为深刻,里边也是十多个人,一排办公桌两边坐人,中间没有东西隔开 ,面对面随时可以交流的那种办公场所,时不时听到他们很吵的讨论声音。相信很多同学也面试过类似的小公司,心里面肯定是不肖一顾,不以为然。我也有同样的感觉。这个公司没有前台,不像其它公司前台有个MM坐着,问你是谁谁谁,来这里应聘哪个岗位。我进去之后,有个MM向我要简历叫我找个位置坐下,递给我一支笔和试卷,时间一个小时。前端的笔试题,我看着试题都被吓到。
1.var arr = [1, 2, 3, 4, 5, 6]; 输出arr = [6, 4, 3, 2, 1]; 封装一个方法实现输出内容。
2.获取上个月的最后一天的星期。(还是封装一个方法。)
。。
15.谈谈面向对象的重载(overload)。
中间还考了些原型题目,声明提前,闭包之类的。。尤其是第二题,题目很短,但是很复杂。要是碰到1月份,上个月是12月,这里要判断;要是碰到2月份,这里要判断是不是润年;还要获取月份的天数。。还要好多东西要考虑。还没遇到面试官,就已经体力透支了。。终于看到面试官,面试官刚开会赶过来的。面试官问了我好多问题,比如说什么是模板引擎,类方法中的变量怎么返回,还有一些笔试题目。他看到我用requirejs,就问了我一个用require怎么实现动态加载路径的问题。我当时真被他问得冷汗直冒。。跟他聊天,越聊越觉得他技术很牛X。后来他跟我说公司带出来的人多数去了百度腾讯这样的大公司。虽然这次面试没过,不过遇到这么牛的人,聊上几句也是获益良多。
再谈谈那些不大不小,规模中等的公司,这些公司人数50~150或者再大一点150~500。大多数公司是有自己的产品,一般产品公司主要业务是在于产品,而技术部门的人数相对较少。而前端一般有两个人,一个是高级,另一个是中级或者初级。产品公司的技术主要是为了服务公司的产品,招前端主要维护web网站,还有一个开发移动app的产品或者开拓新业务也需要一个前端来开发。产品公司对前端技术的要求会比较高,大多数公司没有完整的一套框架,做项目都是组合的形式来开发,比较考验一个人的技术水平,个人的发挥空间会很大。在这样的公司确实会很辛苦,但确实学到东西。还有一种做外包的公司,前端人员会很多。我面试过一个外包公司,它主要给腾讯,网易等企业做邮箱。这家公司也有笔试,笔试题都是些css问题,比如行内元素与块元素的区别。css hack等。后面的几道编程题是用调用jQuery写的功能,比如点击一个元素隐藏怎么怎么写,考的东西十分基础。面试官也比较有趣,看样子也工作了几年,他好像对一些新的技术不感兴趣。他甚至不明白框架,我解释了大半天框架的含义,而jQuery不是框架。他一直认为jQuery是一个框架。。而且我很怀疑他一直把jQuery当成js用。如果面试官给我的印象是水平不高,而我会感到他的团队水平也不会太高。对于这样的公司要慎重考虑。。毕竟一个好的平台给自己的发展会有很大的影响。还有一家公司,就叫X公司吧。这家公司也很有趣,面试我的竟然是一个搞后台的。X公司没有专门的前端,面试官是从后台转到前端的,他做前端有1年左右。他拿着个本子和一支笔进来,然后一直问我前端方面的问题,多数是他工作时遇到的。比如他问到怎么用 jQuery选择元素,变量怎么返回到函数外。原理的,基础的东西也解释了一通。。后来我也没有选择这个公司,原因也很简单,前端这块业务几乎一穷二白,真要接手肯定会做死人。
最后就是大公司,我面试了有几家大公司,其中也不乏上市公司。大公司的要求也不会特别高,笔试题是一些基础的题目,只要基础扎实笔试是没问题的,比如考到this的指向问题。我后来才发现做web前对Js的要求并不是很高,特别是大公司,已经有自己完整封装的组件和库,只要求会调用。这样一来方便维护,改版的时候只要改一处地方就会全部生效;二来也是为了节省时间,提高效率。我面试有两家公司都是要机试的,其中有一家的题目是用jQuery实现图片的放大缩小。面试官问的问题大多数也是基础题,还有一些跟项目有关的,就按实际情况回答好了。所以说基础很重要,再加上回答问题时从容淡定,思路清晰。过大公司面试的机率也很高。不过在大公司的压力不会太大,学到的东西不会太多。大公司定制化,规范化的东西太多,细到让你想象不了,甚至对于标签的类名也有规定的。只要按步就班,熟悉业务,小日子还是能混得不错的!