亚马逊面试经历一:
筛选轮次:
- 找出所有加起来为 0 的对
- 找到总和最接近(绝对值)到 0 但非 0 的所有对
- 找到总和最远(绝对)到 0 的所有对
设计回合:
- 一个初创网站有很多实时流量。我想查看过去 10 分钟内按点击次数排名前 20 位的用户的实时视图(每 1 分钟刷新一次)。完全分布式系统,我必须解决所有并发问题。
编码回合:
- 数组有4种模式:单调递增、单调递减、递增后递减、递减后递增。给定一个数组,相应地识别
- 给定数字数组,从每个大小为 k 的子数组中找到最大值。滑动窗口
结果:拒绝
亚马逊面试经历2:
设计回合:
- 设计一个规模从 100tps 到 1000tps 的博客网站。您将在 No-Sql 与 Sql 之间做出哪些设计选择并完整解释为什么?
- 在上述系统中,您如何根据用户每天关注的主题向用户发送通知?你如何向博客添加评论?
- 如何在使用一致散列进行负载平衡的实时系统中添加节点?
- 在 Sql 与 No-Sql 数据库中查找行的时间复杂度。需要深入解释原因。(如果有重复怎么办?)
- 当您想要扩展时,关系数据库系统到底有什么问题?
- 什么是弹性搜索?什么是动态模块?
亚马逊领导力原则
- 解决的最困难的技术挑战:深入详细说明挑战是什么,为什么需要解决它,有哪些方法,你选择了哪一个以及为什么。还有谁参与了,他们的贡献如何?花了多长时间开发
- 您遇到歧义的情况以及您如何解决它
- 您在当前工作中设计的任何系统示例展示了您的设计技能?
结果:拒绝