菲奥拉诺面试经历
第1轮:
这是笔和纸笔测试,由 60 道 MCQ 问题组成,分为 3 个部分,第三部分可以选择 C 或Java 。
第 1 节:高难度的能力(20 题)
第 2 部分:中等难度的数据结构(20 题)
第 3 部分:C 或Java (中等难度)
首轮207人参加,15人入围面试。
第 2 轮:
这是一次技术面试。面试开始时心情很轻松,因为我在简历中提到过我是一名 PlayStation 游戏玩家,面试从那里开始,面试官解释说他是 PC Master Race 的一员,我们讨论了广受好评的游戏。除此之外,他还注意到看我简历中提到的电影,因此让我描述一下我最喜欢的电影,那是诺兰的杰作《盗梦空间》,我解释了它是如何影响我当时的感知和思考的。面试开始变得技术化。这些问题完全基于编码和数据结构,重点是不同的可能方法。他问我最喜欢的数据结构,我提到了数组和尝试。问的问题是
1. 在数组中查找下一个更大的元素。我告诉他我可以想到 2 种方法,然后给他一个蛮力方法,使用嵌套的 for 循环,然后是一种有效的基于 O(N) 堆栈的方法。
2. 反转 K 组中的链表,我为此提供了一种使用递归的方法,并且还处理了所有角落和边缘情况。
在15名候选人中,有6人入围下一轮。
第三轮:
这是对同一小组中所有 3 位面试官的另一次技术面试。因此,所有 3 位面试官都提出了问题。因为他们知道我们精通编码,所以他们开始检查我们的计算机科学基础——DBMS 和操作系统。
有一些复杂的实时 DBMS 问题给我提供了数据库实例的不同场景,以及我将如何减少冗余和改进存储空间管理。
在某些情况下,归一化成为一个问题,其中解决方案不遵守 1NF 条件以具有多值属性,以便有效地维护和检索数据。
然后从数据结构中提出问题。
烂橙子的图形问题被问到我必须在哪里找到新鲜橙子在新鲜和烂橙子矩阵中腐烂的时间,因为烂橙子会腐烂附近的新鲜橙子。我给出了一种蛮力方法,其时间复杂度为 O(kn^2),其中 k 是烂橙子的数量。然后我说我可以提高时间复杂度并给他们一个基于 BFS 的队列方法,我在每个时间实例将腐烂的橙子排入队列,并在跟踪访问的矩阵后腐烂相邻的橙子。
他们对这个解决方案印象深刻,并要求我给出 O(V+E) 的时间复杂度。下一个问题是将罗马数字转换为整数格式,为此我使用 switch case 给出了解决方案,同时使不正确的输入无效。
人力资源回合:
HR很友好,问面试怎么样。然后,他开始描述 Fiorano 的工作和文化。他继续询问有关我如何组织研讨会和工业访问的问题,以及我的家庭背景。最后他问我是否有任何问题,我询问了 Fiorano 如何能够为 NASA 获得一个项目。
在6人中,有2人被选中就业。