客户端开发一面、二面、三面面经
完整信息
本篇目录
一面9.1 二面9.3 三面9.15#BIGO2027届技术专场校招#
一面:
时间
环节
主要内容
02:04–03:20
自我介绍
教育背景、C++ 自学、个人项目、快手客户端实习、博客
03:21–08:00
实习项目深挖
K 歌数字人/MV 生成、音频拼接、AEC、异步任务与轮询
08:03–09:24
技术栈确认
C++ 学习经历、Java/Android 实习、Android/iOS 分工
09:25–14:02
JVM 与内存
JVM 运行时内存区域、StackOverflowError、OutOfMemoryError
14:03–18:30
容器与哈希
HashMap/TreeMap、复杂度、哈希冲突、负载因子、选型
18:30–23:41
进程线程与原子性
进程/线程区别、共享计数器、atomic、CAS、ABA
23:41–28:12
线程池
工作流程、线程数、1000 个网络请求、I/O/CPU 密集型
28:13–32:24
网络请求链路
HTTPS/TLS、证书和密钥、协议分层、DNS 解析
32:31–34:24
Android 列表场景
快速滚动头像错位、View 复用/缓存
34:25–40:16
AI Coding
PRD 拆分、Plan/Design、代码生成、Review、测试、Skill、Harness Engineering
40:22–48:02
算法题一
单链表判环,要求 O(1) 额外空间;追问环长度
48:05–60:34
算法题二
合并已经按起点有序的区间
60:41–63:53
候选人提问
业务方向、音视频产品难点、新人挑战、现场反馈
算法题
- 单链表判环,O(1) 额外空间
- 合并有序区间
题目样例为 [[1,3],[2,6],[8,10],[15,18]],输出 [[1,6],[8,10],[15,18]]。面试官明确说明输入已经按区间起点有序,因此无需排序。
二面:
时间
环节
主要内容
03:37–04:38
自我介绍
教育背景、C++/Linux、个人项目、快手 Android 实习、博客
04:39–14:55
快手项目深挖
数字人 MV、分段录音、上传、AEC、异常状态、断点续传;IM 消息排序与卡片展示
15:21–17:38
RAG 项目
切片、向量化、多路召回、重排、置信度、流式输出、个人负责边界
17:46–20:02
经历与方向确认
更熟悉的技术栈、实习时长、音频相关经验
20:09–25:29
线程池设计
基本组成、固定/动态线程数、任务积压和资源上限
25:48–28:41
C++ 内存与智能指针
内存泄漏、shared_ptr、weak_ptr、循环引用
28:49–30:18
消息队列
Producer、Broker、交换机、队列、Consumer、ACK 和持久化
30:51–38:42
任务编排
依赖任务、串并行、线程安全、循环依赖;中段录音/转录不完整
38:56–41:43
锁与同步
互斥锁、读写锁、自旋锁、递归锁、条件变量
41:58–47:20
Android 基础
Activity/Fragment 生命周期、MVP/MVVM 等设计模式
47:25–53:18
AI 工作流与岗位交流
AI 辅助开发、Vibe Coding、测试流程;双端、成熟产品/孵化项目、AI 协作平台;面试官建议
无手撕
三面:
| 录屏约时 | 环节 | 可确认内容 |
|---|---|
| 26:00–27:35 | 背景与语言 | 专业、自学经历、C++ 熟悉度、快手 Android、Java/Kotlin。 |
| 27:35–30:14 | 数字人 MV 异步链路 | 客户端/服务端及算法职责,轮询间隔、异常/取消、任务状态。 |
| 30:17–35:16 | 状态机追问 | 状态机价值、多个订单隔离、加锁与独立实例的区别。 |
| 35:16–38:02 | RAG 知识库 | 数据源、PDF 入库、嵌入、检索融合、LLM 输出。 |
| 38:06–40:00 | 职业方向 | 客户端、后端、全栈及长期角色。 |
| 约 40:00–54:00 | 题目与中断 | 面试官给出差旅费用最小化题;发生设备卡顿/通话中断,之后继续。 |
| 约 54:00–62:00 | 贪心解释与编码 | 先以一个目的地作基准,再排序另一目的地价差;逐步写出 C++。 |
| 约 56:00 后 | AI 开放问题 | 音轨可辨面试官问对 AI 的看法;答复不够清晰,不据此细评。 |
手撕:
可见题面:n 位员工各有去北京和广州的费用,必须一半去北京、一半去广州,求最低总费用。候选人先口头讲贪心:假设全员去一个城市,将去另一个城市的费用差作为增量,按差值排序,选出 n/2 人。画面中 C++ 从不完整骨架逐步形成,最终可见的主要结构为:累加所有人的广州费用 priceG,把 priceB - priceG 放入数组,排序并把前 n/2 个差值加进总费用。这个核心思路与题目目标一致,复杂度为 O(n log n) 时间、O(n) 额外空间。
本篇目录
当前问题0128
- 01
自我介绍
- 02
K 歌数字人/MV 生成、音频拼接、AEC、异步任务与轮询
- 03
C++ 学习经历、Java/Android 实习、Android/iOS 分工
- 04
JVM 运行时内存区域、StackOverflowError、OutOfMemoryError
- 05
HashMap/TreeMap、复杂度、哈希冲突、负载因子、选型
- 06
进程/线程区别、共享计数器、atomic、CAS、ABA
- 07
工作流程、线程数、1000 个网络请求、I/O/CPU 密集型
- 08
HTTPS/TLS、证书和密钥、协议分层、DNS 解析
- 09
快速滚动头像错位、View 复用/缓存
- 10
PRD 拆分、Plan/Design、代码生成、Review、测试、Skill、Harness Engineering
- 11
单链表判环,要求 O(1) 额外空间;追问环长度
- 12
合并已经按起点有序的区间
- 13
业务方向、音视频产品难点、新人挑战、现场反馈
- 14
数字人 MV、分段录音、上传、AEC、异常状态、断点续传;IM 消息排序与卡片展示
- 15
切片、向量化、多路召回、重排、置信度、流式输出、个人负责边界
- 16
更熟悉的技术栈、实习时长、音频相关经验
- 17
基本组成、固定/动态线程数、任务积压和资源上限
- 18
内存泄漏、shared_ptr、weak_ptr、循环引用
- 19
Producer、Broker、交换机、队列、Consumer、ACK 和持久化
- 20
依赖任务、串并行、线程安全、循环依赖;中段录音/转录不完整
- 21
互斥锁、读写锁、自旋锁、递归锁、条件变量
- 22
Activity/Fragment 生命周期、MVP/MVVM 等设计模式
- 23
AI 辅助开发、Vibe Coding、测试流程;双端、成熟产品/孵化项目、AI 协作平台;面试官建议
- 24
客户端/服务端及算法职责,轮询间隔、异常/取消、任务状态。
- 25
状态机价值、多个订单隔离、加锁与独立实例的区别。
- 26
数据源、PDF 入库、嵌入、检索融合、LLM 输出。
- 27
客户端、后端、全栈及长期角色。
- 28
n 位员工各有去北京和广州的费用,必须一半去北京、一半去广州,求最低总费用。