腾讯pcg QQ浏览器客户端日常实习

😅kpi面,拷问了15分钟的计网八股和设计模式就开始写题了

100%八股,简历上大半页的实习和项目你是一个字也不问啊

然后写了道lc easy

写完反问两个问题后面试官就直接就说今天就先这样了

3.11晚更新:流程已结束
全部评论
哥们面完立马挂,还说我底子好。。
点赞 回复 分享
发布于 2024-03-14 10:54 广东
被kpi了吧
点赞 回复 分享
发布于 2024-03-12 19:48 北京
麻了,我也是这个
点赞 回复 分享
发布于 2024-03-12 10:24 重庆
啥时候面的?
点赞 回复 分享
发布于 2024-03-11 20:17 湖北

相关推荐

03-30 20:53
东南大学 C++
一、自我介绍 / 岗位匹配 / 方向选择1.请做一下自我介绍。2.你之前主要投的是后台岗位,为什么后来转向客户端?3.你说自己和后台岗位匹配度不高,主要差在哪些方面?4.你对移动客户端开发岗位是怎么理解的?5.你为什么会考虑客户端 / SDK / AI 应用这些方向?二、实习项目整体理解:端侧特征平台做什么6.你在字节这段实习主要做了什么?7.你们这个 SDK 的定位是什么?是跨端的吗?8.你们这套东西更像 APM、数据采集,还是特征处理平台?9.你对这套业务在线上产品里的完整流程理解到什么程度?10.原始事件是怎么转成特征,并最终被业务方使用的?三、本地数据库 / SQL / 特征查询链路11.你们端上的数据是怎么存的?为什么用本地数据库?12.这个数据库用的是什么?它是普通数据库,还是有针对性能做特殊设计?13.你看到过哪些查询 / SQL 优化相关的内容?14.你做的 SQL 复用优化,本质上是在优化什么问题?四、设备特征缓存优化:设计、指标、并发问题15.你讲一下设备特征缓存优化这个需求的背景和方案。16.为什么会想到做 2s / 10s / 90s 这样的分层缓存?这些数值是怎么定的?17.你这个缓存是怎么检查过期、怎么更新的?18.这套缓存是你们第一次上线的吗?19.最终的优化收益是怎么测出来的?30%、Android 4.8%、iOS 2.5% 分别代表什么?20.你这里用到的智能指针和 concurrent hash map,线程安全和内存安全是怎么理解的?21.如果缓存瞬间失效,又来了很多并发请求,会不会出现类似缓存击穿的问题?你怎么处理?22.如果让你继续优化这套缓存,你觉得还能怎么做?五、特征 SQL 结果缓存 / 事件驱动失效 / TTL23.你说的特征 SQL 复用具体是怎么做的?24.所谓 SQL 签名化是什么意思,为什么要这么做?25.这个查询结果缓存的 key 和 value 分别是什么?26.查询结果缓存怎么判断是否还能复用?27.事件驱动失效机制具体是什么?为什么事件变了缓存就会失效?28.你这里有两个 TTL:设备特征缓存 TTL 和特征查询缓存 TTL,它们分别是怎么设计的?29.后期你提到不是直接删缓存,而是把最新结果插入缓存,这个思路具体是什么?30.这里有没有用队列或者别的方式维护事件变更?六、实习中的挑战 / 自动化测试 / MCP & Agent 生成用例31.这段实习里你遇到过最大的挑战是什么?32.这个需求是你一个人做的吗,还是 mentor 带着推进的?33.你提到自动化测试用例,这块具体做了什么?34.这些测试用例属于什么级别,是接口测试、单元测试,还是别的?35.你做的 MCP / Agent 自动补全测试用例,大致思路是什么?36.如果测试失败了,你们后续有没有自动分析、自动修复,还是主要人工处理?七、AI Coding:工具使用、代码占比、主要问题37.你现在 AI 用得多吗?平时会付费用哪些工具?38.你在项目里手写代码和 AI 生成代码的比例大概是多少?39.你主要用什么 AI coding 工具?40.你觉得 AI 写代码最大的优点和最大的问题分别是什么?41.如果 AI 生成的代码不符合你的预期,你一般怎么改进?八、多 Agent 项目:设计、评估、稳定性42.你这个 AI 投资分析系统整体是怎么设计的?43.多 Agent 的分工和整体执行流程是什么?44.你是一步步确认它生成的内容,还是一次性让它完成?45.你怎么判断一个 Agent 是否满足你的预期?46.Agent 和 Agent 之间通信的数据格式是谁定义的?47.多次运行的时候,Agent 之间输出的格式和结果能保持一致吗?48.如果模型不按你定义的格式输出,你会怎么优化?49.你这里 prompt、rule、skill 分别用在什么地方?九、上下文窗口 / 滑动窗口 / 记忆管理50.你高并发 AI 聊天系统里提到的“滑动窗口”具体是怎么做的?51.为什么要做这个滑动窗口?它解决了什么问题?52.这个窗口的 size、起点和终点是怎么定的?53.你怎么判断哪些上下文该保留,哪些该裁掉?54.你这个设计是不是严格来说不算真正的滑动窗口?55.如果让你重新设计这块上下文管理,你会怎么优化?十、C++ / 网络库 / 并发框架56.你这个高并发 AI 聊天系统里的网络库,是自己写的还是现成的?57.你给我讲一下这个网络框架的整体设计。58.epoll 在这里起到了什么作用?59.你的线程池是怎么设计的,为什么要动态扩容 / 缩容?60.你的网络库里,最核心的几个组件和职责分别是什么?十一、弱网排查 / 网络链路 / 协议优化61.如果用户反馈“很卡”,你怎么判断到底是不是弱网问题?62.如果线上只能看到网络日志,你会重点看哪些指标来排查?63.从输入网址到页面加载完成,整个网络链路里会经过哪些步骤?64.DNS、TCP 建连、资源下载这些环节分别可能出什么问题?65.如果 DNS 慢或者查不到,有什么优化思路?66.如果服务端响应慢或者 TCP 层有问题,你会怎么排查?67.对于弱网场景,有没有一些客户端侧的兜底优化手段?68.你了解哪些协议层面的优化,比如多路复用、QUIC 之类的吗?算法题:滑动窗口最大值面了一个半小时,面试官整体比较和蔼,不追问。转面客户端整体强度还是小了很多,不管了,现在能赚几年钱赚几年,有了AI以后哪个方向都是危机了,还是争取拿个好背书吧
点赞 评论 收藏
分享
一、自我介绍 / 项目1. 自我介绍2. 实习经历二、Java / 数据结构3. Java 进程之间怎么通信4. Java 线程池有了解吗5. 哈希表冲突怎么解决6. 红黑树结构7. 什么是红 / 黑色节点8. 除了 Java 这种“桶挂链表、过长后红黑树化”的方案,还有什么其他哈希冲突解决方案9. 拉链法是什么三、MySQL10. MySQL 引擎有哪些11. MyISAM 有了解吗12. MySQL 支持事务和外键吗13. 事务隔离级别有哪些14. 查询太慢怎么办15. 数据太多、查询太慢,几十亿条数据怎么优化16. 有了解过分表吗四、Redis17. Redis 有哪些常用数据结构18. ZSet 底层用的什么数据结构19. 讲一下跳表五、操作系统 / Linux / 网络20. 关于 OS 的问题21. Linux 基础指令、常用指令22. 怎么查进程、怎么看监听端口23. TCP 几次握手,在干什么24. HTTP 请求头里面有些什么六、算法 / 场景题25. 在一个 4G 的服务器上,有 1 亿个 int,要找前 1000 个最大的,怎么做26. 上面这题的时间复杂度是多少27. 1 亿个 int 大概占多少内存部门 QQ浏览器面试官很好,可我太菜了基础不行,要狠狠救火了谁懂面试的时候1亿个int算成40G
查看27道真题和解析
点赞 评论 收藏
分享
04-10 14:00
门头沟学院 Java
4/1 hr 电话约面的时候问了是否可以转 golang, 同意后约面面试官开头介绍技术栈为 golang面试体验很好, 问答之后基本都有正面回应, 但没怎么挑我的刺, 面试官可能不熟悉 JAVA 或根本就不想要我没录音可能有遗漏Q1 自我介绍Q2 你是怎么构建这个 agent 的 (组装链 + 执行链)Q3 在执行过程中出现问题怎么解决的, 采用了什么降级措施吗 (没有采用, 直接终止)Q4 你项目上说了 RAG, 你来介绍一下 RAG 在你的项目中是怎么使用的 (作为 advisor 角色, 在思考流程时通过知识库的形式组装到 prompt 中)Q5 你项目使用了 sse, 说说 sse 是什么与 websocket 有什么区别? (sse 单向构建简单)Q6 项目中你是怎么使用 sse 时? (在 trigger 层中配置了 sse 的三个参数, 使用 emitter)Q7 你刚才提到了 trigger 层这一 DDD 领域概念, 你知道 DDD 吗? (不太熟悉, 扯了一下分层, VO, 聚合根)Q8 你这个高并发本地服务平台有什么用? (黑马点评)Q8 你第二个项目高并发平台测试过多高并发度吗? (瞎扯了几百并发度, 实际还没测试)Q9 你说实现了 session 共享怎么实现的, redis 的 key 和 value 怎么储存的 (通过 redis 实现的, 将 session id 作为 key 存储到 redis 中, key 和 value 都是 string)Q10 你说能够无感 token 刷新与权限校验是怎么实现的 (这里我忘记了, 就扯 redis 存然后将 token 返回给前端浏览器)Q11 你说返回给前端浏览器, 然后我换一个浏览器是不是 token 就失效了? (是, 因为 token 是存在浏览器中的)Q12 你提到了 cache aside, 它是什么? (redis 未命中则取数据库, 还说了一下另外两种, 说了一种另一种忘记了)Q13 你说用延迟双删实现过期时间补偿, 什么是延迟双删 (先删 redis 后 sleep 再删 redis)Q14 这个 sleep 设置时间是怎么确定的? (由于前面扯了几百并发度, 就说在这个并发度下这个时间最合适)Q15 你提到了互斥锁, 聊聊你项目里的互斥锁? (首先是 setnx 与 ex 手工首先的互斥锁, 但没有过期续费和可重入功能所以还使用了 redisson)Q16 你提到了布隆过滤器? 说说它的原理 (本质是 hash 表 + 多个 hash 函数, 对应槽位为 0 一定不存在, 全为 1 不保证一定存在)Q17 怎么提高布隆过滤器的准确度 (根据准确度的计算公式, 多增加 hash 函数来实现)Q18 你使用了 lua 脚本, 它的原子性是怎么实现的 (这个一点都不知道, 直接回答了不知道)Q19 后面你提到了 rabbitmq 消息队列, 为什么使用它, 它有哪些使用场景 (聊了 redis 自带的三种消息队列各自的缺点, 但使用场景没讲清除)Q20 你使用了 hyperloglog, 你知道它的原理吗 (不熟悉, 回答不知道后面自己补充了 geo 的原理)Q21 你知道 zset 是怎么实现的吗? (skiplist + score / ziplist)手撕:Q1 最大子数组和 (秒后讲一下原理, dp)反问:Q1 组内业务是做什么的? (QQ 浏览器 + 推荐广告)Q2 是推荐算法吗? (不是, 就是根据已经为用户选好的广告来推送)反思:面试之前都是复习第一个 agent 项目和八股去了, 导致后面的点评很多都忘记了, 后面打算改一下简历, 去掉一些没有和业务相关的技术.还要修正一下自己的回答方式, 多从 业务 -> 技术的角度来思考回复
查看25道真题和解析
点赞 评论 收藏
分享
评论
点赞
4
分享

创作者周榜

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