面灵AI

字节跳动-国际支付 暑期实习 面经

时间
2026-03
来源
牛客网

《面试题目》

  1. 我看到你有一个项目经理是铁路票务系统,对吧?对,然后这个是你们学校的项目吗?
  2. 责任链模式是怎样的?
  3. 责任链模式的特征是什么?
  4. 除了这个,你还了解其他的设计模式吗?
  5. 讲一下单例模式,它的好处是什么?
  6. 单例模式有两种加载方式,讲一下
  7. 你还了解其他的设计模式吗?
  8. 你有了解过PostgreSQL这个数据库吗?
  9. PostgreSQL相对于MySQL的优势是什么?
  10. 底层的实现方案有没有看过?
  11. 讲一下实习项目吧,我看你个人产出这一块儿实现了一个黑白名单管理工具模块,这个是做什么的?
  12. 最近的100个玩家是怎么计算出来的?
  13. 讲一下你了解的排序算法
  14. 选择排序了解吗?
  15. OK假如这样的一个场景,我在100万的数据当中,我要找到前十位,用什么排序比较好呢?
  16. 快速选择的时间复杂度是多少?
  17. 100条数据当中我要选第N个数据,这种是用哪种方式比较好?
  18. OK, 你是计算机本科生对吧?学哪些课程?DB学过吗?
  19. 学过数据结构对吧,讲一下Dijkstra算法
  20. 他能解决什么问题?
  21. 我们聊一下操作系统的相关的内容。进程和线程有什么区别?
  22. 用户态线程和内核线程有什么区别?
  23. OK,进程大概有几个状态,以及他怎么切换的?
  24. 你刚才讲运行态,就从运行到阻塞是会经过什么样的条件?
  25. 进程之间的通信方式大概有哪些?
  26. 哪个通信方式最快呢?
  27. 讲一下进程调度的算法
  28. OK,先来先服务算法有什么缺点?
  29. 优先级调度算法讲一下
  30. OK, 这个60秒钟的等待时间可以调吗?
  31. 那假如说我有一个高并发的场景,开始频繁进行TCP的握手挥手,那他有可能会发生什么问题?
  32. 什么叫做长连接?
  33. HTTP了解吗?有哪些状态码呢?
  34. 我记得大学有门课是专门讲密码学,讲加密的,你有没有去选修?
  35. TCP粘包有了解过吗?
  36. 还有其他的方式区分粘包吗?
  37. 这个sequence代表什么含义?发送包的次序怎么解决粘包问题呢?
  38. DB学的MySQL对吧,MySQL有哪几种引擎?
  39. 数据库的隔离级别有哪几种?
  40. 我们默认级别为什么是可重复读?解决了什么问题?
  41. 什么叫做MVCC多版本并发控制,解决了什么问题?
  42. MySQL的锁有哪些?
  43. 临键锁是什么?能解决什么问题?
  44. MySQL的索引结构是怎么样的?
  45. OK,假如说有一个主键索引,它是属于聚簇索引还是非聚簇索引?
  46. 那么什么是非聚簇索引?
  47. OK,那么你怎么判断你写的SQL,是否用到了索引?
  48. 你了解最左索引匹配吗?
  49. 我看你是用C++写的,你是平时上学的时候写C++比较多吗?
  50. 那我们聊一下C++吧,类里面有构造函数,构造函数可以有多个吗?
  51. 讲一下重写和重载是什么?
  52. 那构造时候的顺序呢?
  53. 当前是否在北京?
  54. 介绍一下实习部门的总体业务情况
  55. 海外的业务有哪些?
  56. 你所在的部门,和游戏的业务是什么关系?
  57. 聊天邮件小组的业务是什么?
  58. 你做的这一块属于哪个功能?
  59. 你介绍一下,客服系统这边做了哪些功能开发?
  60. 这个线程是怎么提起来的?是有什么单独的服务吗?会不会挂掉?如果挂掉之后,解封会不会失败?这块怎么设计?
  61. 等一下,你按照我的思路来。你不是有个异步线程吗?这个线程挂掉,不是会影响你的黑名单解封吗?
  62. 兜底机制是怎么出现的?怎么设计的?
  63. 对,我现在问的是,你这个定时扫描的任务给挂了,你怎么处理?
  64. 刚才你提到使用了分布式锁,这个锁在哪?
  65. 就是你这里为什么会涉及到分布式的问题?把这个问题解释清楚,就是哪里需要去解决这个分布式的问题?
  66. 重复解封会带来什么问题吗?解封的用户是否那状态就是存在这个ZSet中是吗?
  67. 那么,ZSet中有,就代表没有解封,是这么理解吗?
  68. 介绍一下你们使用的数据库,是MySQL吗?
  69. 解释一下,你们Redis和MySQL中分别存了什么样的数据,有哪些业务语义?
  70. 需要保证的是,你的异步线程从ZSet中扫出数据之后,去MySQL修改数据是原子性的是吗?
  71. 你解封的时候,是更改用户状态表里的字段是吗?
  72. 直接实现原子操作,还要加分布式锁吗?这里我没太听明白。你们这个状态更新mysql这个State状态的时候,你们用的相当于 update 那个字段是吗?
  73. 诶,那我当前user已经处于解封状态了,我再将其 update 解封,这样好像也没什么问题诶,业务上会有什么影响吗?
  74. 诶,你们在海外也有业务的话,你们在海外有机房吗?
  75. 那么你负责的这套服务不属于海外业务是吗?
  76. 你这个AI Agent提效平台是为了解决什么问题?
  77. 这个和你的实习经历有关系吗?
  78. 那你们这个平台给谁用的?
  79. 最后上线了吗?你们有没有在用?
  80. 这个项目是另外开发的意思吗?
  81. 你们的workflow是自己编写的吗?还是借鉴网上成熟的方案?
  82. 来个系统设计题吧,设计一个短链接,请你讲一下要考虑的点?
  83. 你能想到这个服务都应该有什么功能吗?
  84. 你可以这样去想,首先你想一想这样一个短链接的服务,他需要具备什么功能?你再去想,要实现这个功能,需要什么样的技术能力?如果你自己想不出来需要具备什么功能,我可以把功能告诉你。然后基于我说的功能,再去想这个系统应该如何实现?这个可以吗?
  85. 行,那我问个问题。这个用户身份鉴权,怎么去实现这样一个功能?
  86. 你刚才提到了公钥、私钥,你讲的这是非对称加密吗?
  87. 你讲一下什么是对称加密?什么是非对称加密?
  88. 我再问几个别的问题吧,我看你绩点是不是挺高的?
  89. 你们学院的同学,目前大部分是什么样的想法?
  90. 你觉得你的这个实践的能力,在你周围的一些同学里面水平怎么样?
  91. 你参加过一些竞赛吗?比如说ACM之类的?
  92. 对于铁路票务系统,或者说秒杀系统,高并发怎么考虑?
  93. 如何抗住上千万的流量,对MySQL的高并发读操作?
  94. 高并发写呢?
  95. 怎么保证票不会卖多?
  96. 怎么保证数据库和缓存之间的一致性?
  97. 如何保证订单号不会重复?
  98. 卖票系统怎么防止黄牛?
  99. MySQL的慢查询,解决思路?
  100. 除了加索引,还有其他什么优化方案?
  101. 如何分表?按照什么维度分表?
  102. 还有什么优化SQL的思路?
  103. 联合索引中的最左匹配原则是什么意思?
  104. select * 会导致索引失效吗?
  105. 条件查询可以用到索引吗?
  106. A or B 的判断条件会用到索引吗?
  107. IN (…)的判断条件,会用到索引吗?
  108. 队列一般在什么场景下使用?
  109. 队列有哪些不同的类型?对应哪些使用的场景?
  110. 就你刚才介绍的这个部分,实际上是就是你在途游那块实习的一个部分是吧?
  111. OK行。我看见简历里面还有一些项目经历,像什么铁路票务系统,包括可编排Agent项目,这些项目的背景是什么?铁路票务系统是自己研究的吗?
  112. OKOK, 你大学的学校排名怎么样?
  113. 我们就针对你刚才说的这个,就是你刚才说的这个AI Agent 平台,它也是在途游实习做的一个项目是吧?
  114. 你刚才有提到MCP,对吧?那你给我完整的介绍一下MCP Client 和 MCP Server的交互机制
  115. 我看你是吉林大学,吉林大学他是在哪个城市?
  116. 你是在实习是吧?
  117. java这块的话,你是以自学为主吗?
  118. 行,我再问一个问题,就是你在本科期间,你碰到你做的哪一件事情是对你挑战最大或者说最满意的一件事情。区别其他人的,这个能不能举个例子?
  119. 你最后是怎么找出来的bug,就测试还是别的?
  120. OK, 那你们的你这个中国大学生计算机博弈大赛,这是什么时候比的?
  121. 就相当于说你最终是进入了全国比赛,并且一等奖是这意思是吧?
  122. OKOK你们一等奖有几个?
  123. 总共比赛是四十来支队伍,然后其中一等奖就十来支是吧?
  124. 那这个比赛你觉得它整个难易程度和那种什么挑战杯相比,它是什么样子的?
  125. 了解。我再问一个问题,就是你个人的。你个人是对于代码是比较喜欢,还是还是说就是你在这个过程中,你比较享受的是哪个部分?
  126. 我看了一下你的电脑里面有刷leetcode的,目前刷到多少级别的?

《参考解析》

  1. 介绍项目时应说明背景、个人分工、遇到的技术难点及解决方案,并量化收益(性能提升、成本下降等),便于面试官追问细节。
  2. 这类问题建议结合自己的项目经历和岗位要求准备具体案例,突出思考过程而非死记结论,面试官更看重解决问题的逻辑。
  3. 算法题先明确边界条件与不变量,再选择合适的数据结构;双指针、哈希表、递归/迭代是常见工具,目标是把复杂度控制在线性或对数级别。
  4. 进程是资源分配的基本单位,线程是CPU调度的基本单位,协程是用户态的轻量级调度单位,切换成本远低于线程,但需要语言/运行时支持。
  5. 回答AI相关问题时应结合具体项目说明如何设计Prompt、评估效果以及处理边界情况(如幻觉、超时),并展示对模型能力边界的清晰认知。