字节跳动-国际支付 暑期实习 面经
- 时间
- 2026-03
- 来源
- 牛客网
《面试题目》
- 我看到你有一个项目经理是铁路票务系统,对吧?对,然后这个是你们学校的项目吗?
- 责任链模式是怎样的?
- 责任链模式的特征是什么?
- 除了这个,你还了解其他的设计模式吗?
- 讲一下单例模式,它的好处是什么?
- 单例模式有两种加载方式,讲一下
- 你还了解其他的设计模式吗?
- 你有了解过PostgreSQL这个数据库吗?
- PostgreSQL相对于MySQL的优势是什么?
- 底层的实现方案有没有看过?
- 讲一下实习项目吧,我看你个人产出这一块儿实现了一个黑白名单管理工具模块,这个是做什么的?
- 最近的100个玩家是怎么计算出来的?
- 讲一下你了解的排序算法
- 选择排序了解吗?
- OK假如这样的一个场景,我在100万的数据当中,我要找到前十位,用什么排序比较好呢?
- 快速选择的时间复杂度是多少?
- 100条数据当中我要选第N个数据,这种是用哪种方式比较好?
- OK, 你是计算机本科生对吧?学哪些课程?DB学过吗?
- 学过数据结构对吧,讲一下Dijkstra算法
- 他能解决什么问题?
- 我们聊一下操作系统的相关的内容。进程和线程有什么区别?
- 用户态线程和内核线程有什么区别?
- OK,进程大概有几个状态,以及他怎么切换的?
- 你刚才讲运行态,就从运行到阻塞是会经过什么样的条件?
- 进程之间的通信方式大概有哪些?
- 哪个通信方式最快呢?
- 讲一下进程调度的算法
- OK,先来先服务算法有什么缺点?
- 优先级调度算法讲一下
- OK, 这个60秒钟的等待时间可以调吗?
- 那假如说我有一个高并发的场景,开始频繁进行TCP的握手挥手,那他有可能会发生什么问题?
- 什么叫做长连接?
- HTTP了解吗?有哪些状态码呢?
- 我记得大学有门课是专门讲密码学,讲加密的,你有没有去选修?
- TCP粘包有了解过吗?
- 还有其他的方式区分粘包吗?
- 这个sequence代表什么含义?发送包的次序怎么解决粘包问题呢?
- DB学的MySQL对吧,MySQL有哪几种引擎?
- 数据库的隔离级别有哪几种?
- 我们默认级别为什么是可重复读?解决了什么问题?
- 什么叫做MVCC多版本并发控制,解决了什么问题?
- MySQL的锁有哪些?
- 临键锁是什么?能解决什么问题?
- MySQL的索引结构是怎么样的?
- OK,假如说有一个主键索引,它是属于聚簇索引还是非聚簇索引?
- 那么什么是非聚簇索引?
- OK,那么你怎么判断你写的SQL,是否用到了索引?
- 你了解最左索引匹配吗?
- 我看你是用C++写的,你是平时上学的时候写C++比较多吗?
- 那我们聊一下C++吧,类里面有构造函数,构造函数可以有多个吗?
- 讲一下重写和重载是什么?
- 那构造时候的顺序呢?
- 当前是否在北京?
- 介绍一下实习部门的总体业务情况
- 海外的业务有哪些?
- 你所在的部门,和游戏的业务是什么关系?
- 聊天邮件小组的业务是什么?
- 你做的这一块属于哪个功能?
- 你介绍一下,客服系统这边做了哪些功能开发?
- 这个线程是怎么提起来的?是有什么单独的服务吗?会不会挂掉?如果挂掉之后,解封会不会失败?这块怎么设计?
- 等一下,你按照我的思路来。你不是有个异步线程吗?这个线程挂掉,不是会影响你的黑名单解封吗?
- 兜底机制是怎么出现的?怎么设计的?
- 对,我现在问的是,你这个定时扫描的任务给挂了,你怎么处理?
- 刚才你提到使用了分布式锁,这个锁在哪?
- 就是你这里为什么会涉及到分布式的问题?把这个问题解释清楚,就是哪里需要去解决这个分布式的问题?
- 重复解封会带来什么问题吗?解封的用户是否那状态就是存在这个ZSet中是吗?
- 那么,ZSet中有,就代表没有解封,是这么理解吗?
- 介绍一下你们使用的数据库,是MySQL吗?
- 解释一下,你们Redis和MySQL中分别存了什么样的数据,有哪些业务语义?
- 需要保证的是,你的异步线程从ZSet中扫出数据之后,去MySQL修改数据是原子性的是吗?
- 你解封的时候,是更改用户状态表里的字段是吗?
- 直接实现原子操作,还要加分布式锁吗?这里我没太听明白。你们这个状态更新mysql这个State状态的时候,你们用的相当于 update 那个字段是吗?
- 诶,那我当前user已经处于解封状态了,我再将其 update 解封,这样好像也没什么问题诶,业务上会有什么影响吗?
- 诶,你们在海外也有业务的话,你们在海外有机房吗?
- 那么你负责的这套服务不属于海外业务是吗?
- 你这个AI Agent提效平台是为了解决什么问题?
- 这个和你的实习经历有关系吗?
- 那你们这个平台给谁用的?
- 最后上线了吗?你们有没有在用?
- 这个项目是另外开发的意思吗?
- 你们的workflow是自己编写的吗?还是借鉴网上成熟的方案?
- 来个系统设计题吧,设计一个短链接,请你讲一下要考虑的点?
- 你能想到这个服务都应该有什么功能吗?
- 你可以这样去想,首先你想一想这样一个短链接的服务,他需要具备什么功能?你再去想,要实现这个功能,需要什么样的技术能力?如果你自己想不出来需要具备什么功能,我可以把功能告诉你。然后基于我说的功能,再去想这个系统应该如何实现?这个可以吗?
- 行,那我问个问题。这个用户身份鉴权,怎么去实现这样一个功能?
- 你刚才提到了公钥、私钥,你讲的这是非对称加密吗?
- 你讲一下什么是对称加密?什么是非对称加密?
- 我再问几个别的问题吧,我看你绩点是不是挺高的?
- 你们学院的同学,目前大部分是什么样的想法?
- 你觉得你的这个实践的能力,在你周围的一些同学里面水平怎么样?
- 你参加过一些竞赛吗?比如说ACM之类的?
- 对于铁路票务系统,或者说秒杀系统,高并发怎么考虑?
- 如何抗住上千万的流量,对MySQL的高并发读操作?
- 高并发写呢?
- 怎么保证票不会卖多?
- 怎么保证数据库和缓存之间的一致性?
- 如何保证订单号不会重复?
- 卖票系统怎么防止黄牛?
- MySQL的慢查询,解决思路?
- 除了加索引,还有其他什么优化方案?
- 如何分表?按照什么维度分表?
- 还有什么优化SQL的思路?
- 联合索引中的最左匹配原则是什么意思?
- select * 会导致索引失效吗?
- 条件查询可以用到索引吗?
- A or B 的判断条件会用到索引吗?
- IN (…)的判断条件,会用到索引吗?
- 队列一般在什么场景下使用?
- 队列有哪些不同的类型?对应哪些使用的场景?
- 就你刚才介绍的这个部分,实际上是就是你在途游那块实习的一个部分是吧?
- OK行。我看见简历里面还有一些项目经历,像什么铁路票务系统,包括可编排Agent项目,这些项目的背景是什么?铁路票务系统是自己研究的吗?
- OKOK, 你大学的学校排名怎么样?
- 我们就针对你刚才说的这个,就是你刚才说的这个AI Agent 平台,它也是在途游实习做的一个项目是吧?
- 你刚才有提到MCP,对吧?那你给我完整的介绍一下MCP Client 和 MCP Server的交互机制
- 我看你是吉林大学,吉林大学他是在哪个城市?
- 你是在实习是吧?
- java这块的话,你是以自学为主吗?
- 行,我再问一个问题,就是你在本科期间,你碰到你做的哪一件事情是对你挑战最大或者说最满意的一件事情。区别其他人的,这个能不能举个例子?
- 你最后是怎么找出来的bug,就测试还是别的?
- OK, 那你们的你这个中国大学生计算机博弈大赛,这是什么时候比的?
- 就相当于说你最终是进入了全国比赛,并且一等奖是这意思是吧?
- OKOK你们一等奖有几个?
- 总共比赛是四十来支队伍,然后其中一等奖就十来支是吧?
- 那这个比赛你觉得它整个难易程度和那种什么挑战杯相比,它是什么样子的?
- 了解。我再问一个问题,就是你个人的。你个人是对于代码是比较喜欢,还是还是说就是你在这个过程中,你比较享受的是哪个部分?
- 我看了一下你的电脑里面有刷leetcode的,目前刷到多少级别的?
《参考解析》
- 介绍项目时应说明背景、个人分工、遇到的技术难点及解决方案,并量化收益(性能提升、成本下降等),便于面试官追问细节。
- 这类问题建议结合自己的项目经历和岗位要求准备具体案例,突出思考过程而非死记结论,面试官更看重解决问题的逻辑。
- 算法题先明确边界条件与不变量,再选择合适的数据结构;双指针、哈希表、递归/迭代是常见工具,目标是把复杂度控制在线性或对数级别。
- 进程是资源分配的基本单位,线程是CPU调度的基本单位,协程是用户态的轻量级调度单位,切换成本远低于线程,但需要语言/运行时支持。
- 回答AI相关问题时应结合具体项目说明如何设计Prompt、评估效果以及处理边界情况(如幻觉、超时),并展示对模型能力边界的清晰认知。