HR 团队联系我进行了一次采访,其中第一轮应该是关于Java、DS、Algo 等。然后是第二轮和第三轮关于系统设计、DS。
前奏:阅读关于 glassdoor 的所有其他 SSE 采访——他们都对!!!
概括:
- 这家公司的领导不是领导。
- 第 1 轮没有测试多项技能,而是专注于 1 个问题
- 形成领导的沟通令人沮丧。
我与他们的 Lead 开始了面试过程,经过简短介绍后,他给了我一个 Google 文档链接,并要求我编写“2 桶最大水果”问题的变体。
过了一会儿,在 40 分钟标记处,他说:“你已经在基本案例上浪费了足够多的时间,并且要求我提供更多用例。”你会得到一份水果清单和两个水桶。编写一个代码,使两个桶中可以携带的水果数量最大化。
约束一桶只能包含一种水果。我给出了一个正确但不是最优的解决方案,他问我是想花时间进行优化还是自己编写完整的代码。
我选择进一步优化。过了一会儿,在 40 分钟标记处,他说:“你在基本案例上浪费了足够多的时间,而且你要求我提供更多用例。”然后他又给了我一个用例,但没有产生所需的输出。
然后他进一步告诉我,他不能在给我用例上浪费更多时间——他要接受更多的面试,而且他不能坐下来为我定义用例。
我保持冷静——然后我问他,因为我们时间有限,我可以写代码以便我们讨论。我在 7 分钟内用Java编写了完整的代码,其中我使用了一个列表来存储我的 b1 – 水果。该解决方案有效。但他说如果你的桶只包含相同类型的水果,你为什么要使用链表。
我当时说我觉得它有效,因为我在 B1 桶中所有水果的总和 = 我的 list.size 并且我也承认他不使用列表的想法是绝对正确的。
他不接受这种描述,并重复了为什么要使用链表。我能感受到班加罗尔各地居高临下的氛围 😛
PS:如果我让你画一条5厘米的直线,你拿起30厘米的比例来做。它仍然会做你想做的工作吗?领导会指导你“你是说有更好的规模还是更小的规模”?
老板会告诉你——你错了。