身为阿里面试官,我是如何招人的?

本文分享了一位阿里面试官的经验,涉及面试节奏、各环节注意点,如简历筛选、学历要求、运气因素、硬实力和沟通技巧的重要性,以及一次印象深刻的技术面试案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

大家好,我是程序员小灰。小灰有一位读者朋友在阿里工作多年,担任面试官先后面试了1000+的程序员。

今天,这位小伙伴为我们写了一篇面试总结,希望可以帮到大家。

b431949600c7cef5dfc83e2115367bd6.jpeg

1. 面试官背景

本人在阿里3年,面试了1000人以上,经过我面试进来的同学有8人,招聘进来的同学有P5、P6、P7,面试通过率不到1%,所以内部有个说法,能进阿里的都是百里挑一的高手。

做为面试官,面试的同学形形色色,有一些同学非常优秀,也让我学到很多,今天主要讲讲作为面试官的经验,避免同学们因为非技术实力问题而拿不到offer的窘境。

2. 面试节奏

由于本人还未面试过P8因此被人主要针对P5、P6、P7讲一讲面试节奏,在阿里面试周期会比较长,一般会持续一个月之久,之所以持续这么长时间,因为每轮面试的节奏相对较长。

对于P5同学:一般4轮面试,第一轮、第二轮一般由部门的P6、P7做技术面试;第三轮会有部门主管面试综合能力;第四轮HR面试。

对于P6同学:一般也是4轮面试,和P5最大区别会增加其他部门主管的交叉面试。第一轮一般是部门P7技术面试,第二轮自己部门主管面试,第三轮其他部门主管面试,第四轮HR面试。

对于P7:一般也是4轮面试,和P6最大的不同会增加+2的面试官的面试,也就是说第二轮或者第三列面试,一般需要有自己部门或者其他部门的P9面试。

面试周期长:一般情况下,面试周期长达一个月,基本每轮面试1周,4轮面试基本在1个月以上,因为阿里内部节奏快,事情非常多,基本上大家只有在晚上或者周末才有时间面试,导致面试周期也拖的久,面试过程中对于心理考虑非常大,要做好心理建设。

PS:阿里有一个规定面试官必须高于被面试同学应聘的岗位,之前出现过一个案例,一个P6的同学将一位面试P9岗位二面的大佬给拒绝掉了。

3. 面试各环节的坑

简历筛选阶段:阿里内部有3年2跳、5年3跳【含义3年内跳槽2次、5年内跳槽了3次,跳槽的次数包括进阿里的这次】的简历直接pass掉的要求,因为阿里工作压力和强度很大,对于员工的稳定性要求比较高。因此如果同学们有志于进入阿里,建议在一家公司一定要呆够3年以上。

学历要求:一般部门都是211及其以上,对于一些员工非常稳定的事业部,要求会更高,985或者C9才是入门劵,读书敲门砖在这个时候是非常有用的。

运气因素:但凡事都有例外,当一个新成立的部门,由于公司在和时间赛跑,需要尽快将业务上线,这时候会对相关条件适当放宽,例如我之前所在的部门,刚刚开始的时候大专生都能进来,对于稳定性也没有过高的要求,只要面试时技术、管理、沟通、抗压能力都行,基本都能进来。

但是随着人员补充到60%左右,慢慢就越收越紧了,基本和阿里集团的要求对齐。之所以将运气因素单独拿出来,是因为在面试过程中按照我的经验,70%的人会在第一轮面试被挂掉,一般都是硬实力的欠缺,例如八股文不过关、没有复杂项目的经验,其他的多多少少和运气有关系。

能力要求:只招聘高手,阿里对于新入职同学的要求会有一定要求,之前要求平凡人做非凡事,有段时间在公司内部提倡让不平凡人做非凡事情,这时对于新入职同学要求特别高。虽然具体要求一直在变化,但是有一点,新入职的同学的水平要大于团队的平均水平,确保团队整体实力随着时间的要求一致在提高。菜就是原罪,这句话真没错

熟人推荐:这一点非常重要,上面的要求都有例外,我团队招聘进来一位哥们,5年换了4家公司,学历也就一般本科,但是他和团队一位绩效非常好的同学是之前公司的老同事,这位同学强烈推荐,认为技术能力比自己还要强,因此得到了一次面试的机会。

要引导面试官:在面试过程中,切记问一答一,特别是对于面试P6、P7同学,必挂,因为阿里内部对于沟通能力、主动性要求非常高,进来后经常面临着需要自己主动抢活干,主动和外部协调的工作要做,如果只能被动接受任务,很容易被干掉。

PS:天无绝人之路,只要大家有相进大厂的想法,一定不要放弃,如果自身的硬件条件有限,那么重点关注新成立的部门,任何大厂新成立部门招人都会网开一面的,只要进来了,在内部转岗就比较容易了,除非绩效3.25,否则只要有空缺的HC,基本问题不大。

4. 印象最深的一次面试

谈一谈上面我提到的那位哥们A,5年换了4家公司,学历也就一般本科,由于是团队小伙伴推荐的,还是想给同学一个面子,但是公司的硬性指标也在这里,因此采用了一些手段。正常面试一般面1个小时即可,这次我面了整整2个小时,全方面无视角的考察,终于得出结论,是个好苗子,公司不招聘他是公司的损失

后面果然在各个阶段非常顺利的过了,在HR面试前,HR就挑战了我,提出这位同学硬件不够,因为面试过程印象非常深刻,因此我详细的和HR聊了我的感受,HR被说服了。面试后HR感觉也非常好,立马就发了 offer。

如下是一些面试过程中的题,面试范围非常广,基本上对于一个程序员方方面面都涉及到了。

:开门见山,团队同学B推荐了你,但是你简历显示5年换了4家公司,能否方便介绍下为什么跳槽这么频繁。

A:是有原因的,第一家公司破产倒闭,第三家公司工作一段时间后被第四家公司收购,合同改签了,而我现在这家公司工作的时间已经超过三年,稳定性没有问题的。

解读:应该是B同学提前提到过3年2跳、5年3跳的硬性要求

基础知识方面:

:我们先做基础技术的面试,请介绍下JVM的工作原理,以及你了解哪些参数。

A:我有一张图可以介绍JVM的内部空间细分,在白板上画出这个图

常见的参数:

-Xmx12000m -Xms12000m -Xmn5600m 

-XX:SurvivorRatio=8 

-XX:MetaspaceSize=1024m -XX:MaxMetaspaceSize=1024m 

-Xss512k -XX:+UseParNewGC 

-XX:ParallelGCThreads=4 

-XX:+UseConcMarkSweepGC 

-XX:+UseCMSCompactAtFullCollection 

-XX:CMSFullGCsBeforeCompaction=0 

-XX:+UseCMSInitiatingOccupancyOnly 

-XX:CMSInitiatingOccupancyFraction=60 

-XX:+HeapDumpOnOutOfMemoryError 

-Doracle.jdbc.V8Compatible=true -XX:+PrintGCDetails 

-XX:+PrintGCDateStamps -Xloggc:/tmp/autodump/gc.log 

-XX:HeapDumpPath=/tmp/autodump/

缓存方面:

:如何解决Redis缓存雪崩、击穿与穿透?

A:缓存雪崩是指大量的请求无法命中Redis中的缓存数据,也就是在Redis找不到数据了,那业务系统只能到数据库中查询,进而导致所有的请求都发送到了数据库。

数据库并不像Redis能处理大量请求,由缓存雪崩导致的请求激增必须会导致数据库所在宕机,这样势必会影响业务系统,所以如果发生缓存雪崩,对于业务系统肯定是致命的。

针对导致缓存雪崩的原因,有不同的解决方法:

针对大量缓存随机过期时间,解决方法就是在原始过期时间的基础上,再加一个随机过期时间,比如1到5分钟之间的随机过期时间,这样可以避免大量的缓存数据在同一时间过期。

而针对Redis解决宕机的导致的缓存雪崩,可以提前搭建好Redis的主从服务器进行数据同步,并配置哨兵机制,这样在Redis服务器因为宕机而无法提供服务时,可以由哨兵将Redis从服务器设置为主服务器,继续提供服务。

:说说布隆过滤器的原理及应用场景?

A:如果想判断一个元素是不是在一个集合里,我们一般想到的是将所有元素保存起来,然后通过比较确定。我们熟悉的链表,树等等数据结构都是这种思路。但是随着集合中元素的增加,我们需要的存储空间越来越大,检索速度也越来越慢。

不过世界上还有一种叫作散列表(又叫哈希表)的数据结构。它可以通过一个Hash函数将一个元素映射成一个位阵列中的一个点。这样一来,我们只要看看这个点是不是 1 就知道可以集合中有没有它了。这其实就是布隆过滤器的基本思想。

如果布隆过滤器说有一个说元素不在集合中,那肯定就不在。如果布隆过滤器说在,有一定可能性它在说谎。

比较热门的场景就是:邮件过滤,使用布隆过滤器来做邮件黑名单过滤,还有重复推荐内容过滤,网址过滤, web请求访问拦截器,等等

解读:能提到使用场景,实战经验比较丰富。

数据库方面:

:谈一谈你对事务的隔离级别理解?

A:Read Uncommitted(读未提交)

在该隔离级别,所有事务都可以看到其他未提交事务的执行结果。本隔离级别很少用于实际应用,因为它的性能也不比其他级别好多少。读取未提交的数据,也被称之为脏读(Dirty Read)。

Read Committed(读提交)

这是大多数数据库系统的默认隔离级别(但不是 MySQL 默认的)。它满足了隔离的简单定义:一个事务只能看见已经提交事务所做的改变。这种隔离级别 也支持所谓 的 不可重复读(Nonrepeatable Read),因为同一事务的其他实例在该实例处理其间可能会有新的 commit,所以同一 select 可能返回不同结果。

Repeatable Read(可重复读)

这是 MySQL 的默认事务隔离级别,它确保同一事务的多个实例在并发读取数据时,会看到同样的数据行。不过理论上,这会导致另一个棘手的问题:幻读 (Phantom Read)。

Serializable(可串行化)

通过强制事务排序,使之不可能相互冲突,从而解决幻读问题。简言之,它是在每个读的数据行上加上共享锁。在这个级别,可能导致大量的超时现象和锁竞争。

线上经验:

:是否有遇到过线上问题,是怎么排查的?

A:又遇到了CPU和内存的问题,生产环境CPU过高如何解决:

1.top + H 指令找出占用 CPU 最高的进程的 pid

2.top -H -p

在该进程中找到,哪些线程占用的 CPU 最高的线程,记录下 tid

3.jstack -l

threads.txt,导出进程的线程栈信息到文本,导出出现异常的话,加上 -F 参数

4.将 tid 转换为十六进制,在 threads.txt 中搜索,查到对应的线程代码执行栈,在代码中查找占 CPU 比较高的原因。其中 tid 转十六进制,可以借助 Linux 的 printf "%x" tid 指令,jvm 多条线程疯狂 full gc 导致的CPU 100% 的问题和 JDK1.6 HashMap 并发 put 导致线程 CPU 100% 的问题。

内存使用如下命令,将当前的dump文件 导出,并通过mat进行分析:

jmap -dump:live,format=b,file=heap.bin 26525

抗压能力:

:谈一谈你从业以来遇到的压力最大的一件事情,以及你是怎么解决的

A:曾经主管交给我一个项目,非常紧急,需要在一个月内完成财务系统的大功能上线。我当时分析后发现涉及到财务5个大的模块,其中凭证、核销2个模块我之前完成没有接触过,工作量非常大,个人评估下来人力要50人日,因此将所有的功能点都列出来,标注上了开发工作量,希望能够有哪位同学协助一起,和领导沟通,最后领导同意对凭证、核销熟悉的同学支援我,并且和产品沟通后砍掉了部分需求。连续加班3周解决掉了。

解读:这位同学能够积极主动地向上寻找领导解决资源问题,而且对于软件管理有一定的了解,综合能力非常强

好了,关于阿里的技术面试,我们就说这么多。最后,希望大家都能找到自己理想中的工作,一起加油哦~~

在园区网建设过程中,我们常常面临诸多实际挑战,例如网络设计、IP规划、成本控制以及项目管理等。而名为“园区网的真实案例.zip”的压缩包文件提供了大量实用资源,包括真实园区网案例、综合实验拓扑图、相关脚本和项目需求分析等,这些资料对于理解和实践园区网建设具有重要意义。我们重点关注其中的“园区网综合实验”部分。 园区网是在学校、企业或政府机构等相对封闭区域内构建的网络,旨在为区域内用户提供高效、安全的数据通信服务。综合实验则是为了模拟真实环境,帮助学习者掌握园区网设计的关键技术和步骤,通常涵盖网络设备选择与配置、VLAN划分、路由协议应用、QoS策略设定以及安全防护措施等内容。压缩包中的“最终”文件可能包含了项目实施的最终成果,如经过验证的网络设计方案、配置脚本或项目总结报告,这些资料有助于我们将理论知识转化为实际可执行的方案。 “命令”文件则可能包含了用于配置网络设备的CLI指令,涉及交换机和路由器的基本配置,如VLAN设置、端口安全、静态路由或动态路由协议(如OSPF、RIP等)。通过研究这些命令,我们可以学习如何根据不同场景正确配置网络设备,以满足业务需求。 IP规划是园区网建设中的关键任务,合理的IP规划能够避免地址冲突,便于管理和维护。案例中可能会展示如何根据园区规模、功能区划分及未来扩展需求制定合适的IP地址策略。成本控制同样重要,园区网建设不仅涉及设备购置费用,还包括安装、运维、升级等长期成本。案例可能探讨如何在满足功能需求的同时,选择性价比高的设备,优化布线方案,并通过节能技术降低运营成本。 项目总结则是对整个实施过程的回顾,涵盖遇到的问题、解决方案、经验教训及改进点,对提升项目管理能力和问题解决技巧非常有帮助。这个压缩包的内容全面覆盖了园区网设计、建设和管理的多个方面,是学习和实践网络技术的宝贵资源。通过深入研究这些材料,我们可以提升网络规划和实施能力,更好
内容概要:本文档《Grafana运维指南:从入门到精通》详细介绍了Grafana这一开源度量分析和可视化工具的各个方面。首先解释了Grafana在数据监控和分析中的重要性,强调其开源、可视化、多数据源支持、告警功能、灵活的仪表盘管理和丰富的插件生态系统等特点。接着,文档逐步讲解了Grafana的安装与配置,包括系统准备、初始配置和数据源配置等步骤。随后,深入探讨了数据源管理、仪表盘操作、插件使用等核心功能,提供了详细的配置和使用指南。最后,文档介绍了性能优化、安全管理、日志分析等日常运维要点,并通过一个实际案例展示了Grafana在大型电商平台运维中的应用价值。 适用人群:适用于运维人员、系统管理员、开发人员以及任何需要进行数据监控和分析的专业人士,尤其是那些对Grafana有一定了解或有兴趣深入了解的人群。 使用场景及目标:①帮助用户掌握Grafana的安装配置和基本使用方法;②指导用户如何整合多种数据源,创建和管理仪表盘;③提供性能优化、安全管理等方面的建议,确保Grafana在实际应用中的高效稳定运行;④通过实际案例分享,展示Grafana在复杂业务环境中的应用效果,提升用户对Grafana的理解和应用能力。 其他说明:本文档不仅涵盖了Grafana的基础知识和技术细节,还结合实际案例,帮助读者更好地理解和应用Grafana。建议读者在学习过程中结合实际操作,通过实践加深对Grafana的理解。此外,文档鼓励读者参与社区交流,分享经验和心得,共同进步。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值