📌  相关文章
📜  高盛软件工程师 FTE 面试经验 |在校园

📅  最后修改于: 2021-11-21 06:02:46             🧑  作者: Mango

高盛来到我的校园,提供一份全职的分析师职位。允许所有分支出现在编码轮次中。

我们得到了一个将在 HackerEarth 上进行的测试链接。测试有 5 个部分——

  1. 编码部分(2 个中等问题 – 30 分钟):一个是必须使用动态规划解决的高贵元素问题,另一个是基本的字符串操作问题。我能够编写字符串问题,但是对于高贵元素,我使用了回溯,因为我无法编写 DP 方法并通过了 6/10 测试用例。
  2. 高级编码部分(1 题 – 45 分钟):这是一道图形题,我什至没有时间完整阅读这道题,所以我跳过了这道题。
  3. 定量能力(三角学、PnC、坐标几何、时间和工作)——25 分钟
  4. 计算机编程MCQ(操作系统、DSA、DBMS)20 分钟
  5. 行为问题(2) – 15 分钟

我建议尝试所有部分。不要完全跳过任何部分。每个正确的 MCQ 评分方案为 +5,每个错误答案的评分方案为 -2。

第二轮(技术面试 – 时间:40 分钟):难度:简单

  • 一轮开始,面试官让我告诉他我自己。之后,他问了我简历上提到的项目相关的问题。他问我一个 DSA 问题,我不得不在 Hackerrank 的代码对平台上对其进行编码。
  • 问题:实现一叉树
  • 我从实现一个二叉树开始,然后慢慢地把它变成了 n-ary。我与面试官讨论了我的实施,他非常乐于助人和礼貌。他给了我很少的提示,并且在整个采访过程中都非常耐心。我能够实现基本的 Node 类及其所有方法,对于 n-ary 我无法完全做到这一点。时间已经过去了,因此我最终被要求停止。面试持续了大约 40-45 分钟。
  • 之后,他在我用 C++ 编码时问了我一些关于 C++ 内存分配的问题。我们就如何在 C++ 和Java分配内存进行了很好的讨论,因为他是一名Java编码员。
  • 最后,面试结束,面试官问我有没有什么问题要问他。这是您可以给人留下深刻印象的时候,因此请事先考虑问题并对公司进行一些研究。永远不要对这个问题说不。
  • 我被要求等待下一轮。

第三轮(技术面试 – 时间:30 分钟):难度:简单

  • 这一轮再次开始,面试官要求我向她介绍我自己。我们进行了快速介绍,之后她立即向我提出了 DSA 问题。我首先被要求讨论我的解决方案。
  • 问题:https://leetcode.com/problems/product-of-array-except-self/
  • 起初,我给出了基本的蛮力方法,她让我不要使用除法运算符。我想了几分钟。
  • 当我讨论这种方法时,她似乎很满意并要求我编写代码。
  • 我对它进行了编码并询问我是否可以进行快速试运行。我发现了一些错误并立即纠正了它们。她对这种方法印象深刻。她问我是否可以通过不使用额外空间来进一步优化它。再次,我花了一些时间,尽管 2-3 分钟,并告诉她可以进一步优化。她让我给它编码。我正在编码它,但解决方案没有完美运行。由于我们的时间不多了,她似乎很满意我至少知道该方法,即使我无法正确编码。一轮很短,HR 让我等下一轮。

第 4 轮(技术 – 时间:40 分钟):难度:中等

  • 一轮开始,面试官让我告诉他我自己。
  • 之后,他问了我简历上提到的项目相关的问题。因为我在做数据工程实习,他问我是否愿意问一些基于 DBMS/SQL 的问题。我说是,他问了我一个关于表格规范化的问题。
  • 他在白板上给了我一些虚拟表格,让我写一个查询。我能够快速编写查询,他印象深刻。
  • 之后,他让我解决这个问题。我不必编写代码,我们只需要讨论解决这个问题的方法,我们就可以使用白板来做同样的事情。
  • 问题:https://www.geeksforgeeks.org/count-total-anagram-substrings/
  • 我讨论了整个方法。我被夹在中间,但他指导了我。他在中间问了很多问题,以便我可以纠正自己。我使用的方法是 O(n^2) 方法,虽然他让我考虑优化方法,但我能够想出另一种方法,我猜是在 O(nLogn) 中解决问题。我猜他似乎很满意,最后,他问我是否有任何问题要问他。
  • 我问了一些关于我的角色以及我将在哪个部门工作的问题。我们一直在谈论该部门使用的不同技术。
  • 经过一番卓有成效的讨论,本轮结束,本轮进行了5-6个小时后,结果出来了。

包括我在内的7位同学拿到了offer!