📜  DE Shaw 面试经历 |设置 19 (校外)(1)

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

DE Shaw 面试经历 |设置 19 (校外)

最近我参加了一次 DE Shaw 的校外面试,这里为大家分享一下我的面试经历和感受。

面试准备

在面试前,我对 DE Shaw 公司的情况进行了了解,了解了一些他们公司的技术栈和文化等方面,并在网上找到了一些关于 DE Shaw 的面试题目,准备了一些面试可能会用到的算法题和编程方面的问题。

面试过程
第一轮面试

第一轮面试是一个电话面试,面试时主要是问了一些基础的编程问题和一些计算机科学的问题,主要内容如下:

  • 介绍一下你的项目经历
  • 如何进行操作系统的内存管理
  • 介绍一下操作系统中的线程和进程
  • 如何处理并发问题
  • 介绍一下常用的数据结构和算法
  • 介绍一下二叉树的性质和操作
  • 如何解决字符串匹配问题
  • 你用什么语言来编写代码
  • 你职业生涯中遇到的最大的挑战是什么
  • 你最近阅读的一本技术书籍是什么

整个面试过程大概持续了一个半小时,感觉过程比较流畅,题目难度不大,但是需要准确清晰的回答。

第二轮面试

第二轮是一次远程视频面试,面试官是一位高级工程师,主要是针对技术和挑战方面来问的问题,主要内容如下:

  • 介绍一下你在项目中遇到的技术难题
  • 如何在保持快速的同时优化算法
  • 如何设计同步方案来保证线程安全
  • 介绍一下你理解的软件开发模型是什么
  • 如何保证软件代码的质量
  • 如何进行性能测试和基准测试
  • 描述你觉得自己对面试成功的影响最大的一项技能

整个面试过程持续了一个小时,感觉难度比第一轮要高一点,包含了一些实践性的问题。

第三轮面试

第三轮是一次写代码的面试,主要是考察我的编程能力,主要内容如下:

  • 在给定的字符串中查找所有可能的子串
  • 用高效的方式反转链表
  • 删除链表中重复的结点
  • 使用 c++ 实现一个线程池调度程序
  • 如何确定一个字符串是否是另一个字符串的旋转形态
  • 使用 c++ 实现一个排序算法

在这一轮面试中,面试官会在电脑上分别打开每个问题的代码文件,然后请我现场编写代码进行解答。

总结

DE Shaw 的面试难度较大,对面试者的编程能力和理解能力都有很高的要求,对自己的编程基础和编程能力都有着严格的考验。同时,我也了解到关于 DE Shaw 的文化,他们团队中注重团队协作和技术积累,这是一个很好的工作环境。

经过面试,我意识到自己需要加强对 c++ 的掌握和对算法和数据结构的理解,同时需要更加重视编写可维护性和可读性高的代码。