字节跳动 · 剪映 / CapCut 主框架

客户端开发一面面经

完整信息

39 条问法 · 30 道题

本篇目录

1.核对专业、年级、可实习时长。
2.看你做了一些项目,挑一个你在项目开发过程中遇到的觉得最难的问题,讲一下你是怎么一步步定位和解决的?
3.进程间通信(IPC)有哪些方式?
4.简历里写了 AI 相关实践,有用过 MCP吗?
5.知道 MCP 底层是通过哪种进程间通信方式 来调用工具或访问外部数据的吗?
6.平时使用 Cursor、PE和开发 Agent 时,有深入了解过整个 Agent 的底层架构或执行流程 吗?
7.回到刚才说的 IPC,共享内存和 Socket 分别适合用在什么业务场景?
8.从应用层到系统层,有了解或使用过 Native Buffer、DirectBuffer 或者 ByteBuffer 吗?
9.平时在 Android / Kotlin 开发中是怎么分配内存的?
10.现在有一张图片,把它加载转换成 Bitmap,里面有大量的像素数据,这些像素内容到底是存放在哪块内存上的?
11.Android 整体分哪几块内存区域?
12.了解 JNI 或者 C/C++ 吗?客户端调用底层 C++ 代码是怎么调的?
13.你之前用过第三方 SDK 的 .so 库,它底下对外暴露的是什么接口?
14.底层的 C++ 代码在运行时,它申请的内存是放在哪个区的?归在哪里管理?
15.为什么 Bitmap 像素放在 Native 层可以实现 Kotlin 层与 Native 层的快速共享访问?
16.什么是 缺页中断?
17.讲一下什么是 TCP?有哪些核心特性?
18.详细讲一下 TCP 的三次握手和四次挥手过程。
19.为什么建立连接需要三次握手,而不是两次?
20.为什么断开连接需要四次挥手?
21.IP地址前三个字节和最后一个字节分别代表什么意思?
22.IP 地址后面通常会跟一个 端口号(Port),什么叫端口?端口的作用是什么?
23.什么是 子网掩码?起什么作用?
24.假设你现在在家里连着 Wi-Fi 玩手机,在 App 里点击了一下“购买”按钮,服务端会响应并下发数据:请完整讲一下从你点击 App 按钮开始整个网络数据包的流转过程是怎么样的?
25.你的手机连的是家里 Wi-Fi,处于局域网内,当数据包从公网服务器返回时,它是怎么穿过公网找到你家的路由器,再从路由器精准发给你这部手机的?
26.数据包到了你的手机网卡之后,手机上跑着那么多应用,操作系统是怎么知道该把这个包丢给你的这个 App 程序的?
27.有了解过 WebSocket 和 SSE这两种连接协议吗?
28.Android 里用过 OkHttp 的拦截器,有深入了解过它里面的框架源码实现吗
29.简历里写了性能优化,讲一下 LRU 缓存是什么?你在项目里用它做了什么?
30.LRU 的底层是用什么数据结构实现的? 为什么这么设计?
31.你在项目里设置的 LRU 缓存最大上限 是怎么定的?依据是什么?每个缓存对象大概占多大内存?
32.假设在一个无限滑动的 RecyclerView 图片列表 场景里,不仅有 View 池化,也有图片的 LRU 缓存:如果用户不断往下滑,数据持续增长,且不同用户的手机设备内存大小完全不同,你的池化大小和缓存上限该怎么合理设定?
33.如果用户快速滑动列表,甚至当前 手机系统内存已经非常紧张(Low Memory) 了,而你的 LRU 缓存还在占着内存,这时候应该怎么设计动态释放与回收策略?
34.平时用过 Git 做代码管理吗?
35.讲一下 git rebase 的作用是什么?
36.什么时候用 git rebase,什么时候用 git merge?这两者的核心区别是什么?
37.询问学校成绩排名如何,数据结构、操作系统等专业课大概考多少分?
算法:反转链表(三分钟写出来了)
反问

部分八股没回答出来,过了二十四小时收到感谢信#实习面试记录#

本篇目录
  1. 01
  2. 02
    看你做了一些项目,挑一个你在项目开发过程中遇到的觉得最难的问题,讲一下你是怎么一步步定位和解决的?
  3. 03
  4. 04
  5. 05
  6. 06
    平时使用 Cursor、PE和开发 Agent 时,有深入了解过整个 Agent 的底层架构或执行流程 吗?
  7. 07
  8. 08
  9. 09
  10. 10
    现在有一张图片,把它加载转换成 Bitmap,里面有大量的像素数据,这些像素内容到底是存放在哪块内存上的?
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
    假设你现在在家里连着 Wi-Fi 玩手机,在 App 里点击了一下“购买”按钮,服务端会响应并下发数据:请完整讲一下从你点击 App 按钮开始整个网络数据包的流转过程是怎么样的?
  25. 25
    你的手机连的是家里 Wi-Fi,处于局域网内,当数据包从公网服务器返回时,它是怎么穿过公网找到你家的路由器,再从路由器精准发给你这部手机的?
  26. 26
    数据包到了你的手机网卡之后,手机上跑着那么多应用,操作系统是怎么知道该把这个包丢给你的这个 App 程序的?
  27. 27
  28. 28
    Android 里用过 OkHttp 的拦截器,有深入了解过它里面的框架源码实现吗
  29. 29
  30. 30
  31. 31
    你在项目里设置的 LRU 缓存最大上限 是怎么定的?依据是什么?每个缓存对象大概占多大内存?
  32. 32
    假设在一个无限滑动的 RecyclerView 图片列表 场景里,不仅有 View 池化,也有图片的 LRU 缓存:如果用户不断往下滑,数据持续增长,且不同用户的手机设备内存大小完全不同,你的池化大小和缓存上限该怎么合理设定?
  33. 33
    如果用户快速滑动列表,甚至当前 手机系统内存已经非常紧张(Low Memory) 了,而你的 LRU 缓存还在占着内存,这时候应该怎么设计动态释放与回收策略?
  34. 34
  35. 35
  36. 36
  37. 37
    询问学校成绩排名如何,数据结构、操作系统等专业课大概考多少分?
  38. 38
  39. 39

相关公司