小红书

收藏
企业服务
1000-9999人
D轮及以上
上海市
高校必争榜offer比较常胜榜HC充足榜校招高薪榜牛客指数榜
查看官网
上传简历
职位类型
全部
后端开发
前端开发
测试
人工智能/算法
产品
更多
最新
热门
05-08 20:00
已编辑
南京邮电大学 Java
1. 请做一下自我介绍2. 你提到“问题导向”,具体是怎么体现的?3. PE(产品工程师)和传统后端开发有什么区别?4. 作为实习生经验不足,如何快速参与业务并给出建设性意见?5. 你在项目中是如何体现“问题导向”的?6. 多轮对话效果变差的本质原因是什么?7. ReAct 能解决上下文问题吗?为什么?8. 你是怎么做上下文压缩的?9. 如何保证压缩过程中不丢关键内容?10. 如何判断哪些是关键内容?11. 长对话(20~30轮)怎么处理?12. 压缩本身会丢信息,你怎么控制?13. 为什么要用 topK + 元数据过滤?14. topK 是怎么实现的?(embedding 吗?)15. 为什么不能只用 embedding?16. 为什么要结合关键词检索?17. embedding 相似 ≠ 语义相似,为什么?18. embedding 为什么会不准确?19. 如何提高 embedding 检索的准确率?20. 文本切分(chunk)策略怎么设计?21. 如果文本特别长(超过 token 限制)怎么办?22. 有没有了解业界的上下文压缩或检索方案?23. 你的系统一致性是怎么做的?24. Redis + MQ 是最终一致性还是强一致性?25. 秒杀场景可以用最终一致性吗?26. 这种方案会不会超卖?27. 你到底实现的是强一致还是最终一致?28. 如果要实现强一致性,应该怎么做?29. 多级缓存体系是怎么设计的?30. 如果没有缓存会有什么问题?31. 什么是缓存穿透?手撕:从二叉树中一个结点出发,返回所有路径长度为target的路径。vibe coding,一定要用js写后续:手撕没写出来,第一次遇到要用vibe coding的,手足无措等了半天gpt连上,泡了一周挂了
我的求职进度条
点赞 评论 收藏
分享
05-08 17:30
已编辑
蚌埠坦克学院 Java
查看8道真题和解析
点赞 评论 收藏
分享
05-04 08:23
东南大学 C++
一、基本情况与项目背景1.请做一个简单自我介绍。2.详细介绍一下你在字节做的端智能 SDK / 特征平台项目。3.端上的原始数据流主要包含哪些内容?4.这些数据是在端上落库,还是会上报云端?两条链路分别做什么?5.业务方如何注册、消费自定义特征?二、设备特征缓存优化6.设备特征缓存优化的背景是什么?原来性能瓶颈在哪里?7.为什么设备特征可以牺牲一部分时效性来换性能?8.为什么从统一 TTL 改成 2 秒 / 10 秒 / 90 秒分层 TTL?9.不同 TTL 档位分别适合哪些设备特征?10.你们是如何通过打点、实验和 A/B 验证优化效果的?三、C++ 智能指针11.你对 C++ 智能指针的理解是什么?12.unique_ptr、shared_ptr、weak_ptr 分别适合什么场景?13.shared_ptr 的引用计数机制是什么?14.weak_ptr 如何解决 shared_ptr 的循环引用问题?四、特征 SQL 复用优化15.端上 SDK 为什么会涉及 SQL 复用优化?16.端上本地数据库里存的是什么,业务方为什么会查它?17.特征 SQL 查询的性能瓶颈是什么?18.为什么这些 SQL 可以模板化、签名化和合并?19.为什么第一版 UNION ALL 优化效果不理想?20.后续“提取时间戳 + 最小时间戳查询 + 应用层分发”的方案是怎么做的?21.SQL 优化最终在单模块和全链路上分别带来了多少收益?五、直播端智能 / ABR 开放题22.你了解 ABR 吗?23.如果要判断用户是“画质敏感型”还是“流畅度敏感型”,你会在端上采集哪些特征?24.你会如何结合设备信息、网络状态、历史行为来设计直播画质 / 流畅度策略?25.端智能场景里,你是否接触过模型推理链路?六、AI 投资分析系统 / Multi-Agent26.介绍一下你的多 Agent 投资分析系统。27.主控 Agent、数据 Agent、新闻 Agent、知识库 Agent、分析 Agent 分别负责什么?28.多 Agent 之间的数据和上下文是怎么流转的?29.相比单 Agent,多 Agent 架构在上下文管理、幻觉控制和问题排查上有什么优势?30.多 Agent 架构会带来哪些复杂度和维护成本?31.真实金融行情数据是如何通过 API 接入系统的?七、Skill / 智能日志分析开放题32.你有没有自己写过 skill?平时如何使用 skill?33.如果要做一个直播播放日志智能分析工具,你会设计成 Agent 还是 Skill?为什么?34.如果有历史文档和代码库说明日志含义,你会如何构建知识库或 RAG?35.用户反馈某个视频播放卡顿时,如何定位、筛选并分析对应播放日志?36.日志分析系统里,工具调用、RAG、意图识别、日志筛选、错误码解释分别怎么设计?37.你会选择 ReAct、Plan-and-Execute,还是其他框架来实现这个日志分析系统?八、计算机网络 / 拥塞控制38.你了解拥塞控制吗?它主要解决什么问题?39.拥塞窗口是如何变化的?40.慢启动、拥塞避免、丢包后的窗口调整分别是怎么回事?九、C++ 基础 / 多态41.说一下 C++ 的多态特性。42.静态多态和动态多态分别是什么?43.动态多态如何通过继承、虚函数、虚函数表实现?十、Git 基础44.你实习开发中常用哪些 Git 指令?45.你平时如何创建分支、提交代码、推送代码、拉取更新?46.遇到 Git 冲突一般怎么处理?十一、算法题:两个有序数组中位数47.用 C++ 实现两个有序数组取中位数。48.先讲一下你的解题思路。49.暴力合并排序方案有什么可以优化的地方?50.既然两个数组本身有序,能否用双指针合并,避免再次 sort?51.有没有更高阶的二分解法?十二、实习时间与岗位匹配52.你本科期间是怎么安排时间去北京字节实习的?53.如果来小红书实习,最早什么时候可以到岗?54.你更倾向上海还是北京 base?55.你对“产品工程师”这个岗位定位的理解是什么?56.你对直播 SDK / 播放器 SDK / 端智能策略方向是否感兴趣?
点赞 评论 收藏
分享
04-30 07:55
东南大学 C++
一、自我介绍 / 经历亮点 / 岗位理解1.你先简单介绍一下你最近的经历,挑项目或实习里你觉得比较有亮点的讲一下。2.你们端智能这块的特征工程,主要是做什么的?3.你们这个项目本身负责采集吗,还是主要做中间处理?4.整个系统设计上大概是怎么分层的?5.业务方怎么定义和注册他们需要的特征?________________________________________二、设备特征缓存优化7.设备特征缓存优化这个需求,是 mentor 提给你的,还是你自己发现的?8.你当时接到这个任务后,是怎么思考和解决这个问题的?9.这个问题为什么会在高并发场景下耗时,它的根本背景是什么?10.你为什么会想到用缓存来解决?11.设备特征是会变化的,那你们怎么处理这个变化?12.为什么要分成 2 秒、10 秒、90 秒这几档?13.网络状态这种高频变化的特征,为什么是两秒?14.如果某些业务对实时性要求极高,比如 0.5 秒级别,你这套缓存怎么适配?15.如果同一个特征在不同业务、不同页面下要求不一样,你怎么设计整套特征供给和消费体系?16.如果不同业务场景对同一特征的刷新频率要求不同,你真正采集和计算时怎么定间隔?17.只要有人要求最短间隔,是不是整个系统都得按最短间隔跑?18.你觉得这个体系怎么设计,才能满足这种差异化需求?________________________________________三、特征计算触发 / 业务隔离 / 平台治理19.你们怎么限制特征计算不要无限制执行?20.如果一个事件可能触发很多脚本同时运行,你怎么管控?21.如果要限制并发执行任务数,那这些任务怎么选、谁优先?22.如果不同业务都说自己的任务重要,你作为平台怎么治理?23.这个治理过程以前可能靠人 review,那现在这个时代,你觉得还需要人一个个看吗?24.如果想用 AI 去替代人工 review 算法包,你觉得应该怎么做?25.如果让 AI 判断什么是合理、什么是不合理,你觉得提示词 / 规则里应该包含哪些信息?26.哪些特征或脚本应该被重点审查?高频的、复杂的、还是孤立的?为什么?________________________________________四、端上开发经验 / AI 在开发中的使用27.你在项目里面主要做的是 C++,对吧?28.除了 C++ 性能优化,你平时接的小需求是否也会涉及 iOS 和安卓两端?29.你们整个开发过程中会用 AI 吗?30.当时你们主要用哪些 AI 编码工具?31.你平时会用国产模型吗?________________________________________五、编程题:带 TTL 的 LRU Cache(允许 AI 辅助)### 题目要求实现一个线程安全的 **LRU + TTL** 本地缓存,请使用 Java 实现一个本地缓存类。### 代码框架```javapublic class LocalCache<K, V> {public LocalCache(int capacity) { }public void put(K key, V value, long ttlMillis) { }public V get(K key) { }public int size() { }}```### 功能要求缓存有最大容量 `capacity`;每个 key 支持 TTL(过期时间);get 时如果 key 已过期,返回 `null` 并删除;插入新 key 时缓存已满:- 先清理已过期元素;- 若仍满,则淘汰最近最少使用(LRU)的元素;如果 key 已存在,更新 value、过期时间,并刷新其 LRU 状态;需要保证线程安全;说明实现的时间复杂度,并说明如何避免因重复 put 导致过期堆中的旧记录误删新值。32.你先看一下这个题,先不用急着让 AI 出答案,你觉得它给出的方案方向有问题吗?33.它这里为什么要引入 version?34.version 是怎么避免旧数据误删新数据的?35.为什么这里要用小顶堆?36.小顶堆在这个设计里的作用是什么?37.如果堆里一共有 N 个元素,其中 K 个过期了,清理这 K 个元素的时间复杂度是多少?38.如果 K 很大,比如长时间没人请求、结果大量 key 一起过期,这个方案会有什么问题?39.在这种极端情况下,get / put 还能保持接近 O(1) 吗?40.如果你现在重新设计这个方案,你会怎么做?41.如果不用 AI,你最基础的思路是什么?42.纯 hash map + 双向链表 能不能先把 LRU 做出来?43.如果只在 value 里记录过期时间,会有什么局限?44.为什么说一旦加了小顶堆,就会把一致性和复杂度问题带进来?
点赞 评论 收藏
分享
分享我的面试经验
模拟面试
真实面试体验,快速补齐短板
应聘感受
暂无应聘感受
牛客网
牛客网在线编程
牛客网题解
牛客企业服务