27届小红书客户端一面面经

面试官是个小姐姐,爱笑,面试氛围比藤子轻松(也可能我准备的更充分了,藤子一面面试官也超级好但是我太菜了整挺尴尬),八股和项目问了35分钟左右,然后开始写算法,算法还是不熟练,开始的思路错了,和面试官讨论了会讨论出正确答案写了下,哎这块还是要加强,算法老是记不住
没录音,纯靠自己记忆;面试完我实习的组拉着开了俩小时需求研讨会导致问的啥几乎忘完了😅
----------------------------------------------------------------------------------------
1.自我介绍
2.看你项目中用了mvvm架构,能讲讲为什么要用这个吗 -- 围绕mvc,mvvm将了区别和联系,顺带将了下mvp
2.最近还有种架构是mvi了解过吗 -- 不了解
2.看你项目中用了多线程处理网络请求,handler如何使用 -- 吟唱message,messagequeue,looper,handler的原理
补:翻转屏幕过程中activity会经历从创建到销毁的过程,viewmodel是如何解决
3.能用kotlin协程和viewmodel实现吗 -- 有记忆,小唱
4.安卓应用从点击到运行之间的过程是怎样的 -- 之前看过忘了
5.浏览器输入网址后的一系列流程是怎样的
补:如果是https协议,这个过程可能有哪些改变 -- 在tcp三次握手前先进行ttl/tsl四次安全加密,还有端口从80变443?面试官哈哈一笑。。
6.kotlin和java的类加载机制有什么区别 -- 回答了java的类加载机制,猜测kotlin和java类似
7.垃圾回收相关的知识了解吗 -- 这次把垃圾回收算法讲明白了,还讲了垃圾回收器
8.讲讲kotlin/java中的引用类型 -- 强,软,弱,虚以及对应的应用场景讲了下
9.讲讲堆 -- 堆存放各线程和类的共享变量,常量,静态方法
10.内存结构 -- 堆,本地方法栈,虚拟机栈,方法区(元数据区),程序计数器
11.static加在方法和类上的区别(?好像是这个意思当时理解错了,回答估计也不对,面试官还好心把正确答案给我讲讲)
补,看别人面经发现问的就是这个:如果一个方法加上synchronized的修饰,一个静态方法加synchronized 有什么区别?
12.讲下sychronized -- 优化前重量级锁,优化后会进行锁升级,偏向锁,轻量级锁(cas),重量级锁(阻塞)
补充:java中的反射了解吗 -- 了解应用场景,原理是通过class字节码强行访问私有成员或方法,由于没用过所以了解比较浅
13.hashmap的底层实现 -- 刚开始没反应过来,说是map,她哈哈一笑,我突然想起来是链表加红黑树,赶紧弥补;说起来她一说hashmap我就一直等他问concurrentHashmap结果就是不问气死我了
14.如何解决hash冲突 -- 学校数据结构课讲的是偏移量,按照偏移到无冲突地方学校那一套心里没啥底的讲了下
15.如果有十个数据你会用arraylist存还是hashmap存 -- 没思考直接说arraylist,想了下说应该看具体什么数据,如果是键值对有联系需要根据key找value的就map,否则arraylist,数组的查找快性能开销低
16.hashmap的扩容机制 -- 扩容因子?没咋了解过按照分布式id号段模式和arraylist扩容作类比猜测和他们扩容方式一样,都是达到一定比例自动再申请一段空间

算法:对称二叉树
反问:1.业务
         2.个人发展方向
         3.团队有用flutter或rn吗,还是安卓原生开发

大体就想起来这么多,纯靠记忆间隔五小时后回忆起的一些问题,后续想起来啥再补充
全部评论

相关推荐

03-26 19:42
已编辑
武汉科技大学 Java
岗位:【27届实习】Product Engineer-产品工程师(AI与全栈方向)-社区工程1. 自我介绍,然后可以重点说你觉得你比较有代表性的一段项目经历。我说的实习经历里的tab补全提示词那块的链路设计与重构。2. 【实习】我看这里还讲到用 workers KV 去做了一下 JWT 的鉴权这块我们是怎么迁移的?3. 【实习】那 workers KV 它的一致性模型是什么呀?比如说会不会出现一些边界的一些badcase?幸好准备了,是最终一致性。4. 【实习】那有什么解决方式方案吗?我说这里的业务场景能接受最终一致性。但我感觉应该不对5. 【实习】你们做了一个状态机来管理这个评论的生命周期,一个是这个状态机的状态和转移是什么样子的?然后另外我看我们这里有提到用了虚拟线程,就是采用虚拟线程的这个技术方案选型的原因是什么?6. 【实习】看我们这里还就是做了一些游标分页加乐观锁的一个优化。就是一个是在做游标分页和乐观锁之前,我们是怎么做的分页?然后跟之前的比如说一些普通的 offset 分页,游标分页它的优势是什么?7. 【项目】RAG混合检索策略怎么做的?召回的效果是如何评估的?8. 【项目】我们刚刚有提到做了一些 Chunk 切片的一些优化,那 Chunk 切片粒度它太大和太小,刚刚讲过,有可能有一些问题,就是如果它 chunk 切片粒度太大的话,它可能会造成什么样的问题?太小的话还可能造成什么样的问题?9. 【项目】看我们的 agent 这里我们同时用了 react 和 plan-execute-replan 的两种模式,然后是两种应用场景,我们简单介绍一下为什么做这样子的技术选型,以及这两种为什么要这样选,以及为什么要分别用在这两个对应的场景上。10. 【项目】比如说你的 RAG 系统里面是有很多相应的一些知识库文档,然后在实际的生产环境里面,我们可能 RAG 系统里的文档可能会有一些频繁的更新,或者说增删减,那如果出现这种情况,就是出现向量索引与原文不一致的这种情况,我们该怎么保证这种问题导致的一些错误呢?11. 【项目】展开讲我们的记忆系统是什么样子?12. 【项目】那如果我们有一个长期运行的一个agent,用户的对话可能长年累月,比如说需要数月或者一年多的一个累计的一个历史对话,就是对话的轮数很多很多很多,那我们在记忆系统上能做哪些优化?13. 我们的经历里面其实大部分是 AI 相关的加后端的一些经历,那你觉得你对于你自己没有前端经验这一个 gap 是怎么看待的?14. 刚也提到 vibe coding,就是我们平常就是日常使用的一些 coding 工具是哪些?15. 共享屏幕,vibe coding 一个极简版的小红书网页版,用户可以做图文笔记的发布,然后就是不管你的信息展示页面是什么样子,就瀑布流或者怎样,可以在首页的那个信息流里面展示出你发布出来的内容。16. 【八股】哈希碰撞会在什么情况下发生呢?17. 【八股】哈希碰撞出现之后,我们有什么样的处理方式呢?18. 【八股】讲一下 LRU CACHE 它是一种什么样的缓存策略?19. 【八股】如果 Redis 它经排查我们发现它的内存碎片率比较高,那可能的原因是什么?以及我们怎么排查和优化?唯一一个没答出来的,,,20. 我们要在工程环境里面落地一套基于大模型的一个企业知识的一个agent。就是按正常的做法,我们可能需要选择一些合适的方案,比如说选择合适的向量数据库去存储embedding,并且支持刚刚讲到一些相似度检索的一些功能。就是我们现在有一些主流的一些向量数据库,那我们在这种场景下一个是该怎么做向量数据库的一个选型?一个是如果需要优化一些检索召回的速度该怎么去优化?21. 【手撕】实现一个滑动窗口算法没写出来,面试官让实现伪代码,硬着头皮写了几行22. 对未来的一些 AI 的方向,你自己最感兴趣的是什么?23. 为现在很多 AI 相关的工具,你觉得对你自己的一些开发习惯上有什么大的一些改动吗?比如说我们之前是怎么样的?现在的一个工作流又是怎么样的?反问:1. 问团队业务主要是AI给各方面进行提效2. 和面试官聊 AI3. 表现有哪里不足面试官说:可能现在的面试流程都会有一道手写算法吧。我可能没有什么固定的算法题,我可能就会根据你的经历去出啊。然后还有就是大体的问题回答上我觉得没有什么大的问题,其他的问题回答上都没有什么问题。然后基础的后端的知识掌握,我觉得你是比较扎实。4. 几轮面试实习岗的话大概是 2 到 3 轮吧。有两轮技术面,然后这个可能也还会有一轮 HR 面。
我不能没有全麦🍞:为什么我的产品工程师一面说是ai coding,感觉完全没经验不知道咋准备
查看46道真题和解析
点赞 评论 收藏
分享
评论
9
13
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务