四年前端亚马逊面试经验【过程很完美】
关注公众号 前端人,回复“加群”
添加无广告优质学习群
是个什么情况
大约几个月前,当我有机会在亚马逊接受采访时,我正在寻找一份工作。当我开始进行在线研究时(或者像其他人说的那样进行谷歌搜索),我发现前端面试的文章减少了,虚拟过程也几乎没有。因此,面试过程结束后,我想到了写下自己在亚马逊的经历的文章。
希望很多人将从中受益!
即使您不是前端/ UI开发人员,也请务必看一下,因为前端和后端工程师都需要执行很多流程。
这是一篇详细的文章,从头到尾深入了整个过程。我将介绍整个流程,在线工具,访谈轮次(包括问题摘要)及其时间表,并将随附Amazon提供的相关文档。因此,无需进一步等待,让我们开始吧。
关于我的简短摘要
总经验:4年 相关前端经验:3年 核心专长:Javascript(ReactJs + Redux和React生态系统中的其他相关库),HTML,CSS,NodeJs 到现在为止工作的公司:Practo和Goomo
角色-前端工程师II(FE2)
我面试的角色是一个Frontend Engineer II (FE2)角色(JD附在底部)。现在,即使在前端开发中,Amazon确实具有多种角色。有一个Web开发工程师(WDE)角色,另一种是前端工程师(FE)角色。根据访调员,与WDE相比,FE在职责和工作方面的作用更高。因此,即使对于同一级别(例如,FE2,WDE2);FE2将比WDE2承担更多的责任和薪水。
简历筛选
请注意,亚马逊是一家非常大的公司,有时,它需要很多时间才能完成流程。对我来说过程相对较长。从申请到最终的选择/拒绝,整个过程大约花了3个月。
入围名单
我的个人资料来自第三方招聘公司CareerNet Technologies。来自Careernet的Kiran及其团队在整个过程中提供了很多帮助。我过去经常从他们那里得到及时的更新。与面试,入围有关的所有信息均已正确传达。我的简历在2020年3月的上周提交,花了几周时间才入围下一轮。
轮数
总共进行了6轮(包括一轮筛选)。所有的回合都是虚拟完成的。大多数回合都排定为1小时回合(但就我而言,很少延至2小时)。
视频通话面试
因此,现在进行采访的方式将与过去在现场进行的方式大不相同。这次是通过视频通话进行的,我以前在面试前几天收到邮件。它包含聊天链接,在线编辑器以及白板工具。邮件中还包含其他各种链接,供我阅读和了解公司,面试技巧和准备文档等。
时间线
我于2020年2月中旬开始寻找工作,并开始通过推荐以及第三方招聘公司来申请亚马逊。
这也是各个回合的时间表。据我所知,这可能因要求而异。面试是在我方便的时候进行的,甚至有些面试是在周六进行的,因为我的工作日很忙。因此,亚马逊非常灵活。
简历已提交 2020年3月的第一周 筛选回合 2020年4月17日 第1轮 2020年6月12日 第二回合 2020年6月12日 第三回合 2020年6月13日 第四回合 2020年6月15日 第五回合 2020年6月18日 第六回合 2020年6月18日 结果 2020年6月23日
我没想到这个过程会花那么长时间。因此,在筛选工作的某个地方,我已经加入了另一家公司。但是,当面试电话到来时,我只是想进行面试,以获得一种对将来有帮助的经验。
面试回合
大约有6轮次。问题主要限于html / css / javascript和基本原理。没有询问特定于框架的问题。
简要总结一下采访轮次:
筛选:
要求遵循所有良好实践习惯编写一个导航菜单栏(html / css / javascript)。然后,我提出了许多关于解决方案的反问。本轮仅是聊天。有一个在线编辑器,我可以在其中编写代码,还有一个聊天窗口,可以在其中键入文字并与访问者进行互动。那里没有音频/视频反馈。
第1轮:
此轮是开发经验 /算法和用户界面的组合。要求设计一个具有良好缓存机制(浏览器侧缓存)的搜索栏(使用类似于Trie字典树的数据结构)。然后还有其他一些与Java数组有关的问题。
第2轮:
纯数据结构和算法轮。提出了一个问题,以找到树中2个节点的最低共同祖先。与面试官讨论了多种方法。然后要求他们提出一种适用的解决方案,该解决方案具有最佳的时间和空间复杂度,可覆盖边缘情况。
第3轮:
这轮考验的是团队适应能力/领导力方面的。有人问了很多关于“告诉我您做某事的时间”模式的问题。
第4轮:
我被要求设计亚马逊搜索页面。用户应该能够搜索并查看结果。主要针对如何设计UI组件,如何设计API,要使用哪种数据结构。如何进行优化/缓存等,以及如何进行更多处理。这回合大约进行了2个小时。此回合涉及很多流程图(并且由于时间限制,面试官要求我提交面试后解决方案的流程图,主要考察的是解决问题的思路)。
第5轮:
被要求为以下问题编写优化的解决方案:
给定一个数组,找到所有具有最佳时间和空间复杂度的数字对,它们加起来等于n。 编写JavaScript代码以深度克隆对象。 创建一个半径为200px的圆,中间带有一些文本。
第6轮:
这是一个混杂的问题。它涉及2-3个问题,例如“告诉我您与团队伙伴之间发生冲突的时间以及您如何解决”。然后有一个算法相关的问题,即为一组库找到正确的执行顺序,其中某些库依赖于其他库,因此我应该为该库编写代码。
在几乎所有回合中,预期的解决方案都是涵盖所有边缘情况和最佳实践的完美解决方案。关于为什么某些方法更好,为什么这样做或如何改进的讨论很多。这就是为什么有时难以进行面试的原因。
结果
我的个人资料没有入围。这是他们的人力资源团队发送的邮件。
发布此邮件,人力资源部花了大约10天时间才能获得详细的反馈。主要是觉得我在数据结构和算法的实现上,他们认为我需要学习更多,HR要求我在几个月后重新申请。
另外,这里需要注意的有趣一点是,在面试过程中,如果候选人不适合当前的职位,亚马逊也会尝试在其他各种职位之间移动简历,这对他们而言是一件好事。因此,他们自己将推荐其他职位,并会改变面试的过程。
鬼哥有话说
总体而言,这是一次不错的面试经历。学会了很多东西,整个面试流程非常的有参考和学习性,大家可以自己也尝试性回答下。
原文地址:dev.to/sunil12738/amazon-virtual-interview-experience-frontend-engineer-ii-284c
1.如果看到这里,说明你喜欢这篇文章,请 转发
、点赞、
在看
2.关注公众号前端人,回复资料包
领取我整理的前端进阶资料包
3.回复加群
,加入前端进阶群,和小伙伴一起学习讨论!