2020年是意义非凡的一年,大专的我面试阿里P6居然过了

简介: 导语学历永远是横在我们进人大厂的一道门槛,好像无论怎么努力,总能被那些985,211 按在地上摩擦!不仅要被“他们”看不起,在HR挑选简历,学历这块就直接被刷下去了,连证明自己的机会也没有,学历真的这么重要吗?

导语

学历永远是横在我们进人大厂的一道门槛,好像无论怎么努力,总能被那些985,211 按在地上摩擦!

不仅要被“他们”看不起,在HR挑选简历,学历这块就直接被刷下去了,连证明自己的机会也没有,学历真的这么重要吗?

以前我的答案是的,总认为失败就是自己学历问题,总觉得一切不公平错误都是外部的因素,从来没有考虑过自己,自身是什么能力,几斤几两!但是经过这次阿里的面试,让我有了新的见解!你所认为的失败仅仅只是你不够努力的结果,程序员确实是高学历的行业,但是更多更重要的是技术的沉淀。感谢这几位阿里面试官,没有因为我的学历看轻我,更感谢能给我这次机会!


对于很多没有学历优势的人来说,面试大厂是非常困难的,这对我而言,也是一样,出身大专,原本以为就三点一线的生活度过一生,直到生活上的变故,才让我有了新的想法和目标,因此我这个大专渣渣也奋斗了起来,竟拿下了阿里P6岗。今天分享这波面经,主要是希望能够激励到同样被学历所困扰的技术人,能够对职业生涯和技术规划有一个参考价值,感谢!

阿里面试需注意

阿里实习生招聘/秋招开始的早

学校下学期开学时间是2020年2月20日,而阿里的实习生招聘内推开始时间是3月1日,也就是说开学一周后阿里就开始内推了,相信很多同学还没从寒假里缓过来吧。阿里的秋招内推开始时间是7月4日,也就是很多学校才放暑假或还没开始放暑假就开始内推了,相信还有很多同学是打算暑假复习两个月再战秋招的吧。而且阿里内推成功即开始面试,同样也没有缓冲的时间哟~

阿里实习生招聘/秋招并不在意素质测评和编程测验


按照阿里校招官网的流程图,内推成功后会收到素质测评和编程测验的邮件通知,要求三天内完成。但是可千万别理解为没完成就不会走到面试流程了,好多小伙伴拖着编程测验不做,准备腾出三天时间抱佛脚的,结果当天或者第二天就接到电话面试了。


阿里实习生招聘/秋招主要在内推,正式批次相当于补招

阿里的绝大多数部门的招聘都放在了内推,等到内推时间截止的时候绝大多数部门都已经招满人了。正式批次笔试后,能够收到面试通知的同学很少,而且面试的部门也主要集中在高德、虾米、钉钉、优酷等部门,而非集团、菜鸟和蚂蚁。


阿里实习生招聘/秋招名额先到先得


一般来说,越早内推,越早面试,面试通过的概率相对来说更大。在内推要截止的时候再内推多半因为部门招满人了没人鸟了。

那么,面试阿里P6岗,需要掌握多少呢?

1. Android基础 & 常用

  • 针对Android基础&常用知识,我认为对于初级开发者来说,按照优先级最主要的知识点主要包括:四大组件、布局使用、多线程 & 动画
  • 具体介绍如下:

 

2. Android进阶

针对Android进阶知识,按照优先级最主要的知识点主要包括:自定义View、性能优化,具体介绍如下:

3. 与时俱进、热门技术


除了基础日常使用的Android知识,我们还需时刻关注行业动态,与时俱进的学习新技术,如近些年来较为热门的Android新兴技术包括:Flutter、热修复、插件化等;

同时,了解 & 学习常用的开源库也十分重要,常用的开源库主要包括图片加载、网络请求、异步处理的开源库,具体类型如下:

4. 编程语言:Java与Java虚拟机


Android是基于Java的,所以学习Java和Java虚拟机(JVM)十分重要

对于学习Java,我们移动端开发学习Java不需要后端那么深入,我认为作为Android开发者,学习的内容包括:语言特性、基础使用、集合类&机制。具体介绍如下:

二、阿里面试题(共4面)

一面:

时间:2020年8月23日


时长:1小时


1、 c++从cpp文件到exe可执行文件经历的流程

2、 c++动态链接和静态链接的比较

3、 了解Android的Linux层吗(我答不了解,然后没有然后了)

4、 JVM内存管理

5、 操作系统中虚拟内存的作用

6、 操作系统中的分页机制

7、 路由器和交换机的区别

8、 View的渲染流程

9、 内部类分两种,static和非static,有什么区别。


算法题:


1、层次遍历,自定义树的结构,不一定是二叉树,按顺序输出节点的值

2、只输出一层的首尾节点的值。

二面:

时间:2020年8月27日


时长:45分钟


1、 自我介绍

2、 TCP和UDP区别

3、 Java接口和abstract类的区别

4、 怎么才算abstract类,可以实现实方法吗,接口可以实现实方法吗

5、 Java泛型

6、 Java多态是什么,重载和重写的区别

7、 HashMap的put和get是怎么实现的


算法题: 输入一个由(、)、[、]、{、},组成的字符串,若其符合规则,输出true,否则输出false。比如)(、({)}、[、())等就不符合规则了,但是({})这种也符合规则。

三面:

时间:2020年9月8日


时长:65分钟


1、 自我介绍

2、 TCP三次握手和四次分手,为什么分手要四次

3、 Inner join、left join、right join的区别

4、 你了解范式吗

5、 java内部类有几种,他们的区别,匿名内部类有什么特点。

6、 sleep()和wait()的区别。

7、 service的启动方式

8、 service的生命周期

9、 讲讲你对广播的理解。

10、 给你一个项目,你会怎么做它的架构(我不会,扯到了设计模式)


算法:


1、 实现一下单例模式(因为之前扯到了设计模式)

2、 给一个数组和一个目标数,找出所有的相加之和等于这个目标数的数字组合。

HR面:

1、为什么来阿里?

2、之前没考虑过阿里吗?

4、毕业这么久了,你觉得自己最大的改变是什么?

5、用一句话总结一下自己

注:由于文章篇幅有限,面试题的答案的详细版整理在文档里

需要的直接点击GitHub免费领取~

  • 阿里面试解析
  • 其他大厂更多真题解析

 

三、拿下阿里P6岗offer前,我做了些什么?

(1)准备简历

简历是门面,更是敲门砖,能否拿到大厂的面试机会,就要看自己的简历如何,抛开学历意外,大厂最看重简历是否有亮点,因此我们对简历内容要有准备,对自己的突出点,包括技术、个性上的亮点,要练习表达,避免临时组织语言。

(2)提升技能

实际上我有个阿里的朋友很早之前就向我透露过,很多人认为大厂看重学历,但实际情况并不完全是,在阿里只以能力论英雄。所以,在日常生活中,通过不断地学习,提升自己的能力,努力去拉进自己与目标值的距离,这是很有必要的,也是未来的必然趋势。

关于提升技能,我的做法:

  • ①阅读实战文档

  • ②读一些源码

 

  • ③读一些技术笔记

(3)猛刷面试题

对于base不是太好的人来说,刷面试题实际上是最具有“急救”效果的办法,因此在面试阿里前,我是刷了不少面试题的,目的倒不是希望面试时能被问到原题,而是对大厂面试有一个相应的了解,清楚阿里面试会问一些什么,涉及到哪些技术栈等。

关于刷题,我有话要说:

  • ①Android核心面试知识点整理

  • ②算法部分(LeetCode+算法的乐趣)

③BAT大厂面试真题+专题训练

附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题(含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)

做个总结

很多学历不太好的人,可能对自己没有太大的信心,实际上任何事情都有“奇迹”发生,而这个“奇迹”关键还是要靠自己去创造。无论你是小白菜鸟,还是技术大牛,日常都不能够落下学习这件事情,一旦落后下来,就容易遭到淘汰。


以上我的经历希望能够给大家带来帮助,另外自己手头上的资料整理均可免费分享,需要这些资料的朋友,点赞后点击我GitHub即可免费获取!

相关文章
|
2月前
|
存储 关系型数据库 MySQL
阿里面试:为什么要索引?什么是MySQL索引?底层结构是什么?
尼恩是一位资深架构师,他在自己的读者交流群中分享了关于MySQL索引的重要知识点。索引是帮助MySQL高效获取数据的数据结构,主要作用包括显著提升查询速度、降低磁盘I/O次数、优化排序与分组操作以及提升复杂查询的性能。MySQL支持多种索引类型,如主键索引、唯一索引、普通索引、全文索引和空间数据索引。索引的底层数据结构主要是B+树,它能够有效支持范围查询和顺序遍历,同时保持高效的插入、删除和查找性能。尼恩还强调了索引的优缺点,并提供了多个面试题及其解答,帮助读者在面试中脱颖而出。相关资料可在公众号【技术自由圈】获取。
|
14天前
|
存储 NoSQL 架构师
阿里面试:聊聊 CAP 定理?哪些中间件是AP?为什么?
本文深入探讨了分布式系统中的“不可能三角”——CAP定理,即一致性(C)、可用性(A)和分区容错性(P)三者无法兼得。通过实例分析了不同场景下如何权衡CAP,并介绍了几种典型分布式中间件的CAP策略,强调了理解CAP定理对于架构设计的重要性。
47 4
|
1月前
|
存储 NoSQL 算法
阿里面试:亿级 redis 排行榜,如何设计?
本文由40岁老架构师尼恩撰写,针对近期读者在一线互联网企业面试中遇到的高频面试题进行系统化梳理,如使用ZSET排序统计、亿级用户排行榜设计等。文章详细介绍了Redis的四大统计(基数统计、二值统计、排序统计、聚合统计)原理和应用场景,重点讲解了Redis有序集合(Sorted Set)的使用方法和命令,以及如何设计社交点赞系统和游戏玩家排行榜。此外,还探讨了超高并发下Redis热key分治原理、亿级用户排行榜的范围分片设计、Redis Cluster集群持久化方式等内容。文章最后提供了大量面试真题和解决方案,帮助读者提升技术实力,顺利通过面试。
|
1月前
|
SQL 关系型数据库 MySQL
阿里面试:1000万级大表, 如何 加索引?
45岁老架构师尼恩在其读者交流群中分享了如何在生产环境中给大表加索引的方法。文章详细介绍了两种索引构建方式:在线模式(Online DDL)和离线模式(Offline DDL),并深入探讨了 MySQL 5.6.7 之前的“影子策略”和 pt-online-schema-change 方案,以及 MySQL 5.6.7 之后的内部 Online DDL 特性。通过这些方法,可以有效地减少 DDL 操作对业务的影响,确保数据的一致性和完整性。尼恩还提供了大量面试题和解决方案,帮助读者在面试中充分展示技术实力。
|
2月前
|
消息中间件 存储 canal
阿里面试:canal+MQ,会有乱序的问题吗?
本文详细探讨了在阿里面试中常见的问题——“canal+MQ,会有乱序的问题吗?”以及如何保证RocketMQ消息有序。文章首先介绍了消息有序的基本概念,包括全局有序和局部有序,并分析了RocketMQ中实现消息有序的方法。接着,针对canal+MQ的场景,讨论了如何通过配置`canal.mq.partitionsNum`和`canal.mq.partitionHash`来保证数据同步的有序性。最后,提供了多个与MQ相关的面试题及解决方案,帮助读者更好地准备面试,提升技术水平。
阿里面试:canal+MQ,会有乱序的问题吗?
|
2月前
|
消息中间件 架构师 Java
阿里面试:秒杀的分布式事务, 是如何设计的?
在40岁老架构师尼恩的读者交流群中,近期有小伙伴在面试阿里、滴滴、极兔等一线互联网企业时,遇到了许多关于分布式事务的重要面试题。为了帮助大家更好地应对这些面试题,尼恩进行了系统化的梳理,详细介绍了Seata和RocketMQ事务消息的结合,以及如何实现强弱结合型事务。文章还提供了分布式事务的标准面试答案,并推荐了《尼恩Java面试宝典PDF》等资源,帮助大家在面试中脱颖而出。
|
2月前
|
SQL 关系型数据库 MySQL
阿里面试:MYSQL 事务ACID,底层原理是什么? 具体是如何实现的?
尼恩,一位40岁的资深架构师,通过其丰富的经验和深厚的技術功底,为众多读者提供了宝贵的面试指导和技术分享。在他的读者交流群中,许多小伙伴获得了来自一线互联网企业的面试机会,并成功应对了诸如事务ACID特性实现、MVCC等相关面试题。尼恩特别整理了这些常见面试题的系统化解答,形成了《MVCC 学习圣经:一次穿透MYSQL MVCC》PDF文档,旨在帮助大家在面试中展示出扎实的技术功底,提高面试成功率。此外,他还编写了《尼恩Java面试宝典》等资料,涵盖了大量面试题和答案,帮助读者全面提升技术面试的表现。这些资料不仅内容详实,而且持续更新,是求职者备战技术面试的宝贵资源。
阿里面试:MYSQL 事务ACID,底层原理是什么? 具体是如何实现的?
|
2月前
|
Kubernetes 架构师 算法
阿里面试:全国14亿人,统计出重名最多的前100个姓名
文章介绍了如何解决“从全国14亿人的数据中统计出重名人数最多的前100位姓名”的面试题,详细分析了多种数据结构的优缺点,最终推荐使用前缀树(Trie)+小顶堆的组合。文章还提供了具体的Java代码实现,并讨论了在内存受限情况下的解决方案,强调了TOP N问题的典型解题思路。最后,鼓励读者通过系统化学习《尼恩Java面试宝典》提升面试技巧。
阿里面试:全国14亿人,统计出重名最多的前100个姓名
|
2月前
|
存储 缓存 NoSQL
阿里面试题:缓存的一些常见的坑,你遇到过哪些,怎么解决的?
阿里面试题:缓存的一些常见的坑,你遇到过哪些,怎么解决的?
|
2月前
|
存储 Kubernetes 架构师
阿里面试:JVM 锁内存 是怎么变化的? JVM 锁的膨胀过程 ?
尼恩,一位经验丰富的40岁老架构师,通过其读者交流群分享了一系列关于JVM锁的深度解析,包括偏向锁、轻量级锁、自旋锁和重量级锁的概念、内存结构变化及锁膨胀流程。这些内容不仅帮助群内的小伙伴们顺利通过了多家一线互联网企业的面试,还整理成了《尼恩Java面试宝典》等技术资料,助力更多开发者提升技术水平,实现职业逆袭。尼恩强调,掌握这些核心知识点不仅能提高面试成功率,还能在实际工作中更好地应对高并发场景下的性能优化问题。