摩根士丹利来我校实习和全职工作[6个月实习+全职]。我得到了 6 个月的实习机会。
第 1 轮:本轮分为三个部分:
- 资质
- 调试
- 编码
能力——这部分有关于排列组合、心理能力、复合兴趣等的问题。总问题 – 8,持续时间 – 20 分钟。
调试——这一轮又是8道题。持续时间为20分钟。给出了错误的代码片段,我们必须找到错误并纠正它。
编码回合——这一回合有 3 个问题,时间为 1.5 小时。
- https://www.geeksforgeeks.org/program-find-slope-line/的变体
- https://www.geeksforgeeks.org/largest-subarray-with-equal-number-of-0s-and-1s/的变体
- https://www.geeksforgeeks.org/longest-common-subsequence-dp-4/的变体
我解决了 10 道能力题中的 3 或 4 道,7/8 调试问题和所有编码问题。在 190 名学生中,他们选择了 24 名参加下一轮比赛。
第二轮:本轮话题丰富,持续1小时15分钟。告诉我你最喜欢的项目,你实现了什么,以及你面临的挑战是什么。
C++ 基础和面向对象编程
- C++ 中有哪些不同的数据类型?
- 什么是访问修饰符?
- 解释面向对象编程。什么是继承?继承的类型有哪些?
- 解释和编码多级继承。在多重继承中,定义基类的顺序是否重要。
- 什么是多态?
- 给出运算符重载的例子
- 结构体和类有什么区别?
- 什么是虚函数?解释虚拟表和虚拟指针。
- malloc 和 calloc 有什么区别?
- 什么是动态内存分配?
操作系统
- 什么是分页和页面错误?什么是虚拟内存?
- 什么是多线程?进程和线程有什么区别?
- 有哪些不同的调度算法?为什么使用调度算法?
- 什么是死锁?什么是互斥量和信号量?
DBMS:面试官问我是否了解数据库管理系统。我告诉她我曾与数据库打交道,但没有上过正式的课程,因为我不是来自 CS。然后她告诉我没问题,而是问我有关 Web 服务的问题。
网页服务
- 什么是客户端服务器模型?
- http 协议有哪些不同类型?
- 什么是 REST API?有哪些不同的方法?
算法
- 给定一个字符串向量,返回具有最大元音数的元素的索引。让我编写蛮力方法并讨论了优化的解决方案。
9/24 学生被选入下一轮。
第三轮:这一轮由一位非常有经验的工程师接手,是系统设计+人力资源轮。
系统设计
- 设计网上银行管理系统。低级系统设计和面向对象的编程是预期的。面试官还希望我处理并发问题。
人力资源类型问题
- 谈谈你的实习。详细问了我具体的实习。
- 谈谈你最喜欢的项目。
- 让我举例说明我在一个团队中工作的时间以及我处理过的职责。
最终选出了6名学生。 4 人提供实习 + 全职,2 人提供 6 个月实习。
准备工作:来自 GeeksforGeeks 的摩根士丹利档案。 (非常重要。很好地了解会问什么样的问题。来自 https://www.studytonight.com/cpp/ 的 OOP 和 C++
GeeksforGeeks 和 StudyTonight 的操作系统。我只研究了我观察到的摩根士丹利经常被问到的重要话题。他们是
- 进程与线程
- 为什么线程是轻量级进程而进程重
- 多任务处理
- 多线程。
- 实现线程的简单C++程序
- 死锁
- 互斥量和信号量
- 虚拟内存
- 颠簸
- 页面替换
- 调度算法
- LRU缓存
来自 Youtube 的系统设计和 Grokking 面向对象设计访谈。
数据结构和算法:Leetcode
修改了简历中的每一行。确保深入了解所有内容,简历上的任何内容都是公平的。