简历上写的东西:
投递岗位:Java开发实习生
实习背景:从2020/8-至今,一直在华为杭研所鲲鹏计算产品部实习
项目背景:
- (实习项目)鲲鹏Java性能调优工具后端开发
- (实习项目)鲲鹏代码迁移工具IntelliJ插件开发
- 一个微服务练手项目
技术栈:简历上除了JVM写的熟悉其他都为了解(多线程+zookeeper+kafka)
备注:
- 七次面试包括两个部门,目前系统中流程在部门A中。
- 都是面试后的回忆,所以顺序可能会有点乱。
阿里部门A一面 22min
1. 自我介绍
2. Java性能工具(项目)需求如何解决?性能?优化的想法?
3. 内存泄漏原因,如何排查?
4. CPU负载过高怎么解决?
5. 大部分用户反馈淘宝页面打开比较慢但最终都能打开,如何排查?
6. 字符串"dadsa,adsadsad,dasdas,aaa"按逗号分割,怎样性能最高?
7. JVM内存区域,GC,CMS和G1的区别,G1的优势?
8. HashMap的并发问题,1.7和1.8的区别。怎样才能线程安全?
9. 线程池核心参数?原理?拒绝策略的选择?参数如何选择?
10. 数据库查询较慢如何排查?优化思路?
11. 第一个项目的团队规模?第二个项目的团队规模?
12. 开始介绍部门,问有无兴趣?
13. 反问:正式流程怎样?工作地点?
阿里部门A二面 59min
1. 自我介绍
2. Java性能工具介绍,需求怎么做,涉及的技术,底层的原理,优化的思路,优化的效果?
3. 这个工具下不同模式对业务的影响?
4. 如果一个程序还没来得及在OOM时进行堆转储时这个工具能定位到问题吗?
5. GC 所有内容
6. 工作中用到的设计模式?讲四种单例实现
7. 算法:(先讲思路再逐行口述代码)
1. 一个整型数组,用递归判断是否有序?
2. 求字符串中第一个不重复的字符?
8. 两个对象相互引用,怎么解决?给两种思路?
9. Spring是怎么解决的?底层了解吗?
10. Spring的四种作用域介绍一下?
11. DI是什么?
12. 动态代理了解吗?介绍一下?jdk和cglib的区别?性能哪个更好一点?
13. session和cookie
14. 如果要做一个秒杀活动,你会如何设计?怎么解决超卖问题?从哪些角度思考?
15. 缓存可能出现的问题?数据库查询慢排查思路?
16. 哪些与并发相关的技术?讲下区别?悲观锁与乐观锁?CAS原理?改进?
17. HashMap底层?
18. 一个网站打开很慢?排查思路?
19. CPU使用率较高怎么排查?linux的命令?
20. 分布式架构下问题的排查思路?
21. 如果一个线上的程序频繁Full GC?该如何排查?会怀疑哪些原因?内存泄漏的原因?
22. 其他部门面试了吗?有几个部门?
23. 反问环节:部门业务,实习生成长?笔试安排?我的表现?后续流程?
阿里部门A三面 1h 11min
1. 介绍你参与程度最高的一个项目,两种模式的区别?场景?
2. 这个工具在我们部门有使用场景吗?用户反馈?
3. 为什么已经有类似的工具,还要开发这个工具?
4. 线上OOM频发,已经把这台机器隔离了,你用什么模式分析?如何分析?OOM的几种情况?
5. 线上GC频繁?从哪些角度进行分析?原因?
6. 如果现在机器是8G内存,已经给JVM堆设置了4G,你会怎么进行扩容?
7. 如果扩容到接近8G会怎样?方法区OOM进程会被kill吗?
8. 线上后台有一个sql对全量数据进行读写,非常慢,前端会影响吗?怎么影响,举例?原因是什么?
9. 如何定位慢sql,怎么优化?有哪些思路?
11. 如果是线上提供服务的机器,现在要快速解决,采用什么方法?
11. SQL哪些情况不走索引?
12. HashMap和HashTable的区别?ConcurrentHashMap的底层,不同jdk版本的区别?
13. Spring的两种最主要的特性介绍一下?AOP除了通过动态代理还可以通过什么技术实现?
14. 如何自定义实现自己的注解?
15. Spring原生注解的调用原理是怎样的?
16. 分布式相关有了解吗?
17. 算法题: (阿里伯乐系统)
1. 中序遍历
2. 实现一个栈, 要求所有方法时间复杂度均为O(1)
3. 为栈添加一个新方法getMax获取栈最大值且时间复杂度O(1)
18. 反问:部门对实习生的培养?后续流程?面试反馈?
19. 又追问:华为有转正通道吗?你怎么看待阿里?华为和阿里都给了offer你选择谁?为什么?
阿里部门A hr面 22min
- 基本情况了解, GPA在整体的哪个范围
- 自我介绍
- 讲一下项目背景,开发流程,用户反馈
- 会有产品经理进行需求拆解吗?
- 谈谈曾经的挫折?
- 可以讲讲工作学习之外的一些其他的事情吗?
- 华为是否有转正通道?你对阿里怎么看?华为和阿里都发offer你怎么选择?为什么?
- 你觉得当前新兴的一些互联网公司如字节快手相对于阿里的优点是什么?如果这些公司都给你发了offer会怎么选?为什么?
- 实习经历让你学会了什么?你成长了哪些?
- 反问: 对我的面试评价 + 多久能反馈结果
我是AB分割线
阿里部门B一面 27min
1. 自我介绍
2. 项目介绍?
3. 在实习公司的开发流程?技术成长?遇到难题的思路?如何code review?
4. 插件开发的难点?
5. JVM freestyle
6. 你喜欢做业务还是做底层架构?
7. 部门介绍,其他部门的提前批情况?
8. 反问:实习生培养机制?部门HC情况?后续流程?
阿里部门B二面 21min
1. 自我介绍
2. 介绍简历中的一个项目?你在里面的角色?做了什么?
3. 遇到难点怎么解决?
4. 自动拆装箱
5. 介绍一下JVM的内存区域?
6. 介绍一下GC?
7. 介绍一下多线程?一般项目里怎么用?
8. parallelStream()方法的底层机制?
9. 敏捷开发
10. 新技术如何学习?未来的计划?
11. 反问:部门对实习生的培养机制+后续还有几面
阿里部门B三面 30min
1. 简单介绍
2. 华为有转正通道吗?你对阿里怎么看?老家是哪里的?
3. 介绍一下第一个项目?
4. 你在开发的时候的一些思路?优化思路?该需求的用户反馈?
5. 这个工具的优势,相较于其他工具的优点?该工具衡量的指标有哪些?
6. 讲讲第二个项目?新手对于插件开发如何适应和学习?遇到问题怎么解决?
7. 如果让你开发一个其他的IntelliJ插件,你有哪些想法,这些插件可以怎样应用?
8. 讲讲第三个项目?你怎么理解微服务?
9. 什么情况用单体架构,什么时候用微服务?
10. 微服务的优点和缺点?什么是单一职责?
11. 一个项目上线需要哪些流程?
12. 你觉得一个好的项目(功能)需要满足哪些特性?
13. 反问:面试评价
面经结束
总结
- 几乎所有面试官都对第一个项目感兴趣:该项目已发布可以直接搜索鲲鹏Java性能调优工具,三个月一个迭代。对我的帮助很大而且在做的时候也学会了很多东西。
- 安利一下实习的部门:华为->云与计算BG->计算产品线->鲲鹏计算产品部->鲲鹏计算解决方案项目群。base杭州。同事人都很好,主管非常棒而且都很年轻,部门总监是一个很牛逼的人。
- 阿里的面试官都很好,都提前预约面试时间,对我等实习中的苦逼友善多了(腾讯随机捞人确实让人体验不好,上班时候打过来突击面试)
- 部门A问了很多实际的场景题,答得有好有坏。部门B基本都问项目
最后希望能够收到意向书!!!!
全部评论
(4) 回帖