📜  高盛面试经历 | Set 23(2 年以上Java开发人员角色经验)(1)

📅  最后修改于: 2023-12-03 15:42:32.952000             🧑  作者: Mango

高盛面试经历 | Set 23 (2 年以上 Java 开发人员角色经验)

简介

本文将分享我在高盛(Goldman Sachs)的面试经历。作为一名具有两年以上 Java 开发人员角色经验的应聘者,我参加了一系列技术和行为面试,并对谈判和待遇议价达成了最终呈现。

技术面试
第一轮

第一轮技术面试主要集中在我的项目经验和技术知识上。面试官先是询问了我的工作背景和项目经验,并详细探讨了我的理解和应用程度。接着,他问了以下一些有关 Java 和相关技术的问题:

  • nullvoid 有何区别?
  • 你如何在 Java 中处理异常?
  • SQL 中的事务处理是什么?

我回答得还算不错,但面试官还是让我解释了更多细节。最后,他让我解决了一个小问题,用最简单的方式复制一张 HTTP 帖子到另一个位置。这是一道趣味性测试,但也要求正确和高效。

第二轮

第二轮技术面试的重点是代码和算法,更加注重我的计算机科学基础。面试官询问了我以下问题:

  • 写一个函数以判断一个字符串是回文。
  • 描述我理解中的二分查找(Binary Search)的过程。
  • 描述快速排序算法(Quick Sort)的实际应用场景。

这些问题相对简单,但面试官也要求我对答案进行优化,同时提供他自己的解决方案。我使用了递归和分治法来解决回文问题,并讨论了二分查找作为一种有效的搜索算法的实际应用场景。

第三轮

第三轮技术面试与 Java 相关。面试官让我写一个 Java 类,用来描述一个基金(fund)对象。我需要满足以下几个要求:

  • 应该包含用于返回基金规模和经理名称的方法。
  • 应该有一个 set 方法,用于设置基金规模。

我写了一个基本的 Java 类,并通过了面试官的测试用例。

第四轮

第四轮技术面试是一个终极挑战,从算法,数据结构和工程实践的多个方面评估我的能力。我需要写一个程序来解决以下问题:

  • 给定一个正整数 n,计算小于或等于n的质数的数量。
  • 使用最小的时间,最小的空间,以及初始算法的一些额外优化来完成。

我花了 45 分钟的时间写了一个能够顺利执行的程序。面试官很满意我的代码,并评估了我的方法和演示。

行为面试

在技术面试之后,我参加了一系列的行为面试,以便高盛更好地了解我的背景和价值观。这些面试通常会与公司文化和业界动态有关。我的行为面试围绕以下几个主题展开:

  • 在你的职业生涯中遇到的最大挑战是什么?
  • 哪项技能是你目前最需要继续提升的?
  • 描述一个你最骄傲的工作成果。

我准备得充足,并且在面试中表现自信。我相信我的回答让面试官相信我有能力胜任这份工作。

谈判和待遇议价

最后,我进入谈判和待遇议价过程,我与 HR 部门的代表商议了薪资和福利。除了与公司签订标准的雇佣合同外,我还能够拿到我认为合理的补偿和工作条件。

总结

这是我的高盛面试经历,正如你所见,这是一个具有挑战性的过程,使我更好地了解了自己和我的技术水平。如果你正在准备前往高盛面试,我建议你对技术知识,算法,数据结构以及公司文化和行业知识都要有一定的了解。最后,要保持自信并且为你的经历做好准备,这将是你成功的关键。