网络工程师面试不好,共4轮面试
Q:1. JVM的内存模型
Q: 2. 谈谈GC,CMS的流程,新生代老生代分别用什么算法 1条回答
Q: 3. 谈谈类加载器,类加载器有哪些,双亲委派最终是由父还是子加载
Q: 4. 操作系统的悲观锁、乐观锁
Q: 5. 数据库层面的悲观锁、乐观锁
Q: 6. 数据库事务讲一下 1条回答
Q: 7. Redis的持久化机制
Q: 8. Redis如何实现高可用
Q: 9. 索引的类型,索引的底层实现原理
Q: 10. 谈谈消息队列
Q: 11. HashMap底层实现,哈希冲突怎么解决的
Q: 12. 各种排序算法讲一下
二面:
Q: 1. Spring IoC、AOP,底层代码看过吗,scope作用域为什么要有prototype 1条回答
Q: 2. 谈谈JVM,方法区可以实现GC吗
Q: 3. 谈谈你知道的设计模式,知道什么是回调模式吗
Q: 4. 谈谈GRPC,为什么用protoBuf作为序列化机制,跟其他二进制比有什么优势(好像有坑,阿里用的是hessian)
Q: 4. 高并发系统,海量数据分库分表的策略
Q: 5. 数据库前面的Redis缓存,如何实现查询的负载均衡(这里扯出了布隆过滤器及其哈希函数冗余)
Q: 6. 为什么选择阿里巴巴?你对待工作的做事原则有哪些?1条回答
Q: 7. 英文介绍你在项目中遇到的困难(这个真的懵逼了)
三面:
Q: 1. 选一个项目具体讲讲背景、你的职责、遇到的困难以及如何解决(然后各种问细节)
Q: 2. 项目中用了REST,是拉的还是推的,既然是实时为什么不用推的 1条回答
Q: 3. Redis和数据库如何保证数据一致性
Q: 4. 问了我参加的数学建模美赛(感觉被鄙视了,对方以为是ACM) 1条回答
Q: 4. 在技术方面还有哪些兴趣?最近在看哪些技术方面的书
四面(交叉面):
Q: 1. 谈项目,问一些细节
Q: 2. 操作系统学过吗?进程和线程区别? 1条回答
Q: 3. 算法学过吗?讲讲动态规划、快排、堆排
Q: 4. 用过什么代码质量检测工具?自己写代码的时候会如何注意代码质量?
Q: 5. 用过什么JVM调优命令? 1条回答
Q: 6. 如何实现线程安全?java的线程安全类?讲讲线程池
Q: 7. 讲讲生产者消费者模式
Q: 8. 还投了哪些企业,有offer了吗 1条回答
HR面:
Q: 1. 前面的面试有什么收获吗? 1条回答
Q: 2. 你回顾自己的项目,有哪一点是最遗憾的最想改进的?具体讲讲
Q: 3. 你有什么技术方面崇拜的人吗?
Q: 4. 为什么选择开发不选择算法? 1条回答
Q: 5. 看你发了一些论文,当时出于什么想法发的论文?
Q: 6. 还投了哪些企业呢,你觉得阿里巴巴跟其他企业相比有什么不同 1条回答
Q: 7. 非科班出身,你是如何积累自己开发方面的技能的,如何自学的? 1条回答
Q: 8. 你在技术方面的未来规划
难度大 深挖项目 看中专业技能 jvm 缓存 模型 哈希 redis 线程 数据库 算法 hashmap java 操作系统