4000 字面试心经,教你如何打动支付宝面试官

本文选自《软件技术职业选择之道》,点击下载所有内容

4000 字面试心经,教你如何打动支付宝面试官

看过了前面的技术方向介绍,大家是否从中找到自己的道路呢?可能有人要问了,找到又怎么样?又没法通过面试。

现在,我们给大家准备了面试心经,由校招进入蚂蚁的前辈精心奉上,请大家收好 ~

即将或正在饱受校招面试折磨的学弟学妹们好,我是来自蚂蚁 CTO 线研发效能部的开发工程师李煜超。从惴惴不安准备春招至今也已过去两年,现在的我也想作为过来人为你们的春招尽一份力。

先不提我平淡的经历和不足下酒的心路历程,这里我先为你们 ???? 奉上你们最关心的面经宝典。由于我并没有作为面试官的经验,因此特地采访了颇有面试经验的师兄,结合自身感受整理如下几条。

简历

相信在校招季开始之前,优秀的你们已经网罗各种简历模板,并整理出了 n 稿漂亮的简历。其实,简历的要求是尽量做到简洁、清晰,那么一份只能容纳寥寥数字的简历,该如何包含你们横溢的才华呢?

首先要知道,简历的主体是项目经历。作为在校大学生,面试官并不会要求你们有多庞大或多辉煌的项目经验(当然有更好!),他们关心的是,经过项目塑造起来的你们是否是部门所需要的——即所罗列的项目与部门工作是否相关,以及你们在这些项目中所展现出来的自我学习能力。

这也就说明你们在筛选项目经历时也应当有所选择,侧重于展现你拥有部门想要的技能,侧重于你在项目实践过程中使用的技术手段以及这种手段带来的效果,如果你在学校要求之外开发了一定规模的项目,或是项目存在一定影响力,那是最吼滴。

同时,在编写简历时请务必做到实事求是。阿里是一家十分注重价值观的公司, 而诚信一直是涵盖在价值观中的重要内容。简历上最明显的体现便是对自己技能精通程度用词的描述上,请谨慎使用过于强烈的用词(如精通)。

简单来说,简历是递给面试官的个人门面,是面试官对你们所提问题的指引,也是你们进行面试准备时的导航。

准备

通常春招的时候,大多数同学已经提前搜集一些或是前人留下,或是勤奋的同学整理的面经资料和面试题集锦。那么面试经验尚不多的同学可能会问,背这些有用吗?

就我个人感觉来说,是有用的。五六年的大学课程,难免会有遗漏,面经作为对学习内容的提炼是很好的助记手段。但也不可过于依赖,这里以 Java 后端开发为例分几种情况介绍。

1. 基础的知识如 JVM、数据结构、数据库等

这是你们手上每份资料中大部分都会涵盖的内容,也是你们在校招过程中会被提问无数次的知识,仅靠背诵面经是不足以对付面试的。在准备过程中你们需要时刻问自己是否真的熟悉,做到知其然,知其所以然。有不确定的地方提出来,看看以前上课的 ppt,或是查资料进行系统复习。如果准备时间较为充分,推荐将相关权威书籍再好好阅读一遍。

值得一提的是,蚂蚁的 SOFA/SOFABoot 是基于 Spring 框架自研的金融级分布式中间件。因此,若项目经历中有涉及 Spring 使用的,也务必要作为重点进行准备,除了是面试的常问问题,他也有助于你们顺利通过面试后,能够尽早投入实际工作中。

2. 简历中涉及的项目相关知识

很多同学在进行面试资料整理的时候,会把自己面试过程中被提过的问题也归纳进去——通常是项目相关的技术,或者再抽象出一系列复习点。这对他 / 她来说是很有好处的,但在其他人手上可能就成了“干扰项”。

在你们复习面经资料的过程中,如果碰到类似这种问题,应该进行合理安排,没必要投入过多精力——指疲于准备面试的情况下,若时间富裕,则多学无害。你们也可以请教整理的同学,这些问题是面试官在什么场景下提出来的,或者说是怎么引导出这个问题的,如此有利于你们学会揣度面试官的心思,并根据自己项目中提到的技术进行发散思考。

上一趴提到,简历是面试准备时的导航。其项目中涉及的技术更是重中之重,对于这些技术,在做到知其所以然之后,最好连其祖宗所以然都知道。准备期间也可以借助脑图进行整理,梳理相关知识进行学习。

比如项目中涉及了 Spring 技术栈,那么对于 IOC 和 AOP 的原理势必要掌握的。既然提到 IOC,那么说一下 IOC 的好处是什么,你还需要知道有哪些相关的软件设计原则,Spring 中的几种注入方式,和 Spring 的注解作用等等,那么顺便的,注解中的 @Autowired 和 @Resource 你可以说说有什么区别吗?提到 AOP,几个基本概念,几种通知方法,可以用于开发什么功能等都可以进行复习。

3. 工具相关知识

如 git、mvn 使用、命令行使用,甚至 idea/eclipse 快捷键使用,在专业知识和项目准备充分之余也可以进行复习。

除了知识的总结学习,算法题和项目回顾也是面试的重点。

对于项目本身需要把脉络理清,对于整个项目、以及项目的每个模块,做到用精简的语言让面试官能够明白。回顾项目时,理清楚项目的难点和成果。面对多种方案时是如何考虑的,碰到难题时是怎么解决的。

算法题就是多刷多做多归纳。

面试

蚂蚁的面试通常是有 3-4 轮技术面,还有一轮 HR 面,各轮面试的问题视面试官风格而定,但有以下几种能力或者说是特质,是面试官希望能够在你们身上看到的。

一个是基础能力。面试官对于在校生通常不会有太高的技术水平要求,但会很希望看到你们有扎实的功底。万丈高楼平地起,只要发现你们是有潜力的原石,蚂蚁就有信心把你们雕塑出龙章凤姿。

一个是自我学习能力。面试官会乐于看到你们勇于发现问题,全力解决问题,用新方法、新思路来创造变化,带来突破性的结果。

最为重要的,是需要再一次强调的诚信。对于自己没做过的,不知道的,没有必要隐瞒或伪装。如果想凭经验进行临场发挥,也请先勇敢承认。面试不是毕业答辩,没有必要唯唯诺诺或含糊其辞,面试官其实也是在找自己往后工作中的战友。可以有不同的见解,面试官不会喜欢弄虚作假的伙伴,但会欣赏一个承认短板,能够灵活应变找到答案的人。综合素质和非专业水平的亮点也是面试官考量的因素。

在进入蚂蚁后你会发现,这些其实都是成为一个阿里人的潜质,是阿里寻找同路人的方向。

以我自身的面试经历来看,我的整个面试流程经历了三轮技术面和一轮 HR 面。

第一轮面试的主要内容是基础知识和在线算法题。事后与同学交流发现算法题难度不尽相同。作为过来人回头看,除了最终结果,面试官还会看中你们的解题思路和编程习惯(说人话:把代码写好看点,推荐看《重构》和《代码整洁之道》)。

可能由于写的项目经历和部门业务较为相关,第二三轮技术面基本围绕项目展开,依稀记得第三轮面试的时候,我就和面试官就我做过的项目方向有不同意见,产生了讨论,当时一度觉得自己可能与蚂蚁无缘了 。

最后的 HR 面其实更像一个互相了解的过程,HR 会问你关于工作的看法(包括base 地、方向等)或是考量你价值观的小问题(并不确定是不是),当然你也可以提出你对工作或部门的疑问。

个人经历

说完干货,接下来便是“水货”。

我本硕就读于南京某 500 本大学——南哪大学的软件学院。学校不是真的 500本,但我的成绩大概差不多是 500 本的水平,因此在学习经验上并不能给你们很好的建议。

我们学院的部分课程工程氛围颇为浓厚(至少本科是),头几年常常会被数不尽的文档淹没,其中大作业 ddl 是比期末考更令人疲惫和在意的事。因此我的本科生活也及其简单,没事就泡球馆,大作业卖力做,考试要求不挂科(排名分先后),就这样,波澜不惊地来到了研究生阶段和春招季,开始了和蚂蚁的邂逅。记得当时同一实验室的师兄已经在蚂蚁实习,恰好我们正在做的课题与部门工作有一定联系,便推荐我内推。作为一个刚出新手村的菜鸟,为了抓住摆在眼前进入心怡大厂的机会,我特地问他,能不能晚些进行面试,让我先多刷刷怪涨涨经验。师兄善解人意,通情达理,我接的第二个面试电话就是蚂蚁的。

好在最后还是有惊惊惊惊惊无险地拿到了 offer,你们看,我的经历就是这么朴实无华且枯燥。

回过头来看过去几年,如果可以,还是想给年轻的自己几点建议,也希望能给或是还处在美好的大学生活中,或是在焦急准备面试,或是刚刚拿到 offer 的你们一点帮助:

1. 所有的专业课程,都好好上

并不是说非专业课程就能荒废,只是对于专业课程有更深的体会。在入职后,当事人表示非常后悔。

曾经有诸多课程摆在我面前,我没有珍惜,老师在台上声情并茂的介绍,我在台下不屑地想着:“这东西我以后工作能用到?能用到我把这课本吃下去。”。现在追悔莫及,作为研发效能部的开发工程师,我一次一次地切身体会到学校课程安排诚不欺我,只能在空闲时间重新捡起来,为年轻的自己买单。

2. 课余时间多了解一些专业前沿知识

入职后,你会有机会与同届毕业生接触、合作,会发现总是有那么些闪闪发光的人,永远有自己的想法,永远走在前方。多了解一些前沿知识,能帮助你们培养专业素养,保持前瞻意识。

3. 认真取花名!

对我来说,这个可能是最重要的建议了!对于顺利拿到阿里 offer 的同学,首先恭喜你们,其次作为阿里的一个文化,希望你在取花名前能认真考虑,不要重蹈我的覆辙!我的花名是黎荍(qiáo),取花名时误以为花名一定要古风,一通瞎琢磨后取了这么个我查词典前都不认识字的花名。

4. 认真思考就业方向

除了 hc,在投简历的时候你们需要好好问问自己,自己梦想什么岗位,是算法还是开发,是做业务还是做平台,对于所投部门与自己的研究方向是否匹配,还在踌躇的小朋友,也可以借着实习的机会切身感受一下实际工作与想象是否一致。

上一篇:编程规范定义


下一篇:标准的Windows蓝屏故障的分析、处理流程和VMware服务错误记录