西门子PLM(产品生命周期管理)为软件开发人员简介而来。
整个过程在一天之内完成。先是在线能力倾向测试,然后是2轮技术测试,最后是人力资源测试。
能力倾向测试:
在线能力倾向测试有两种选择。 第一:分析(逻辑推理+定量),C,C++ 第二名:分析(逻辑推理+定量),Java
我选择了第一个选项。它由50个问题组成。前20个问题是分析部分,接下来的15个问题是C语言,最后15个问题是C++。没有负面标记。分析部分相当简单。C+C++部分包含从中等到困难的问题。 约有180-200人参加了测试,约有25人入围面试。 每一轮都是淘汰赛。
第一次技术面试: 这一轮的持续时间比接下来的两轮要长,有点像压力面试。它测试了你在压力下的表现。持续了大约1小时。有两个人在面试我。
它从一个标准的“告诉我一些关于你自己的事情”开始打破僵局。
然后他让我把我的名字写在一张纸上,我写下了我的全名。然后他问我,你会如何用面向对象的范例原则来表现自己。我首先回答说,我将创建一个类Human,然后实例化类Human的一个对象来代表我自己。然后他问我将如何代表我的父亲。然后我意识到,我无法通过为每个人创建对象来展示父子关系。然后我建议创建类来代表每个人,并通过继承来显示父子关系。然后他告诉我,地球上有60亿人,你会创造60亿个班级吗?然后我想了几分钟,然后想出了一个解决办法。解决方案是只创建一个类Human,并将两个Human类作为其数据成员(一个用于母亲,一个用于父亲)。然后我意识到这是“树”数据结构。他印象深刻。
下一个问题是关于树木。给定树和特定级别,返回树的高度和该级别上的节点数。
然后他问我悬空指针的概念,并编写了一个示例代码来说明它是如何发生的。我用C++编写了代码。
下一个问题是关于链表的。查找链接列表中是否有圆圈。我向他们展示了暴力手段。然后他告诉我优化代码。我建议保留一组已访问的节点。虽然这会降低时间复杂度,但会增加空间复杂度。但他们印象深刻。
然后有两个谜题。 1) 给定三维几何中的两条线,找出它们是否相交。如果它们相交,找到交点。我给他们提供了二维解,并告诉他们在学校学习了三维几何,但记不清楚:p
2) 给它一个纯白的立方体,把它浸入黑色,然后切成1000等份。查找完全为白色的立方体的数量。一个简单的问题,几分钟内就解决了。
第二次技术面试:
这一轮是基于简历的。又有两个人在面试。他们问我做了哪些项目。要求对每个项目进行详细描述
然后他继续问我,让我告诉他们,我是否已经知道他们所问问题的解决方案。 然后他给了我一个优化问题。有两条管道,两条管道中不断有数字流入。在任何时刻,流都会停止,并且很快就会在两个流中找到共同的数字。我告诉他我知道这个问题的解决办法。 然后他继续问下一个问题。 然后他给了我一个设计问题。问题是设计一个程序来表示从一个点到n边多边形的各种形状,它还应该具有计算每个形状的面积等基本功能。我给出了一个面向对象的解决方案。然后他问我是否要删除一行,我将在哪里编写代码来验证该行是否是正方形的一部分,如果它是正方形的一部分,请不要删除它。我让他开一张简单的有条件支票。他问我可以用析构函数写吗。我不知道。
然后他问我实习项目的情况。
这一轮持续了大约30-45分钟。
4人入选人力资源部。
人力资源回合: 基本人力资源问题: 1) 跟我说说你自己。 2) 榜样:我告诉比尔·盖茨是因为他很富有 3) 你父母是做什么的? 4) 你准备好搬家了吗? 5) 未来研究计划 6) 优势/劣势。 在力量方面,我告诉自己,我更专注于一个问题,只在问题解决后才离开。 然后他问我是否访问了他们的网站。我答应了。然后他问我,你能不能告诉我我们的一种产品的名字。我无法回答,但我告诉他,我确实在他们的网站上看到了一张他们为其制造软件的车辆的照片。 7) 你想改变自己的一件事。
最终选出3人。
面试小贴士:
1) 他们会关注你解决问题的能力。因此,得出正确答案并不重要,重要的是你的思考方式。所以在你思考的时候和他们谈谈。他们想知道你是如何得出一个特定的解决方案的。 2) 仔细检查你的项目和简历,准备好根据简历提出的任何问题。 3) 面试结束时,询问一些与西门子PLM使用的技术相关的问题
如果你喜欢Geeksforgek,并想贡献自己的力量,你也可以写一篇文章,然后把你的文章发到contribute@geeksforgeeks.org.看到你的文章出现在Geeksforgeks主页上,并帮助其他极客。