沃尔玛 SDE-3 数据工程师 2022 面试经验
我通过LinkedIn的推荐申请。我接到了人力资源团队的电话,要求安排面试。
第 1 轮(在线编码回合):(在线编码回合被跳过,因为经理为他的团队推荐了我)。
第 2 轮(DS 算法:1 小时):这一轮以简要介绍开始,然后是 2 个编码问题。
- 下一个更大的元素
https://www.geeksforgeeks.org/next-greater-element/
首先我向他解释了我对这个问题的理解,然后为这个问题实施了蛮力代码,然后他询问了解决方案的复杂性并优化了解决方案。我能够做到这一点。 - 对几乎排序(或 K 排序)的数组进行排序
https://www.geeksforgeeks.org/nearly-sorted-algorithm/
与第一个问题相同的过程。不同的是,在这里我对优化代码的复杂性感到困惑。后来我也能解释了。
我们在 45 分钟内完成了上述 2 个问题,但面试时间为 1 小时,所以面试官询问了算法及其复杂性以及与排序相关的用例,如插入排序、归并排序、快速排序等。
第 3 轮(HLD + LLD:1 小时):面试官非常有礼貌,非常正式。
- 从简单的介绍开始,在此期间我告诉他我对数据工程的了解很少或根本没有。
- 面试从基本的核心Java问题开始,例如覆盖和重载方法。
- 之后,他要求我创建一个模型类(称为 Bike),其中包含几个他想应用比较器和可比较的属性,以及对代码的其他一些操作,例如创建 Bike 对象的 HashSet 和检查 2 个对象的相等性。还询问了外观设计模式,并要求我用用例为 Bike 类实现它(现在不完全记得了)。还询问了许多其他设计模式及其用例。
- 然后他开始询问与多线程和它的实现相关的问题,例如 Runnable、Thread 类以及所有线程和对象类方法及其用途。
- 然后他跳到执行器服务,询问执行器的类型,并要求用 Bike 类实现每个执行器。
- 然后我们讨论了 Future 和 callable,然后是它的实现。
第 1 轮和第 2 轮都发生在同一天(星期五)。晚上有点晚了,所以他们决定把 HM 轮换到下一个工作日(星期一)。
第 4 轮(招聘经理:1 小时):
- 首先简单介绍一下个人和专业背景。
- 这主要是技术回合,大多数问题仅与数据流有关,我对此知之甚少,因此我尝试通过使用Java流来解释所有内容。用许多不同方法的示例和用例进行了解释。使用缩放白板绘制数据管道并解释解决方案。
- 她主要对数据质量检查感兴趣,例如您将如何注意不重复数据、没有数据丢失、处理大量数据、数据传输速度、数据操作等。
- 当被问及如何使用 Kafka 及其基础知识时——我对此有一个简短的想法。
- SOLID 原则——当时我不记得每个原则的完整形式,但我知道其中的症结,所以解释了,她很满意。
- 被问及您以前的公司如何遵循敏捷。
- 行为问题:
关于你的好/坏事。
您在上一家公司完成的任何事情,并且因此获得了认可(奖励/黑客马拉松)。 - 总的来说,这一轮是平均的。
第 5 轮(HR 轮:1 小时):
- 从基本介绍开始。
- 问了一些关于我的积极和消极的方面。
- 讨论了我目前的薪资结构。
- 问了我的期望薪水以及为什么要从以前的公司跳槽。您对沃尔玛的期望是什么?
- 解释沃尔玛的薪酬结构像CTC一样分为多个部分,即基本工资、PF、MIP(奖金)和RSU。
- 稍微介绍一下沃尔玛。还有关于沃尔玛提供的其他好处。
- 总体反应是积极的。这更像是一个行为回合,检查一个人是否适合公司和薪水期望。
判决:
总体面试非常好。 2周后终于拿到了非常好的offer。