moka后端实习生 offer
一面
- 自我介绍
- 你对我们公司有哪些了解
- 选一个你最想介绍的项目
- 细问实习的事情(就是问你的需求,然后模拟一些新的需求问你怎么实现)
- 任务执行超时后怎么处理的
- excel解析大量数据可能oom吗,怎么处理
- 如果一个时间很多人导入,线程池太多任务可能会oom吗,怎么处理
- 你改有界队列采取拒绝策略会不会出现很多都失败任务,怎么办
- 宕机后怎么处理(我是用定时任务+redis兜底,细问,差点没抗住)
- 还问了好多,深挖项目
- 平时有没有刷题,他说剩下时间写一道题吧(我很想写的,但我说用的手机要怎么写,他说那算了聊下基础)
- 讲下NIO
- hashmap你觉得设计的最好的地方
- HTTP和HTTPS的区别
------------反问------------
- 有几轮面试
- 对我有什么建议吗
- 有没有转正
总结:按照简历上来问,面试官模拟的场景题能看出面试官很强,给面子了问的很简单,但是NIO没答好,刚学netty这些不应该这么快写简历上的,感觉一点都不扎实好在没细问。
二面
- 自我介绍
- 挖了下实习项目,然后更换了我实习的很多需求,让我现场说思路怎么改设计和技术方案
- 我现在有创建文章功能,做去重,已经有的文件不能重复发表创建(我说可以利用redis的set把id标题作者来做区分)
- 我现在要求文章一样呢,文本数据量很大,怎么办?(我说能不能用个hash来映射一下,或者用布隆过滤器判断一下,自己实现一个hash算法什么的,他说ok没有为难我换问题了)
- 我现在要做热榜,统计前10的文章,你怎么做,要考虑到缓存和数据库同步这些(zset,将来下怎么设计还有数据库和redis同步一些问题)
- 那我要实时统计怎么做呢,你现在这个是永久的,我可能要这个小时的前10,你这个是前面都算?(我说是不是能设计个lru算法来实现,然后说了下lru原理)
- 能不能就用zset实现?(我想不出来,我说开个定时任务每个小时清空重新计算,然后给用户选哪些小时的排行)
- 不行,你这个不够平滑,能不能平滑点?(我不会了,能不能提示一下啊?)
- 你有没有了解过滑动窗口,springcloud限流组件原理看过吗,你可以去了解一下
- 你理想的实习应该是怎么样的,你更希望学到什么
--------------反问-------------
- hr说,没有转正,是真的吗?(他说不一定得看公司发展,确实不一定有)
- 有什么建议?(说了好多,非常nice的面试官,学到很多)