四面阿里巴巴如愿拿到 offer 定级 P7,为此我筹备了半年
每个程序员都有一个大厂的梦,而互联网大厂首当其冲自然是阿里巴巴最吃香,今天小编就来分享一个小伙进阿里巴巴的面经!
“不想进大厂的程序员不是好程序员”哈哈哈
春节过后,本是金三银四之际,大部分人也都准备好了这在两个月里谋得一份自己心仪的工作,奈何今年的 2020 有些特殊,肺炎肆虐,对我们的工作和生活都造成了极大的影响。那么,是不是这样,我们就不工作,不学习了呢?实际上,正是因为现在正值传染病毒传播期间,所以我们宅在家里好好学习是再好不过的。对于 Java 程序员来说,利用这两三个月的时间,好好学习,着手准备起来,等到疫情好转,开始面试时,也不至于胆怯。
本人也是准备了大半年,最终如愿以偿拿到阿里 offer!
个人情况
我是一个普通的双非本科生,开发三年多(Java 后端),平时学习也比较勤学好问,对待工作也极度认真负责,对自己进入大厂工作还是很有信心的,我的方向是 Java,也知道现在 Java 的竞争比较激烈,大厂比较难进,但我丝毫不胆怯。为此也在半年前就开始筹备了,今年初在一位大佬的内推下加上自己对知识点的复习和努力也如愿以偿的成功拿到阿里的 offer!
在此特别感谢这位大佬给我提供的帮助及内推!
Java 中间件一面
1.技术一面考察范围:
重点问了 Java 线程锁:synchronized 和 ReentrantLock 相关的底层实现
线程池的底层实现以及常见的参数
数据结构基本都问了一遍:链表、队列等
Java 内存模型:常问的 JVM 分代模型,以及 JDK1.8 后的区别,最后还问了 JVM 相关的调优参数
分布式锁的实现比较
2.技术一面:
1.自我介绍
2.擅长哪方面的技术?
3. Java 有哪些锁种类? (乐观锁 &悲观锁、可重入锁 &Synchronize 等)
4.比较重要的数据结构,如链表,队列,栈的基本理解及大致实现
5. J.U.C 下的常见类的使用。ThreadPool 的深入考察; BlockingQueue 的使用
6. Java 内存分代模型,GC 算法, JVM 常见的启动参数; CMS 算法的过程。
7. volatile 关键字有什么用(包括底层原理)
8.线程池的调优策略
9. spring cloud 的服务注册与发现是怎么设计的?
10.分布式系统的全局 id 如何实现
11.分布式锁的方案,redis 和 zookeeper 哪个个好,如果是集群部署,高并发情况下哪个性能更好。
Java 中间件二面
1.技术二面考察范围:
问了项目相关的技术实现细节
数据库相关:索引、索引底层实现、mysql 相关的行锁、表锁等
redis 相关:架构设计、数据一致性问题
容器:容器的设计原理等
2.技术二面:
1.参与的项目,选一个,技术难度在哪里?
2. Collections.sort 底层排序方式
3.负载均衡的原理
4.设计模式与重构,谈谈你对重构的理解
5.谈谈 Redis 相关的集群有哪些成熟方案?
6.再谈谈-致 hash 算法(redis)?
7.数据库索引,B +树的特性和建树过程。
8. mysql 相关的行锁,表锁;乐观锁,悲观锁
9.谈谈多线程和并发工具的使用
10.讲讲 Redis 的架构和组件
11. Redis 的数据一致性问题(分布式多节点环境 &单机环境)
12. docker 容器
Java 中间件三面
1.技术三面考察范围
主要谈到了高并发的实现方案
以及中间件:redis、rocketmq、kafka 等的架构设计思路
最后问了平时怎么提升技术的
2.技术三面题目
1.高并发情况下,系统是如何支撑大量的请求的?
2.接着上面的问题,延伸到了中间件,kafka、 redis、 rocketmq、 mycat 等 设计思路和适用场景等
3.最近上过.上哪些技术站点; 最近在看哪些书。
4.工作和生活中遇见最大的挑战,怎么去克服?
5.未来有怎样的打算
Java 中间件四面
最后,你懂的,主要就是 HR 走流程了,主要问了未来的职业规划。
半年复习筹备,直达阿里巴巴
了解学习相关知识
这段时间我不断找资料学习,也通过很多渠道和朋友要到一份美团架构师写的 Java 入门到架构成长笔记;
这份笔记把 Java 后端 95%的技术体系都整理记载清楚了,并且通过工作时间年限来划分了学习的技术!学起来跟升级打怪一样(非常建议大伙看一看)
下面会详细展示这份 Java 从入门到架构成长笔记的内容及涵盖的知识点。
整理不易,觉得有帮助的朋友可以帮忙点赞分享支持一下小编~你的支持,我的动力;祝各位前程似锦,offer 不断!!!
Java 从入门到架构成长笔记目录
新手村—入门到开发半年(吃透 12K+起步)
Java 基础篇: 基础语法+集合+异常+反射+IO+TCP+多线程
Java web 篇: MySQL 数据库+JDBC+Servlet
三大框架篇: Spring+SpringMVC+MyBatis+商城实战项目
SpringBoot+SpringCloud 分布式开发篇: 微服务入门+实战
项目经验篇: 秒杀系统设计+SpringBoot 商城实战
Java 基础篇
三大框架篇
项目经验篇(秒杀+SpringBoot 实战)
打怪升级第一步—开发 1 到 3 年
Java 并发编程底层篇: 并发基础+JMM+线程池+阻塞队列+并发集合+并发工具类+锁+atomic
JVM 与性能调优篇: 内存区域+垃圾回收器和内存分配策略+类加载机制+调优
网络编程篇: TCP/HTTP+Netty+多路复用
SQL 调优篇: SQL 优化原则+锁+索引+调优+事务+执行计划
Tomcat 底层篇: 架构+基础+调优+集群+安全
设计模式篇: 六大原则+23 种设计模式
Spring 源码篇: IOC+AOP+声明事务源码解读
MyBatis 源码篇: MyBaits 源码架构分析+MyBaits 核心模块分析+二级缓存
并发编程篇
JVM 及调优篇
网络编程篇
MySQL 调优篇
设计模式篇
Spring 源码篇
MyBatis 源码篇
打怪升级第二步:4-5 年资深高开
分布式思维基础: 大型互联网架构演进过程+架构师应具备的分布式知识+主流分布式架构设计详解
分布式监控: Zookeeper+Nginx
分布式消息队列: RabbitMQ+RocketMQ+Kafka
分布式存储: Redis+MongDB+Mycat
分布式监控
消息队列
分布式存储
打怪升级第三步:5 到 7 年架构进阶
微服务架构进阶: Docker+SpringCloud+Spring Cloud Alibaba+K8S
亿级流量性能调优实战: 调优基础+基础代码性能优化+设计模式与性能+并发编程性能优化+JVM 深度调优+数据库性能调优
一线大厂分布式场景实战: 分布式事务解决方案+一线大厂单点登陆方案+分布式任务调度方案+高并发场景下分布锁方案+缓存解决方案
性能调优实战笔记
大厂分布式场景实战笔记
总结
同样是做 Java,有的人工作 5 年工资没变化,有的人工作 2 年就已经年薪 30W。**这个现象或许前几年还不明显,**但随着近几年后端技术疯了一般的快速发展,曾经那个只要会 CRUD 就能走遍天下的时代早已不在了,人才水平的分化也越来越明显。
竞争永远都是非常残酷的,毕竟成为一个架构师不是那么容易的,一个架构师的成长来自于机会,努力及天分 !在这个后浪奔腾的时代,不管是你是刚工作还是有几年开发了,我相信以上这份 Java 从入门到架构成长笔记你都需要阅读阅读,希望能够对你的职业发展有所帮助。
需要完整 PDF 版的朋友,可以 点击此处 凭截图免费获取
评论