SDE 2 的亚马逊面试体验
第一轮:DS
实施命中计数器。目标是在最后 5 分钟和 10 分钟内获得点击次数。重复命中也可能出现在特定时间实例。
GFG 链接:https://www.geeksforgeeks.org/design-a-hit-counter/
给定一个未排序的非负整数数组和一个总和值,找到元素总和等于给定总和的子数组。
GFG 链接:https://www.geeksforgeeks.org/find-subarray-with-given-sum/
这个问题被进一步扩展,使得元素也可以是负数,并且给定的总和也可以是负数。
关于我参与过的项目的一些问题。他问我有什么不满意但仍然投入生产的任务。您是如何与您的经理交谈并主动解决问题的?
第二轮:招聘经理
火车预订 LLD – 全面讨论所涉及的各种实体、属性以及您将如何为火车搜索结果提供服务。
询问我与任何团队成员的任何冲突以及我如何解决它。
向我询问了一些已发布到生产中并稍后进行修改的内容。
他向我询问了我从事的一些微服务,因为我在介绍中提到了它们。他让我解释我正在处理的一些服务的设计。
第三轮:设计
这次采访只问了一个设计问题。
送餐应用程序设计 - 讨论了简要 HLD,但主要是我必须制作和解释整个 LLD - 所涉及的实体、属性、各种流程的服务类,如搜索、订单、支付、跟踪订单等。
第 4 轮:设计 + DS
火种设计。他主要对 HLD 以及您将如何实现各种流程感兴趣。
DS 问题 1:在一个数组中求最大和,使得没有 2 个数字彼此相邻。
DS 问题 2:字符串S 中包含另一个字符串T 的所有字符的最小长度子字符串。
第五轮:DS
问了我从事的项目。还要求我解释我最近开发的一些东西。
给定一个像素矩阵(每个像素都有与之相关的颜色代码和亮度值),找到一个具有最大亮度的区域。区域是只有一种颜色的区域。
给定一个方法 deploy(a, b),它将项目 A 的所有提交从 1 部署到 a,并将项目 B 的所有提交从 1 部署到 b。如果所有提交(即 1-a 和 1-b)都没有错误,则 deploy(a, b) 给出真值。否则为假。我们得到 deploy(a, b) 失败并且只有 1 个错误提交。你将如何找到错误的提交。
尖端:
- 练习在纸上写代码。您需要编写所有 DS 问题的生产就绪且无错误的代码。
- 对于设计,关注概念而不是精确的设计解决方案。它将帮助您为任何类型的设计问题做好准备。
- 面试官高度关注招聘经理轮次中提出的行为问题。因此,请确保您事先为他们做好准备。
- 您还应该能够清楚地解释您在当前组织中完成的所有项目。
除此之外——自信,相信自己,一切顺利。