minimax(AI独角兽公司) 后端开发面筋

minimax面筋 后端开发

整体流程:问项目+手撕算法+反问 问答环境半个小时,手撕出了bug调了一会,全程一个小时不到点

1.面试官做自我介绍,然后我做自我介绍

2.讲一下项目当中的excel批量导入你是怎么做的(答线程池+redis兜底,防阻塞)

追问:redis兜底怎么兜,在这里面起到什么作用,为什么不起线程来兜底,redis定时任务怎么实现的

3.说一下submissionthreadlocal的实现原理

追问:submissionthreadlocal是如何在微服务,多机环境下传递线程上下文的(其实这玩意只能单机,面试官估计也是抱着疑问而不是考察的态度在聊)

追问:你为什么用这个东西,直接用kafka里面添个字段传上下文不行吗(答kafka异步消费,消费者那边是复用了一个方法,他自带角色校验,我需要把上下文带到消费者这边来,要不然校验不过去,kafka加个字段也是一样要拿出来塞到线程上下文的,两种做法都ok)

4.项目中有提到对目录的处理,是如何做的(答树行目录,链式存储数据库+预加载到内存当中,crud基于内存来做,数据库层只做内存与数据库的同步)

追问:内存与数据库同步怎么做的(答对同步性要求不高,可以定时更新,但我这边是用了lazy tag,需要用的时候再更新)

追问:lazy tag具体触发逻辑,如果宕机你的内存不持久化怎么办(答:小项目,设计不规范,设计时没有考虑低概率的宕机,要考虑这一点的话可以存中间件里,如redis,他有宕机持久化策略)

追问:为什么用mysql存而不是用芒果db或者oss这种对象存储(答项目只引入了mysql,为了这一个功能单独引新的库比较不划算)

追问:使用mysql和oss来存有什么区别,可不可以把整个目录关系树捏成一个json存mysql的一个字段里面(答mysql在初始化到内存时无法避免需要递归访问数据库来构建整棵树,oss整个能直接拿出来用,但考虑到对目录关系修改的问题,mysql比较方便,一整个json对象毕竟不太好修改的)

5.我看你项目里提到高并发场景,把RR库降级到了RC,为什么这样能提高并发(答mvcc那一套间隙锁没了,并发自然高了)

追问:降级会有什么影响,我看你提到不重要的数据可以降级,重要的不能降级,为什么(答RC只能保证最终一致性,重要数据高并发下会出问题)

追问:具体举个例子,说明会出什么问题(答间隙锁下区域内的幻读,比如检索abc为开头的字段,另一个线程来修改把一个abc改掉了,就会出问题(修改+查询))

算法手撕:力扣56 区间合并

反问:公司业务,研究ai细化到什么程度,我有机会去做agent吗最近比较火,想玩一玩哪方面,跟智谱华章是不是做得业务差不多

总结:面试体验直逼大厂,我发现如果面的岗位薪资在20k+的公司,面试官都会先做一个自我介绍,然后再让我介绍。整个面试以引导为主,业务也聊的很细,问的点都很有启发性,特别是oss那块属于是对我的项目提出了建设性意见,体验很好,对我的帮助很大。

#面经##面试##面试体验感最好的是哪家?##面试体验最好的公司#
全部评论
牛客上开了两个 25 应届生
6 回复 分享
发布于 05-14 18:26 湖南
我也是校招在里面提前实习,已经跑路了.... 公司不稳定 裁员,之后干提前实习的校招生,实在绷不住了,春招重新找了几个大厂offer润了
1 回复 分享
发布于 05-17 12:09 福建
卡转正
点赞 回复 分享
发布于 05-16 08:48 广东
作为这家公司提前实习被毁约的其中之一,说点真心话吧:如果你能力很强(学历很好也算),能够在一两个月内达到跟同组的社招同事们差不多的水平,那可以去卷的,因为从我了解的,这家不仅仅只卡了我一个人,还认识一个中科院的算法大佬,在那里实习了好几个月,春节期间都在加班只休了一天,毕设都没时间写,但 4 月被告知产出不够,直接让走人。当然公司的同事都比较好,只不过培养体系和方式真的不适合应届生
1 回复 分享
发布于 05-16 01:00 上海
这是实习么哥们,问的已经这么难了么
点赞 回复 分享
发布于 05-15 10:50 江苏
这家公司卡转正,牛客上好几个25届的已经被卡了
点赞 回复 分享
发布于 05-14 14:27 安徽

相关推荐

评论
6
14
分享

创作者周榜

更多
牛客网
牛客企业服务