📅  最后修改于: 2023-12-03 14:43:07.721000             🧑  作者: Mango
我在去年应聘 JP Morgan Chase & Co. (JPMC) 全职软件工程师一职,以下分享我的面试经历。
我是通过 JPMC 的官方招聘网站 进行申请的,提交了简历和个人信息。申请后,我收到了 JPMC 发来的邮件,告知我简历初审通过,需要进一步的面试。
我接到了 HR 老师的电话面试,时长大约 45 分钟。面试官主要询问了我关于编程的经验、编程语言能力以及如何解决问题等方面的问题。同时,他还关注了我对公司的理解和我的职业期望。
通过电话面试后,我进入了技术面试环节。在这一环节,我与两位面试官进行了一对二的技术面试。我们使用了代码共享工具,记得是 CoderPad。他们主要考察了我在计算机科学基础、数据结构和算法以及编程语言能力方面的知识。
我对于代码共享的工具比较陌生,我稍微花了一些时间来熟悉它。时间就此消磨,我开始了面试。我们一起完成了两道编程题,其中一道是链表相关的问题,另一道是数组相关的问题。
如下是我编写的链表反转解答:
public class Main {
static class Node {
int val;
Node next;
Node(int val) {
this.val = val;
}
}
static Node reverse(Node head) {
Node newHead = null;
while (head != null) {
Node next = head.next;
head.next = newHead;
newHead = head;
head = next;
}
return newHead;
}
public static void main(String[] args) {
Node head = new Node(1);
head.next = new Node(2);
head.next.next = new Node(3);
Node newHead = reverse(head);
while (newHead != null) {
System.out.print(newHead.val + " -> ");
newHead = newHead.next;
}
System.out.println("NULL");
}
}
我通过了技术面试,受到了公司的邀请。
最后,我还需要面试数据库,因为我将要为公司设计和维护一个数据存储解决方案。面试官问了我关于数据库设计、SQL查询和NoSQL以及数据模型的问题。同时,也与我讨论了如何保证数据的安全和可靠。
整个面试过程大概历经了一个月,它非常高效,并且来自公司工作人员的响应非常迅速。我很高兴面试成功,并且加入了 JPMC 这个伟大的公司。