我在亚马逊的面试经历






4.33/5 (7投票s)
我在亚马逊的面试经历
如果你正在等待面试通知,那你一定要看看这篇文章。在确保我的简历更新且符合标准后,我浏览了 Amazon 的招聘门户,仔细阅读了职位描述后,决定在去年年中申请。我几乎忘记了申请这件事,突然接到招聘人员的电话,询问我是否还在市场上。我积极地回复了招聘人员。他们将我的资料提交给招聘经理,并询问我面试的时间段。我收到了面试时间安排的回复。
我准备面试大约一周,复习了数据结构/算法方面的编程技能,并学习了 MIT 的开放课程。最终,在面试前我感到很平静,我复习过的所有知识都像梦一样在脑海中浮现。好了,故事就说到这里,我们来看看面试问题吧。
面试官非常友善地解释了他的职位以及公司的业务价值。他询问了我在团队中的角色和职责,以下是问题的顺序:
- 请告诉我你的职责和团队。
- 请告诉我你在团队中遇到的挑战以及你是如何处理的。
- 你为客户提出了哪些积极的想法,客户的反馈是什么? 随后,他问了我关于解决方案的问题。
- 请告诉我你做出艰难决定的情况以及它的影响。具体来说,他问的是关于延期完成任务的情况。
- 你是如何处理需求变更的,以及它对团队有什么影响?
- 你是如何管理团队中的冲突的?
我尽心尽力地回答了这些问题。我一直赞扬团队,这是事实。嘿,不要抱怨管理层。之后,他让我打开 http://collabedit.com 进行编程。他开始写问题描述。以下是问题描述:为软件包安装器的依赖关系列表创建一个算法。
我看了图表,想到了使用无向图的好主意。他问我为什么使用无向图,我思考了一会儿,决定使用有向图。因为没有反向依赖关系,例如,core 不依赖于 Apache,所以总是单向的。他让我写程序,我开始创建一个图类。以下是我提供的解决方案,我将用伪代码写出来。
- 创建了一个名为“
graph
”的类,该类包含一个int
列表、一个string
列表和一个用于存储最大顶点数的变量。整数列表具有string
列表中string
的索引,例如string
“Root Package
” 具有索引 “0
”。 - 一个函数用于遍历图并更新布尔列表中是否已访问。我选择了深度优先算法进行迭代。
- 在
Public
规范中,我添加了构造函数、添加边函数和获取列表函数。
我在电话中没有沉默,而是不断地告诉他我的想法,只是为了让他参与到对话中。你可能会想为什么要有顶点列表,我会给你一个列表的图形表示。
这个列表有路径可以追溯到父节点,因为他让我检查是否存在循环。无论如何,编码进行得很顺利,他说很好。也许你对这个问题有更好的想法,但这是我在面试期间想到的。
代码可以在我的 github 页面上找到。