阿里巴巴面试总结
老实说以前对阿里巴巴还是蛮向往的,这不这几天接到猎头电话,说推我去阿里的ios开发职位,然后第二天下午6点接到阿里的电话——注意是下午6点哦,阿里的员工真勤奋哪。
接下来是我对阿里的面试官很莫名的时刻了,事先说明下,我之前做过几个iOS的APP,然后去做了android,目前在做PhoneGap,因为用了很多语言,不同的开发平台和框架,所以对细节上可能记不住。
1,你知道ios里面存数据有哪些方法吗?
我答曰:sqlite,plist,app sandbox里面的文件夹,如document,tmp等等。面试官开心的再问(因为他笑了):那你知道还有一个很变态的方法吗?我思考了下,觉得好像没有吧,就问能否给点提示啊?他开始笑了,回曰,就是那个存到密匙里的啊,好像是那个地方吧,我也有点忘了,这个是什么地方啊,不好意思,我也忘了啊。我当时觉得这也很正常,反而觉得他挺年轻,比较单纯,不过很和善,不象有些面试官很严肃。
2,你知道UITableView里面每行的高度怎么设吗?
我回答:这个我用过,但具体有点忘记怎么设高度了,要查文档,是不是在其对应的delegate里相应callback函数里可以设置啊?对方回答:是的,然后你知道每行的默认高度是多少吗?我无语了。。。的确好久没做了,这东西我怎么记得住?我说不知道啊,对方开心了:44啊。
3,然后又问我在ios里面实现微博的下拉刷新列表怎么实现。
我答曰:ios里我不知道,但android里我知道,有个开源的pulloverrefresh控件,直接可以用啊。
4,然后他问,那你在android里用过scrollview吗?
答曰,android没用过,但ios我用过,曾经实现过一个类似电子相册的app,并且实现了设计功能,类似于windows开发中的drag and drop比如你可以拖拽界面上的控件,并且放置在其他控件上,手动设计界面布局。
对方,又问了下UIImageView控件默认是不是可以接受touch事件。我没听清,还以为他问如何设置让UIImageView不接受touch,因为还真觉得哪有这样的问法,所以回答说,这个可以设置啊,有函数的。这个功能我以前真心用过。面试官回答:设置嘛,当然是可以,但默认是不是不接受该事件呢?我无语,说好像是吧。
5,其他的巴拉巴拉了些,最后我告诉他:手机软件做界面其实很简单,设计控件不比桌面软件复杂。我以前用c++做过许多界面的空间,我完全了解控件的消息机制,和绘制上应该使用那些函数,以及空间添加到父控件中会触发哪些事件等等。然后讲了些我以前做过的app,其中谈到一个小功能,然后我为实现的更好,更准确做的一些工作,对方回答:没想到你们这个小功能还做这么复杂——我自恋的听出他有赞许之情吧。
最后他说他的问题问完了,对我也了解了,要挂电话。唉,也没问我你有啥问题要问他的,至少礼节都没有。。。
后来哥在这轮电话面试上就被拒了。。。。觉得莫名其妙。。。
哥也在美国一家著名外企工作,平时也常面别人,帮公司招人。但这轮面试让哥觉得就像谈恋爱被拒,彼此之间有许多地方该总结的:
1,我自己面试的时候应该更加积极强调自己的优势,给对方造成更多好印象。揣摩一下对方看中哪些素质,然后也应该主动问对方一些自己应该问的问题。最后在面试结束前,就像追mm一样死皮赖脸的直接问:“你中不中意我啊,你有没有发现我身上的优点啊,我虽然很帅,但就是帅的不太明显,也不知道你看没看出来啊”,如果被据的话,就追问:“为什么为什么。。。”,n次后,直到她说:“你到底喜欢我哪里?我改还不行吗?”。不过说实话,这次面试的那阿里哥们真让我猜不透,因为过程中他嬉皮笑脸的,而且有些地方他都回答不出来。
2,吐槽下这位阿里哥。这哥们太逗了吧,面试一般是考查对方的技能和解决问题的能力。而且即使问技能,能这么孔乙己吗?UITableView的行高,我也把他当我老婆生日一样,天天念这啊,你做软件做技术每天就记那些数字吗?用的时候不可以查吗?做软件技术上的成就感难道是记住一些无用的数字吗?你如果问我ios内存管理或者线程上的东东,我就佩服你理解的深——和哥一样,哈哈。如果你和我谈界面编程中事件机制,ios编程在performance上要注意哪些地方,ios如何优化自己的性能的,那我即使被问倒也佩服你,对你的公司也更有向往之情。但你问某个属性是不是默认就有的,这让人情何以堪啊?
不禁想起了一个笑话,说某公司问interviewer一个算法题,interviewer回答,这道题在算法导论第2章122页,我需要查一下书。然后公司回答:对不起,你被拒了,我们需要员工对题目解法倒背如流。
亲啊,做技术的人自己都有知识库,好记性不如烂笔头,只要知道问题是如何解决的,并且能根据资料或自己的探索找到解决问题的方法,有这个能力难道不能成为合格的工程师吗》Y的难道一定要把书背下,每个标点符号都印在大脑才行吗?你自己行吗?你内存够吗?云存储啊。理解原理和解决问题的能力才是最重要的。
3,其实在此我根据面试官的问题也有点怀疑阿里在做手机应用的这群人对技术的理解。毕竟手机应用逐渐大众化,尤其是ios的开发难度越来越低——这也是apple的目的,难道阿里的移动工程师还只停留在搬弄控件的份上吗?
4,为什么技术面试搞的和应试教育一样呢?个人觉得阿里在招聘上太落后了。也不给面试官培训一下,如面试官的soft skill和考察点等等
吐了这么多,如果我说的不好,或者自己有问题,请拍砖轻拍,有同感的帮忙顶一下,谢谢了。
如果阿里的员工看到了,也请不要恨我,我只是对你们招聘的事情上很有意见,对当时的面试官人的印象还是不错,很和善,只是觉得他有点年轻,呵呵。如果我说的对,能接受我就佩服阿里的大度,说的不好,请指出,我也能提高