作为一个计算机科班出身的测试猿,毕业后一直混迹于二线城市的二线互联网公司,每次看到技术群或者朋友圈里BATH的同学晒工作照、年会照、团建照,永远是“身不能至,心向往之”的感觉。终于在两年前的夏天,我决定换个工作环境,有幸参加了深圳腾讯的面试,当时笔者由于准备不充分,很遗憾没能最终拿到OFFER,但是当时的我入行不到两年,能够杀入终面已经非常幸运了,所以笔者愿意把这段面试经历写出来,一方面作为个人总结,另一方面也是希望能够给广大测试圈儿的朋友们一点启示。
第一关:简历结果:PASS
之所以把“简历”作为第一关,原因其实很简单:如果简历都写得毫无逻辑、毫无特色,HR自然就会把你的简历筛掉。我当时花了一天的时间来整理简历,简历一般不超过两页,毕竟大公司的HR们工作都很忙,你就算简历写了十几页人家也没时间看,我的简历大概分几个模块:
1、个人信息:包括姓名、性别、年龄、邮箱、电话、住址、工作经验、学历、学校、身体状况、英语水平、期望薪水等等信息,总之就是要简单明了,照片就用登记照就可以了,过度美颜的或者大头贴的照片还是不要了。
2、工作经历:这里我就按时间先后顺序把自己呆过的几家公司名称、岗位、薪水、在职时间等信息列了出来。这里要特地提醒一下大家,过于频繁地跳槽真的不太好,比如我曾经做面试官时,就碰到有同学一年跳三次,结果领导直接说这种就没必要面试了,太不稳定。也许有的同学会问,那我可不可以稍微“修饰”一下工作经历呢?比如合并删除一些工作经历、之前薪水稍微报高一点点。对于一般公司、非高管类的岗位来说,HR的背景调查没有那么严格,如果你确实因为一些不可抗力的因素跳槽有点频繁:比如创业公司还没呆几个月就垮掉了,比如刚来公司两个月发现有拖欠薪水的情况等等,那么适当删除一些较短的工作经历、适当合并一些经历也是“人之常情”,一般HR也不会太计较。但是投简历给大公司的时候,关键信息还是不要作假,比如学历、离职证明等。
3、技能说明:这里就列举你会什么框架、什么技术、什么工具。比如你可以说自己掌握了selenium自动化测试框架,会用PYTHON编写脚本,对于ES和MySQL会搭建会使用等等。
4、项目经历:这才是简历重中之重的部分。这里就列举你做过的一些项目,简要概括一下这个项目的背景、业务需求是什么样的,你在项目里做了哪些工作,用的哪些技术,有什么收获和提高,还有哪些不足待改进等等。后续准备面试的时候也要把做过的项目拿出来复习复习,关键技术点弄清楚,因为面试官肯定会照着简历问项目经验的。有些不是自己做的模块最好也请教一下同事,争取把做过的项目的细节都搞清楚,方便后续和面试官交流。
另外,再提一下投简历的技巧,笔者最开始在智联、BOSS直聘、拉勾上投BATH的各种岗位,结果都石沉大海,而且反馈速度很慢。最后是一个在腾讯做JAVA后台开发的高中同学帮我内推的简历,应聘岗位是财付通业务结算测试,于是两天内就有反馈了。可见,能内推还是尽量内推吧。
第二关:电话面试结果:PASS
同学帮我内推简历后的第二天,我就接到了腾讯的电话。说实话大厂的员工素质还是高一些,电话面试的这个面试官说话特别客气有礼貌,先是让我自我介绍一下,我balabala简单说了一下个人信息和工作经历,然后问我为什么要投腾讯的岗位,我说我想去个大公司,再后面就是简单聊了一下项目情况,我当时就是介绍了一下项目业务需求,然后分了几轮进行,每一轮测试重点关注哪些方面(UI界面、前台后台功能逻辑、算法逻辑、算法效果、稳定性测试等),用到了哪些技术(Linux\Sqlite\MySQL\Elasticsearch\Loadrunner\shell)等等。然后这个面试官就说二面三面都是要来深圳总部面试的,路费住宿费都不能报销,让我考虑一下再回复他。我当时就一口答应愿意过去面试,毕竟是自己非常心仪的公司。
第三关:FACE TO FACE Interview 结果:PASS
腾讯的面试非常人性化,社招都安排在周末。我先订了去深圳的火车票(硬座),然后联系了在深圳安家的表姐,表示要在表姐住两个晚上。由于是绿皮车硬座,所以你懂得,一晚上都没睡好觉,第二天刚出火车站,表姐开车来接我去她家吃了个早餐又把我送到腾讯大厦。(在此非常感谢表姐的照顾)到了腾讯大厦会有实习生给办理临时工牌,并指引你去相应的会议室等待面试。说实话,第一次去腾讯大厦面试,我还是挺紧张的,特别是一个人乘电梯去二十几楼的会议室的时候。会议室里大概坐了七八个人,都是等着面试的,各个岗位的都有。
言归正传,没等一会儿就轮到我了。我被实习生带到另外一间会议室,面试官是一位非常有气质的小姐姐。小姐姐开门见山让我在会议室的白板上画一下之前项目的系统结构图,我就把之前智慧停车项目的系统结构图画了出来。然后小姐姐仔细问了我每一个模块的作用以及模块之间如何通信,比如球机和嵌入式前端机如何通信?走什么协议?前端机和云平台之间如何通信?数据传输格式是什么?以及数据存在本地数据库的记录格式是什么?什么时候才抛向云平台?如何判断两条记录是同一辆车的入位出位记录?用的智能算法是什么?有没有参与过数据集的训练等等......总之问得非常细,这些东西我在写简历的时候就复习过了,而且平时也非常主动地同开发同事沟通项目细节,所以总得来说答得还不错。最后,小姐姐又问了一些测试的基础知识点:比如压力测试和负载测试的区别是什么?一个BUG的完整周期包含哪些阶段?什么是灰盒测试?我也都回答准确。答完后小姐姐让我回到最开始的会议室等结果。没一会儿,实习生说我可以进入终面了。
第四关:终面-白板CODING 结果:FAIL
终面在另外一间会议室进行,这次的面试官换成了一位表情十分严肃的小哥哥。一落座,面试官问:“用过哪些数据库?SQL熟么?”我答“用过SQL SERVER 2000\MYSQL\SQLITE,sql语句基本的都会”“那好请在白板上写一条sql,实现查询某张表的前十条记录”我直接在白板上写了句“select * from students limit 10”。面试官又问“这是哪种数据库的写法?其他数据库的写法会吗?”答曰“这是MySQL的写法。其他数据库的写法不太了解。”接下来,面试官又问“你最拿手的是哪种编程语言”答“shell”(其实平时工作中最多用shell写非常简单的脚本,更多的是看懂别人的脚本然后改改参数之类,所以编程基本功并不扎实,所以当时很心虚地说shell)“那你用shell写一个去重的代码,就是有个txt文本里有很多条记录,这些记录有些是重复的,要求把重复的记录剔除掉。”当时听完题目就蒙了,完全不会啊,于是故作沉思了一会儿,才和面试官说“真抱歉,这个题目我不会。”于是面试官就让我回最初那个等待区等结果了。
回到最初的等待区,没一会儿,实习生过来告诉我说,很遗憾,白板coding这关没有过,看我远道而来送一个QQ公仔给我做纪念。
后记:一点经验教训总结
先说教训吧。笔者觉得这次面试失败的主要原因还是那道去重的题目没有答上来。虽然笔者面试的是财付通结算业务测试的岗位,应该属于功能测试的范畴,但是类似BATH这种大公司是没有“纯点工”的岗位的,即便是功能测试也要有一点点代码能力,至少能看懂开发写的代码并且写一写简单脚本。而且白板Coding这种形式在大公司的面试里十分常见,毕竟光聊简历聊项目,看不出一个人的真实水平。由于平时工作里,我动手写脚本的机会并不多,准备面试时间又比较仓促,所以那道“去重”题目没有答上来。看来平时还是要多积累,提高代码能力,即使是工作中暂时不需要你编码,你也要利用业余时间学一学,掌握一种程序语言后,就多找机会练习实践或者上网刷刷程序员面试题,不懂地可以百度也可以和开发同事请教,正所谓艺多不压身。
再说经验吧。个人感觉前三关我答的还是挺好的,答完就知道自己有戏的感觉。首先,要精心准备简历,切中要害突出重点,能找熟人内推就内推,因为内推的效率相对来说高很多。其次,测试基础知识要扎实,一些基本的概念平时可以利用零散时间看看Atstudy网校公众号的文章,巩固一下。不要因为比较简单就掉以轻心,毕竟高楼大厦平地起,基础不扎实很难成为一名优秀的测试工程师。再次,不断地积累项目经验,切记不求甚解的行为。平时多和项目的同事们沟通,对于一些业务需求或者技术细节刨根问底地去了解,即使不是自己负责的模块,你多了解一些都是有好处的。面试之前把自己做过的项目梳理一遍,复习一遍,争取做到心中有数对答如流。最后,每参加一次笔试面试都做好总结工作,不断积累面试经验和面试技巧,这样以后无论去大公司还是小公司面试才能做到理智淡定不紧张。
学无止境,谨以此文纪念那次难忘的腾讯面试经历,愿与各位测试同行们共勉!跳槽季,祝大家早日拿到满意offer!
欢迎加入 51软件测试大家庭,在这里你将获得【最新行业资讯】,【免费测试工具安装包】,【软件测试技术干货】,【面试求职技巧】... 51与你共同学习,一起成长!期待你的加入: QQ 群: 755431660