HR面是了解你的专业技能和身上的亮点,每个人大概面试二十分钟,期间会有一个英语对话测试口语。我面的是一个TW北京的女HR。她的问题基本上可以总结为两个:是否热爱学习;是否热爱编程。是否热爱学习的问题:你阅读过哪些技术特别是软件方面的书籍?你平时都上哪些技术网站或论坛?我回答主要是CSDN,然后我自己有写CSDN的技术博客,她比较欣赏写技术博客,让我继续坚持。有没有看过TW员工写的博客?有没有上过stackoverflow?这个我完全不知道,她给我推荐了这个网站。是否热爱编程的问题:在课余时间有没有写过一些小程序改善自己和周围人的生活?有没有向github提交过源代码?这两点自己都没有啊。英语对话又是关于读书的问题:你平时喜欢读哪类技术书籍?我开始没有注意到是技术书籍,我回答小说,又跟我强调是技术书籍,最近在读程序员面试宝典,我就回答说是这本书;还是没有理解清楚问题,她是问哪类技术书籍,不应该回答特定的一本。总之这个问题我答得太烂,她都没有再问我英语问题了。最后一个问题是除了简历上提到的,还有什么有助于TW了解我的需要介绍?我回答说是勤奋,然后一个堆废话说明自己勤奋,结果她又问我业余时间有没有写小程序?我就无语了,这在她眼里才算是勤奋。我再就没有补充别的了。这个我问题其实很重要,是让HR发现我身上亮点的问题,有没有亮点是后面她能不能为我投票关键。小组面过程为8个人一个小组,每人两分钟presentation讲自己的编程作业,然后是小组讨论,给出一个案例二十分钟讨论出解决方案。我花了一些心思做PPT,用了一个类图贯穿整个作业的讲解,图形化和少量演讲提示性文字是做好PPT的要领嘛。整个过程是用英文演讲的,有点冒险,但是也是想为自己加分从众多面试者中脱颖而出。现场得知英语演讲的HR也会用英文提问,回答也当然需要用英文了,汗啊,自己也没准备中文演讲,只能硬着头皮讲了。讲完之后,HR提了一个;利用我所用的命令模式增加一个功能让探测器从左上角直接运动到右上角,我回答在探测器类中增加一个方法直接设置探测器位置坐标,然后人家就问这是不是与开闭原则矛盾,我回答我不这么认为。其实的确是违反了对修改封闭的原则,下来之后我就想到了正确的方法应该是利用已有的左转右转和前进来实现这个功能,这样就做到了对修改封闭。所以我这个问题回答得不好,HR可能会认为我对开闭原则理解不深。接下来是方案讨论,题目是三个月时间设计一个连锁零售店的支付系统,现有一个存在问题的源代码,再加上其他一些条件,讨论时修改代码还是重写代码来实现,并给出解决方案。大家五分钟阅读题目并向HR提问,有同学反应很快,在这五分钟了提了好几个问题,关于项目提供的人员配置,和以前有无此类项目经验的问题,相对来说我反应慢多了,拿到题就想着如何具体实现的问题,只提了一个关于系统接口的问题。讨论过程中,我的发言也不多,都是想好一点说一点,也试图向着TW所提倡的敏捷开发上说,极限编程的一个核心就是TDD测试驱动开发,题目中刚好有一个Testcase的条件,我就强调测试的重要性,对于一个支付系统安全性是最重要的要求,这就需要通过测试来发现bug保障系统的安全性。另外根据其他同学提出的迭代开发方法,我提出需求分析时应按照重要性排序,按照这个次序进行迭代。总之,我的发言不多,但也构成了最终方案中四条中的一条半。最后五分钟是推一个同学出来总结,我们组有人主动要做总结,大家也就没人去争。最后的结果可想而知。
满意的地方:
面试的技术含量还是挺高的,HR对于计算机知识的理解也很丰富
不满意的地方:
自己不善于发言,有些问题又答非所问,活该被淘汰