Databricks Software Engineer Onsite面试经验
面试详情
第一轮:Coding — Tic-Tac-Toe
第一道 coding 题让我实现一个可以玩的 Tic-Tac-Toe 游戏。游戏需要在每一步有效落子后自动在两个玩家之间切换。每一步之后,都要打印出当前的棋盘,让游戏状态可见。实现还需要在三种可能的结局下都能正确结束:
- 一方玩家获胜
- 另一方玩家获胜
- 棋盘走成平局
Follow-up 引入了一个 AI player,它要能自动走自己的棋,同时仍然遵守同样的游戏生命周期和结束行为。
第二轮:Coding — Track Creator Rewards with Sponsors
第二轮 coding 考的是 Track Creator Rewards with Sponsors 这道题。题目是根据 sponsorship 关系来追踪 creator 的奖励。Follow-up 扩展了原来的要求,让间接的 sponsorship 关系也计入计算,而不是只考虑直接的 sponsor。
第三轮:System Design — Chat System
System design 这一轮让我设计一个 chat system。讨论主要集中在三个方面:
- API 设计
- 数据库 schema 和数据建模
- 基本的端到端聊天流程
面试官没怎么往大规模、高扩展性方向追问。这一轮更关注核心的 API、持久化模型和消息流程是否结构清晰。