一面 45min
感觉稍微大一点的厂(代码随想录写三线互联网大厂),面试官就会深挖了挖到不能再答,比之前的水面挑战多了
-----------------------------------
- 自我介绍,项目介绍
- 点赞怎么做的,共同关注怎么做的?
- 如果现在用户量上百万了,你要怎么优化?(答的redis主从、哨兵、切片集群、mysql分库分表按月分,垂直、水平分)
- set怎么设计更新时间问题
- redis的数据结构和使用场景
- 项目是采取分布式架构对吧,网关是怎么设计的?
- 网关有没有考虑做限流?怎么理解限流?现在做网关限流方面的设计怎么做?(没答上来,我说了前面还可以加个nginx来限制,开始乱说)
- 简单介绍一下Nacos
- 什么是索引?
- 我现在有个sql,条件是where id<=5(id是主键),他是怎么去b+树里面搜索的?
- 你刚刚说先找到5然后把前面全部返回,如果5这个id删掉没有呢?(没答上来)
- b+树非叶子节点存的有哪些内容?
- 不断插入数据的时候,innoDB是怎么去维护这棵b+树的,这个过程清楚吗?
- 每个页的分页你清楚吗?(我说了一页16kb,存有限,存了1345假如满了,插入2就会存1234,然后5到下一页这样)
- 聚簇索引和非聚簇索引
- 有听说过索引下推吗?(不会)
- 平时项目中使用索引会关注哪些点?
- 有没有处理过慢sql(答了配置文件配置慢sql日志,然后设置超过多少算慢,找到开执行计划看)
- 执行计划有哪些字段(忘记了,我说主要是type,然后有个all走全表,其他忘记了,反正分很多个不同的级别不同的速度)
- mysql怎么实现事务隔离?
- 什么是间隙锁?
- 说下MVCC的实现原理?
- 集合熟悉有多少?
- ArrayList和LinkedList的区别?
- HashMap的底层结构是怎么样的?(阿巴阿巴,然后我说看过源码)
- 既然看过源码,底层put是怎么实现的?
- HashMap从哪里体现的线程不安全(不会)
- 那我们要怎么实现线程安全的?(hashTable和Cur hashmap)
- hashTable是怎么实现线程安全的?
- 那你说下Synchronized吧?
- 详细介绍一下Synchronized底层是怎么实现的
- 项目中有用过线程池吗?
- 怎么理解线程池
- 线程池有哪些核心参数?(没答上来)
- 说下你理解的分布式锁
- 我们设计一个分布式锁,要注意哪些方面
- 那用redis怎么实现你刚刚将的那几个点(没答太好)
- spring怎么理解
- aop底层是基于哪个设计模式?讲下动态代理模式
- ioc怎么拿到一个bean(不会)
- 有了解过mq?(答了主流3个mq的优缺点和应用场景)
- 快排是怎么实现的?(还好前几天手写过)
---------------------反问---------------------------
- 公司做什么业务?(忘记了)
- 我有什么要提升的地方(面试官说我基础挺扎实,应该有自己的完善学习方式)
- 有没有什么给在校生的建议(你现在这种大段时间系统学习的机会不多,要好好珍惜现在学习时间)(方向要选择好,你要打算法比赛就好好准备好好刷题;要搞项目找实习就好好打好基础,深挖底层原理,一定要有一个确定的方向努力)
总结:基本抗住所有问题,感觉面试官挺好的,我说mysql学比较细spring学很浅,他就深挖mysql没怎么问spring,应该能oc
二面 40min
主管面,他说上午技术面的面评很高就不问技术了
- 自我介绍
- 项目中遇到的苦难?你是怎么解决的?
- 你们团队开发的时候整个周期有什么规划吗?
- 你们团队会不会赶进度(我说赶,我刚开始负责的用户模块全部模块都依赖于这个,我是通宵写到早上7点才完成推到git的,这样其他队友才能开始他们的模块)
- 那你感觉这样怎么样?(我说我当时非常有成就感,非常激动非常开心)(他一直在笑)
- 平时是怎么学习技术的?
- 最近看了什么非技术的书籍 (我说喜欢看传记,乔布斯,雷军,张一鸣,李开复,库克的都看过,阿巴阿巴聊了挺久)
- 你最近看这本雷军传记总结是什么?
- 最敬佩的人?最欣赏他什么特质?
- 你参加了字节跳动青训,有考虑字节跳动实习呢?(我说卡学历了,我感觉这个回答的巨栏。但是面试官还是安慰我说没关系,可能是上午面试回答的很好吧。他说他们去年招了很多211的,还有个211专业第一,但是眼高手低,觉得自己很厉害,听不进意见。反而没有二本的学生的技术和虚心,他们也愿意要二本,反正说了很多,主管人超好,这个问题真不知道怎么回答)
- 可能会加班怎么样的,问我能不能接受
- 介绍了公司的产品业务
-----------------反问-----------------
- 我能进吗?
- 作为职场人,对大三学生有没有什么建议(总结:作为程序员一定要:有技术、有业务、有产品。然后讲的很细,他讲了好多,感觉这个主管超好,我很想去这个公司)
总结:准备出发杭州了家人们,就看后面hr面会不会挂了。兄弟们不要问我什么公司,我拿到offer再告诉你们
#软件开发2023笔面经##java面经##面经##实习面经##java实习面经##Java面经#