Oracle 应用工程师面试经验 |在校园
第一轮:进行在线测试。它有4个部分
- 口头
- 资质
- 编程技巧(流程图等)
- 计算机科学概念(DBMS、操作系统、树问题)
44名学生入围进一步处理。
第 2 轮(技术面试):上午 10:45 开始。整个过程发生在ZOOM上,主持人安排我们去采访室和候诊室。这个级别的面试只关注最基本的问题,他们只是想知道我们是否会编码。与在线代码编辑器共享了一个链接,并要求我共享我的屏幕和代码。
我选择用 C++ 编写代码,我们可以选择编写整个程序/仅编写特定函数/甚至是伪代码。
另外,因为我来自 EEE,我没有被问到关于 DBMS、OS 等的问题,我告诉他们我对数据结构和算法很满意,所以我只被问到与此相关的问题。
他还表示,不需要具备Java知识,他们只是在寻找编程和解决问题的技能,因为与工作相关的所有培训都将在稍后提供。
- 第一个问题只是为了确保我理解它是如何工作的,我被要求编写一个程序来判断这个数字是否是素数。我解释说我们应该检查从 2 到 sqrt(n) 的因子并在代码中编写相同的内容。
- 接下来,我得到了一个表达式并要求检查括号的平衡。
- 后来,我被要求检查相同的表达式是否存在冗余括号,例如 ((a+b)) + c。我首先给了他们一个简单的答案来找到开始和结束括号的索引总和,他喜欢它但要求我优化它。所以我选择了堆栈方法。
我可以回答所有问题,我们很多人都被要求加入这个候诊室,因为他们分析我们的表现。这是一场淘汰赛,每组大约有 5/10 人被淘汰。
第 3 轮(技术面试):中午 12 点左右。面试官做了自我介绍,然后让我自我介绍。
- 他让我谈谈我最近的项目以及我在其中扮演的角色。
- 他问我关于我在第六学期学习的科目。
- 他问我是否知道编译器是什么,以及它与解释器有何不同。
- 他问我是否知道 SQL。我说我知道我在第 11 和第 12 中所学的基本命令。
- 我还被问到为什么我想为具有 EEE 背景的 Oracle 工作。
- 然后他给了我一个编码问题,并让自己静音,给我时间来解决。
- 第一个编码问题是反转给定字符串的单词。例如: “Oracle App Dev”应该变成“Dev App Oracle”
- 第二个编码问题是在数组中查找重复项,在下一轮中提出了相同的问题,并且在 O(n) 中也有一个约束来解决它,但我在这一轮中给了他们一个优化的答案。
我可以回答我们再次进入候诊室的两个问题。又是淘汰赛,不知道淘汰了多少人。
第 4 轮(技术面试 3):下午 3 点左右
我被要求再次自我介绍,并就古典音乐进行了简短的交谈。
这一轮又涉及编码,第一个问题是交换2个数字
- 不使用临时变量。
- 不使用算术运算运算符(+,-,/,*)。
- 不使用任何关系运算符(<、>、<=、>=)。
我使用 XOR运算符来执行此操作,类似于下面的问题,但我有 numbers 而不是字符串。
第二个问题是在数组中查找重复项,但这次有 O(n) 时间约束,并且数组是只读的。我在上一轮写的代码中已经满足了这个条件,所以不需要做太多。
我被要求在候诊室等候。
第 5 轮(HR):下午 5 点左右。我被要求谈谈我自己,并告诉他们一些我简历上没有的东西。我被问及我喜欢的工作地点(我们有班加罗尔和海得拉巴作为选项)
判决:选定