阿里巴巴(阿里妈妈)面经

前言

阿里妈妈我是提前批开始面试的,第一次发简历是2月7日,然后好像石沉大海了,2月27日又发了一次,这次有回应了,开始面试。

一面 3.5 80分钟

  1. 自我介绍
  2. 项目介绍
  3. java object方法
  4. euqals hashcode
  5. hashmap原理,线程安全吗,如果要线程安全要用什么,concurrenthashmp怎么实现的,用的什么锁
  6. 线程和进程
  7. 内存区域,为什么有些是线程私有的
  8. 直接调run方法和使用start调run方法有什么区别
  9. 如何实现你在手机上登了微信然后在电脑上登(实际上是个单点登录问题)
  10. 如何提高数据库的并发量(我说了一堆分布式和缓存,结果他要问索引)
  11. 数据库索引讲一下
  12. b+树索引和哈希索引的区别,使用场景
  13. 一个url到界面出现的过程
  14. dns解析的过程
  15. 项目的难点在什么地方
  16. 项目是如何分工的,如何确定边界
  17. 项目如何与他人合作的
  18. 你有博客吗,给我康康
  19. 你最近关注的新技术是什么
  20. 你看过什么开源代码
  21. 看开源给你带来了什么
  22. 你觉得什么开源代码写得很巧妙
  23. 你怎么提升自己的技术栈的
  24. zookeeper如何实现最终一致性的
  25. 还有什么其他项目吗
  26. 项目学到了什么
  27. 还有其他项目吗
  28. 怎么实现多人合作编写的
  29. 发一段你自己觉得写的巧妙的代码来
  30. 写一个单例
  31. spring和springboot的区别
  32. spring的核心
  33. spring bean的生命周期

这一面算是简历面,问了很多基础知识和项目相关,但也问了很多软技能的东西,第一次碰见我答得一脸懵逼,题目中看到前后两个题目领域不一样就说明遇到我不会的了。

二面 3.13 80分钟

  1. 自我介绍
  2. redis数据类型
  3. 跳表
  4. spring,springboot区别
  5. spring中bean的好处,ioc
  6. spring为什么要用xml做配置
  7. 讲讲mvc
  8. 对model层的理解
  9. 讲讲并发编程
  10. synchronized和lock的底层实现
  11. Java线程和操作系统线程是一一对应的吗
  12. https的安全是如何实现的
  13. 数据库数据量大了之后如何做
  14. 如何设计一个淘宝库存系统
  15. 可以只用redis不用数据库吗
  16. 项目,三十分钟

这一面问了很多场景和设计题,还有一些奇奇怪怪的题目,很多都是开放性的,面试官说就是想探讨下,所以大家遇到不会的问题不要慌,猜一猜也是好的,说说自己的思路,让面试官看到你的思考,千万不要直接来一句我不会。

三面 3.15 130分钟

  1. 面向对象设计原则和设计模式,单例、责任链
  2. volatile在单例中的作用
  3. 如何实现内存屏障
  4. 类加载过程
  5. http和https的区别
  6. Http Header里有什么内容
  7. 浏览器输入URL到页面展示发生了什么
  8. 为什么要有序列化、序列化的方法
  9. https如何实现加密,说具体过程,网络分层和协议
  10. 数据库的隔离级别、事务并发产生的问题、行级锁表级锁,举例说明
  11. Spring中用到的设计模式
  12. Spring IOC和DI
  13. Spring AOP和动态代理、反射
  14. SpringBoot相比Spring有什么区别和好处
  15. 数据库里innodb引擎默认的隔离级别,是否会产生幻读问题?怎么去避免幻读问题?
  16. spring如何转发请求,具体过程
  17. 请求到达一个集群,怎么被处理的
  18. springboot代码里让请求知道去哪个controller
  19. springcloud,dubbo(都不会,就不问了)
  20. Java两个线程修改数据库,在不使用数据库锁的情况下怎么确保数据并发访问修改的安全.
  21. 算法题:有个1T的文件,内存放不下,有台电脑,2T的硬盘。文件里的内容是这样的:每行都是个字符串,可能有中文的,英文的,等等。现在要找出出现频次最高的10个字符串。时间复杂度是多少,如何考虑边界情况。最后问我之前是不是看过这道题hh
  22. 讲一个项目的业务价值,你的职责,学到什么
  23. 性格缺点,为什么
  24. 性格优点
  25. 实习时间
  26. 哪里人,多大,类似这种的hr面问题

这一面是我春招以来遇到的最长时间的一面了,面的我头昏脑花,题目是后来回忆的,也记得不太清楚,总的来说就是问的很基础,很细,很深入,大部分题目都是你平常在面经里看到过的,但一个是量大,一个是细致,面的还蛮困难的。

四面,交叉面 4.8 55min

  1. 自我介绍
  2. 项目介绍及项目相关问题
  3. 上大学做的比较好,比较差的事情
  4. 自己觉得失败的事情
  5. 自己一直坚持的事情
  6. 性格的优点和缺点
  7. 觉得做错了的决定
  8. 自己总结一下自己的技术,广度和深度
  9. 最喜欢的一门课
  10. 规划

交叉面大概就问了项目和一些人生问题,遇到的面试官比较好,没有问太多技术问题,面试体验还是很好的,但是等待体验很难受,等了二十天左右,累了。

hr面 4.9 17:10-18:00

  1. 自我介绍
  2. 笔试做的有点差,觉得原因在哪
  3. 聊人生
  4. 后面可能会补一轮笔试

大部分都是人生题,然后因为笔试做太差了说之后会补一轮笔试(我以为我是20分,hr告诉我是15分hhh,虽然没啥区别),部门内部还要排序,决定发不发offer。

总结

可以看到阿里就是非常注重项目和基础,会问很多场景题,设计题,项目相关的问题,所以一定一定要有项目经历(当然这是针对大部分岗位),还要对项目很了解。我觉得最难的就是他会问你高并发分布式这种问题,作为在校学生其实很少有实操这种项目的机会,只能按照自己的理解来回答。如果项目本身没啥可说的,你就说说对项目未来的设想,在高并发,分布式的情况下你会怎么做这种,体现自己对于项目的思考。

你可能感兴趣的:(面经)