百度提前批后端一面 —— 亚历山大,特批拿下

这几篇志颜学长想聊聊当时百度一面的感受。25 届校招,加了总监面一共四场技术面,没有 HR 面,因为是双非,非目标院校。最终是走了特批流程才拿下的 offer。第一面强度直接拉满。说实话,当时压力挺大,毕竟是提前批的第一批,准备还没特别充分,上来就围绕我做的素材推送系统深挖,特别是 "如何保证不重发、不多发、不漏发" 这个问题,前后追问了两轮。后面还问了很多 Go 底层的东西,比如 map 的实现、sync.Map 的锁机制、go run 的编译流程…… 问得特别细。 我面完开玩笑说:"大佬,您太强了,压力有点大。" 面试官也笑着回我:"没有啦,就是想多了解一下候选人,后面定级也要参考嘛。" 整体氛围还算轻松,但内容真的不轻。这场面试也让我意识到:你以为准备得差不多了,其实还有很多盲区;你以为理解得还行,其实被一追问就原形毕露了。真正有深度的项目,是你能从设计、性能、异常、底层各个角度都讲得明明白白。面试结束不是终点,而是暴露问题、快速成长的起点。这次我虽然答得不完美,但收获很大。后续能拿下 offer,也算是幸运+积累的双重结果。感恩那位面试官,也感谢当时没放弃的自己。下面是一面的面经。 🧱 一、项目与工程实践相关问题滴广重1、请挑一个你认为最有技术深度的项目讲讲。2、为什么要重构?原系统哪里"难用"?分析老系统时是如何排查问题的?3、新架构中对 "下载素材重复"、"并发控制"、"diff任务积压" 等问题具体做了哪些优化?4、并发控制是怎么做的?如何动态调整任务数量与资源负载?5、diff任务的 "重复推送" 是怎么出现的?你怎么设计逻辑防止这种情况?6、你提到 "推送效率提升20倍",请问这个收益是如何统计出来的?是精确对比还是估算?7、系统一小时内最大推送吞吐量是多少?是否能支撑 100 万消息/小时?8、推送视频时是否为推二进制?为啥不用 CDN 地址?9、多媒体渠道(百度、腾讯等)上传素材时,如何保证不重发、不多发、不漏发?10、单次 API 调用时如何规避漏发(网络异常、DNS失败、连接超时)?RPC 层面能做什么?🧠 二、分布式系统与中间件机制1、Redis 使用中提到了 SET NX,请问你如何管理这个锁的生命周期?2、如果锁过期了还在执行推送,会不会出现 "重复推送"?下游如何处理这种重推?3、Redis 中用过 Hash 吗?了解常用命令吗?(如 HSET、HGET)4、Redis 的 Hash 底层结构是怎样的?5、Redis 的淘汰策略(如 LRU)你了解哪些? 🧩 三、可观测性与告警处理逻辑(夜莺监控相关)侧重探讨你做的告警分发机1、你在夜莺监控中参与了哪些功能?2、告警如何保证 "不多发"?是否存在 "同一事件多个实例重复告警" 的问题?3、多实例部署时,如何确保内存中的事件处理不重复触发告警?🧬 四、Go语言底层知识与实现原理1、你说看过 Go 源码,请描述从 go run main.go 开始,程序启动都经历了哪些阶段?2、哪些逻辑是编译期完成的?哪些是在运行时执行?3、Go 中的 map 底层结构是什么?如何解决哈希冲突?topHash 的作用是什么?4、Go 的 sync.Map 和普通 map 有什么区别?适用什么场景?5、sync.Map 的锁粒度是什么?锁的是整个 map 还是某个部分?6、sync.Map 中的 readMap / dirtyMap 是如何切换的?"misses" 指标怎么用?🧮 五、算法题与代码能力1、请用 Go 写一个合并两个有序链表的函数。2、请用 Go 写一个求二叉树左视图的函数。写完后问:还有更优解吗?是否可以用 DFS 前序遍历? 六、反问环节问了两个问题:1、这个岗位后续的面试流程是怎样的?2、团队主要做哪方面的内容?

#面试问题记录##提前批第一面##牛客创作赏金赛##秋招##百度#
全部评论
分享一个自己做的GitHub面试题整理项目 0voice/Campus_recruitment_interview_questions,积德积德,已经200stars了,许愿自己和大家都能秋招过面,一起加油!
点赞 回复 分享
发布于 今天 15:36 湖南
百度哪儿来的目标院校
点赞 回复 分享
发布于 今天 14:58 北京
真遇到大佬了
点赞 回复 分享
发布于 今天 11:50 河南
哥们,你真是耐面王
点赞 回复 分享
发布于 今天 11:49 陕西
一面的面经,关注我后续会逐渐更新几十次大厂面试的面经!!!
点赞 回复 分享
发布于 今天 10:56 贵州

相关推荐

评论
4
6
分享

创作者周榜

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