Question Study

Coinbase 面试题专题

本地面经库有 40 条来源 URL 去重后的记录,其中 39 条有正文;目前整理出 36 道代表练习题,其中 36 道已完成独立深文。题目清单仍在逐帖核对和补充。

Reading Guide

如何使用这份题目清单

题目根据面经方向重新表述,其中可能包含站内攻略建议的训练题;它们不是公司的官方题库,也不保证下一场面试重复出现。

先分岗位

Coinbase 的不同岗位和团队可能考不同内容。先核对 JD 与面试邀请,再选对应题型。

合并同题变体

相同核心考点只保留一条,后续的附加约束放在原题里练,避免把同一道题当成多道题刷。

练习顺序

先口述输入、输出和边界,再写核心方案;最后解释复杂度、失败路径和面试官可能追加的约束。

Deduplicated Question Map

按考点去重的代表题

同一题的追加条件合并在一条里。题目清单用于确定训练范围;具体流程和准备优先级见公司攻略。

LLD / Crypto Orders · 01

实现 crypto order 的 place/pause/resume/cancel/complete 与 live order 时间排序

实现 crypto order 的 place/pause/resume/cancel/complete 与 live order 时间排序;追问 userId、按用户取消所有订单及按用户分流。

查看上方解题路线 ↑

阅读这道题的独立深文 →
Event Processing · 02

消费 Kafka NEW/FILLED 消息更新订单状态

消费 Kafka NEW/FILLED 消息更新订单状态;未填单允许 CANCEL,讨论重复消息、超量成交与查询状态。

解题切入:Kafka NEW/FILLED 题按累计 filledQty 与 totalQty 判 NEW/IN_PROGRESS/COMPLETED;无 fill 时才允许 CANCEL,重复消息需要可用的 event ID 才能可靠去重。

阅读这道题的独立深文 →
Query / Pagination · 03

按时间、用户、币种筛交易历史,用 (timestamp,id) cursor 解决同时间戳分页

按时间、用户、币种筛交易历史,用 (timestamp,id) cursor 解决同时间戳分页;追问 amount 排序与索引。

解题切入:transaction history 先按 filter 固定结果,再用 (timestamp,id) 排序与 cursor;amount 排序要有自己的排序键和匹配索引,不能复用时间 cursor。

阅读这道题的独立深文 →
Dynamic Programming · 04

交易有 id、size、fee,区块容量 100,选择交易使 fee 最大

交易有 id、size、fee,区块容量 100,选择交易使 fee 最大;解释 0-1 背包与 fee/size 贪心的差异。

解题切入:无依赖、容量 100 的最大手续费是 0-1 背包;按 fee/size 贪心只是可讨论的生产启发式,不能保证全局最大。

阅读这道题的独立深文 →
System Design / Prices · 05

设计多外部来源的 crypto 最新价格展示

设计多外部来源的 crypto 最新价格展示:归一化、实时推送、陈旧价格、订阅扩展与客户端重连。

解题切入:多来源实时价格需定义每个 symbol 的来源优先级、时间戳与陈旧阈值;服务端推送和断线恢复要防止旧价格覆盖新价格。

阅读这道题的独立深文 →
OA / Banking · 06

实现账户、转账和支出排行

实现账户、转账和支出排行;加入定时付款取消、账户合并及按历史时间查询余额,明确 pending payment 和旧账户的保留策略。

解题切入:Bank OA 把 pending payment 的触发放在每个操作前的统一入口;合并账户后仍要保留旧 ID 的历史余额快照或事件,不能简单删除。

阅读这道题的独立深文 →
OA / Cloud Storage · 07

实现 add/copy file、用户 owner/quota

实现 add/copy file、用户 owner/quota;修改容量超限时按文件大小删到满足,再讨论 compress/decompress 文件名与尺寸。

解题切入:Cloud storage 的容量修改是按最大文件依次删除直到不超额;同大小 tie-break 要看原题契约,compress/decompress 需同时校验 owner 与目标名冲突。

阅读这道题的独立深文 →
OA / Temporal KV · 08

带递增时间戳的 KV

带递增时间戳的 KV:set/get/delete、条件覆盖、按 key 前缀扫描、历史时刻读取与 TTL,区分 action time 和 query time。

解题切入:时序 KV 的 action timestamp 与 history query timestamp 是两个概念;TTL 是历史版本的有效区间,条件覆盖/删除要先看操作当时是否存活。

阅读这道题的独立深文 →
OA / Recipe Manager · 09

实现 recipe CRUD、大小写不敏感搜索与排序、用户、版本历史和 rollback

实现 recipe CRUD、大小写不敏感搜索与排序、用户、版本历史和 rollback;先定义 version ID 与回滚后的新版本。

解题切入:Recipe Manager 版本历史应为每次成功变更记录不可变快照或事件;rollback 不能用浅引用让旧版本随当前对象变化。

阅读这道题的独立深文 →
OA / Task Manager · 10

实现 task priority 列表、按子串过滤、user quota 与 TTL 多对多分配,再按最早 start 完成同 ID 的活跃任务

实现 task priority 列表、按子串过滤、user quota 与 TTL 多对多分配,再按最早 start 完成同 ID 的活跃任务。

解题切入:Task Manager 的同一 task 可分配给多个用户、同用户也可有多个 assignment;TTL 到期边界与同 ID 最早 start 必须作用在 assignment 而非 task 模板。

阅读这道题的独立深文 →
Frontend OA · 11

React blog posts 四层

React blog posts 四层:本地 JSON 展示、textarea 发布、API 获取 post/作者/当前用户、点赞排序和当前用户删除。

解题切入:Blog posts 前端要区分本地 state 与 API 源、post 作者 ID 与当前用户 ID;点赞并列按最近获赞排序需要显式时间或事件序号。

阅读这道题的独立深文 →
MLE Metrics · 12

从 TP/FP/FN/TN 计算 Recall 与 FPR,并判断同时满足两个阈值的分类器

从 TP/FP/FN/TN 计算 Recall 与 FPR,并判断同时满足两个阈值的分类器;说明分母为 0 和阈值变化。

解题切入:Recall=TP/(TP+FN),FPR=FP/(FP+TN);阈值题先确认 positive class、分母和比较符号,再核每个选项。

阅读这道题的独立深文 →
MLE Fundamentals · 13

写出二分类 logistic regression 的交叉熵 loss,解释 sigmoid、logit、数值稳定和正则项

写出二分类 logistic regression 的交叉熵 loss,解释 sigmoid、logit、数值稳定和正则项。

解题切入:二分类 logistic loss 为 -y log p-(1-y)log(1-p),p=sigmoid(w·x+b);实现时用稳定的 logits 形式避免 log(0)。

阅读这道题的独立深文 →
MLE Bias–Variance · 14

哪些模型/训练调整可能提高 bias、降低 variance?结合正则化与模型容量说明 trade-off

哪些模型/训练调整可能提高 bias、降低 variance?结合正则化与模型容量说明 trade-off。

解题切入:提高 bias、降低 variance 的常见方法是加强正则或减小模型容量;要用验证集确认综合误差,不能说两者都无代价改善。

阅读这道题的独立深文 →
MLE Ensemble · 15

什么时候考虑 ensemble learning

什么时候考虑 ensemble learning:误差相关性、训练/服务成本、可解释性、数据泄漏与增益验证。

解题切入:ensemble 是否值得用取决于基模型误差差异、数据泄漏、推理延迟、成本与可解释性;用独立验证集量化增益。

阅读这道题的独立深文 →
MLE Dimensionality Reduction · 16

PCA 与 LDA 何时使用

PCA 与 LDA 何时使用:无监督保方差和有监督类间分离,讨论标签、预处理、维度上限与泄漏。

解题切入:PCA 不用标签、最大化投影方差;LDA 用标签寻求类间分离,类别数 C 时线性判别维度最多 C-1,预处理只在训练集拟合。

阅读这道题的独立深文 →
MLE Numerical · 17

按给定权重与输入手算两层神经网络输出

按给定权重与输入手算两层神经网络输出:先线性层与 ReLU,再线性层与 Sigmoid;说明矩阵维度和四位小数。

解题切入:两层网络计算依次核矩阵维度、第一层线性输出、ReLU、第二层 logit 与 Sigmoid;原帖缺权重,不能报原题最终数字。

阅读这道题的独立深文 →
Coding / Strings · 18

给字符串找最长连续相同字符及长度

给字符串找最长连续相同字符及长度;若并列,返回最右边的那段,并覆盖空串与段尾。

解题切入:最长连续字符扫描每段;并列取最右时同长度也更新答案,别只在严格大于时更新。

阅读这道题的独立深文 →
MLE Coding · 19

实现 bootstrap

实现 bootstrap:有放回抽 n 次构造每个训练样本,分别 fit 模型并聚合 predict;固定随机种子与避免数据泄漏。

解题切入:bootstrap 每轮从 n 条训练数据有放回抽 n 条,重新 fit 基模型;分类 predict 可按概率平均或投票,具体接口须核原题。

阅读这道题的独立深文 →
MLE Pair Programming · 20

用 messy data notebook 跑通一个分类模型

用 messy data notebook 跑通一个分类模型:先定义目标与切分,处理缺失和类别特征,建立简单基线并解释验证结果。

解题切入:messy data classification notebook 先做简单可跑的训练/验证闭环,预处理只 fit 训练集;缺失/类别处理和指标选择要跟标签及业务目标一致。

阅读这道题的独立深文 →
Coding / Log Processing · 21

解析日志字符串,按 thread ID 分组,并将每组日志按 timestamp 稳定排序

解析日志字符串,按 thread ID 分组,并将每组日志按 timestamp 稳定排序;先澄清输入行格式和坏行策略。

解题切入:线程日志先按给定格式解析 timestamp/thread ID,并保留输入序号处理同时间并列;分组后各组排序,坏行是拒绝还是隔离要确认。

阅读这道题的独立深文 →
Coding / NFT Attributes · 22

多组 NFT 属性生成所有组合,追问组合去重与每组属性不等概率时如何按权重随机采样

多组 NFT 属性生成所有组合,追问组合去重与每组属性不等概率时如何按权重随机采样。

解题切入:NFT 属性组合用笛卡尔积枚举;去重按规范化组合键,权重生成要先明确是独立类别采样还是不放回抽独特 NFT。

阅读这道题的独立深文 →
Frontend / Component · 23

按给定 mockup 做包含 input、button、validation message 的 card,并解释状态、表单校验、可访问性与扩展

按给定 mockup 做包含 input、button、validation message 的 card,并解释状态、表单校验、可访问性与扩展。

解题切入:Frontend card 题要先按现场 mockup/requirements 实现 input、button、validation message;没有原字段规格时只给通用状态机,不编表单规则。

阅读这道题的独立深文 →
Frontend System Design · 24

设计 signup form

设计 signup form:客户端校验、服务端提交、错误/重复请求处理与 A/B testing 指标、随机化单位和实验风险。

解题切入:Signup form 设计把前后端校验与幂等提交分开,A/B 测试需固定分流单位、主要转化指标和护栏指标,避免只报点击率。

阅读这道题的独立深文 →
Behavioral / Why Coinbase · 25

为什么选择 Coinbase、岗位如何匹配

为什么选择 Coinbase、岗位如何匹配:结合目标 JD 的实际任务与自己的项目证据,区分已核实信息和个人动机。

解题切入:Why Coinbase 要从当前目标岗位已核实的职责和本人项目证据出发;不要把公司名、市场传闻或未确认团队范围当答案。

阅读这道题的独立深文 →
Crypto Fundamentals · 26

解释什么是 cryptocurrency

解释什么是 cryptocurrency:公私钥、签名、账本/共识、托管与转账确认,并说清它不等于交易所账户余额。

解题切入:解释 crypto 时分清私钥签名、共享账本/共识、链上最终性与托管账户;加密货币不等于交易平台数据库里的一行余额。

阅读这道题的独立深文 →
Behavioral / Crypto Experience · 27

是否有加密货币经历

是否有加密货币经历:诚实区分个人使用、工程项目和没有直接经验,说明相关技能如何迁移。

解题切入:谈个人 crypto 经历按真实接触层次作答:使用、工程实现或尚无直接经验;没有经验也可讲可迁移的可靠性/安全/数据系统能力。

阅读这道题的独立深文 →
Behavioral / Project Deep Dive · 28

讲最具挑战、重要或自豪的项目

讲最具挑战、重要或自豪的项目:个人 ownership、技术难点、备选方案、影响与复盘,并准备 HM 追问。

解题切入:项目深挖按问题、约束、个人决定、技术实现、结果和复盘讲,最重要/最挑战/最自豪是同一项目证据的不同切面。

阅读这道题的独立深文 →
Behavioral / Conflict · 29

讲一次与同事或跨团队的 disagreement

讲一次与同事或跨团队的 disagreement:说明事实分歧、证据、共同决策与之后的关系,而非只说自己说服了别人。

解题切入:冲突题重在事实与决策机制,讲分歧双方目标、证据、试验或仲裁以及之后如何协作。

阅读这道题的独立深文 →
Behavioral / Prioritization · 30

多个任务同期限时如何排序并交付

多个任务同期限时如何排序并交付:明确影响、依赖、可切范围、沟通节点与最终验证。

解题切入:多任务 deadline 先列影响和依赖,协商最小可交付范围并及时暴露风险;不要以加班时长代替优先级决策。

阅读这道题的独立深文 →
Behavioral / Initiative · 31

主动提出改进并向 stakeholder 推进

主动提出改进并向 stakeholder 推进:用问题证据、备选方案、试点指标和风险控制解释如何争取支持。

解题切入:主动性题要说明如何发现问题、提出可测试点、争取 stakeholder 支持、应对反对意见并验证效果。

阅读这道题的独立深文 →
Behavioral / AI Workflow · 32

日常怎样使用 AI

日常怎样使用 AI:选真实工作例子,说明输入边界、人工审查、测试与效率/质量变化。

解题切入:AI 工作流回答需给真实任务、可共享数据范围、人工审查和独立测试;不能把生成代码未经理解就提交。

阅读这道题的独立深文 →
Behavioral / Launch Risk · 33

重要上线可能赶不上 deadline 时怎么办

重要上线可能赶不上 deadline 时怎么办:尽早报告、量化影响、缩范围/改里程碑、保护质量并复盘。

解题切入:重要上线可能失约时先报告可验证状态与风险,给范围/日期/人员备选,守住质量和回滚门槛。

阅读这道题的独立深文 →
Behavioral / Job Change · 34

为什么想离开当前工作

为什么想离开当前工作:讲真实的成长与职责诉求,和申请岗位形成一致叙事,避免未经证实的抱怨。

解题切入:离职动机讲真实未来需求与目标职责的对应,不把现职不满包装成未经核实的公司事实。

阅读这道题的独立深文 →
Behavioral / Level · 35

解释当前级别、晋升时点与项目级别

解释当前级别、晋升时点与项目级别:用责任范围和影响证据回应,区分岗位定级与项目是否 Tier 0。

解题切入:级别与晋升问题用当前职责、项目影响、评估周期和可核证成果作答;Tier 0 关键性不是项目价值的唯一指标。

阅读这道题的独立深文 →
Coding / In-Memory DB · 36

四层内存数据库 OA

四层内存数据库 OA:读写 data、scan、TTL、backup;在原帖接口未公开时明确训练契约,解释过期边界和备份快照。

解题切入:四层内存 DB 的 scan、TTL、backup 必须先确认字段与时间契约;训练版用半开过期区间和深拷贝快照,不能把未公开的 restore 规则当原题。

阅读这道题的独立深文 →

Next Step

把题目放回面试流程

题目只是准备的一部分;按公司攻略核对轮次、岗位差异和常见失分点。

查看 Coinbase 面试全攻略 →
✓已复制微信号!