Thoughts 面试经历 | (在校园)
2018 年 7 月,Thoughtworks 参观了我们的校园招聘。我们总共进行了 5 轮面试,其中之后的 3 轮面试在浦那的 Thoughtworks 举行。
第 1 轮:快速编码轮
(在大学校园里)
这一轮有 5 个简单的编码问题,必须在 40 分钟内解决。在这一轮中,他们只寻求速度和对极端情况的处理。编程逻辑、命名和效率不是问题。
该轮是离线编码轮(允许使用 IDE),需要手动检查。
问题:
- 给定字符串字母 (R, G, B),如果所有袜子都是成对的,则打印“True”,否则打印“False”。
例子:
输入: RGBBGB
输出:真
输入: RGRBRG
输出:假 - 给定两个字符串,打印第一个字符串,不包含第二个字符中出现的字符串。
例子:
输入: skyIsblue 眼睛
输出: kIblu - 给定一个整数 n 和一个字符串,将字符串中的所有字母移动 n(标点符号和空格除外)。
例子:
输入:
3
天空是蓝色的!
输出: vnb Lv Eoxh! - 给定一个整数 n 后跟 n 个空格分隔的整数,将偶数索引处的数字按升序排序,奇数索引处的数字按降序排序。在两个单独的行上打印输出。
例子:
输入:
7
12 100 5 10 34 17 84
输出:
5 12 34 84
100 17 10 - 给定两个整数n和m,以及大小为 nxm 的矩阵,将矩阵边缘的元素加倍,其余元素减半。
例子:
输入:
3 3
10 5 4
12 8 14
1 3 18
输出:
20 10 8
24 4 28
2 6 36
解决3个或更多问题的学生进入下一轮的候选名单。
第二轮:面向对象设计轮
(在大学校园里)
这一轮是离线轮,我们必须在 45 分钟内使用 OOD 为给定的单个问题陈述设计解决方案。正确使用 OOD 概念和命名很重要。允许使用 IDE 和任何选择的语言。
这一轮至关重要,由于检查是手动的,因此您必须使用良好的面向对象设计原则向检查员正确解释您的解决方案。
第三轮:技术面试
(在 ThoughtWorks 浦那)[50-70 分钟采访]
今年我们在 ThoughtwWorks 的招聘过程中只进行了 1 次技术面试。
我被问到有关 DataStructures、OOP、解决方案和数据库设计、算法、JavaScript、项目等的问题。
- (OOP 和数据库设计问题在面试中占主要部分)
- 为图书馆系统设计 OOP 解决方案,用户可以在特定时间段内以不同的费率和某些类别的书籍的可选折扣来租借书籍。
- 针对上述问题设计数据库模式。
- Java和 C++ 之间有哪些重要区别?
- 接口和抽象类的区别?
- 编写算法来解决河内塔问题。
- 你将如何找到链表的中间?
(因为我的一个项目是一个 JS 库,他们几乎询问了关于 JS 的所有内容)
- JS 是如何工作的?
- 异步和单线程性质
- 事件循环
- JavaScript 引擎和 NodeJS
- 100层楼和鸡蛋拼图
- 一个麻袋有 1,2 和 5 卢比的硬币。你随机挑选一枚硬币,放入其他三个最初是空的麻袋中的一个。您将如何放置硬币以在任何情况下保持三个最小值之间的绝对差异。如果您不随机挑选硬币并且已经知道硬币的顺序怎么办?
面试官非常友好,整个面试都是对话性质的。尝试与面试官讨论答案,在白板上解决问题时谈论您在做什么,不要过早放弃问题。
很少有学生入围下一轮面试。
第四轮:人力资源面试/领导轮
(在 ThoughtWorks 浦那)[40-60 分钟采访]
两位面试官都非常友好。问题是关于我的积极品质、消极品质、暑期实习的经验。有些问题是关于领导技能的,比如你将如何处理……情况?你从过去领导团队的经历中学到了什么,等等。
老实说,在回答和自信的谈话中有点创新。
第五轮:社会正义轮
(在 ThoughtWorks 浦那)[40-60 分钟采访]
两位面试官都非常友好。整个采访围绕着对该国某些近期社会话题的讨论展开。
像性别不平等,暴民私刑,LGBT社区,女性保留等。
不管你对某个话题持正面还是负面的看法,重要的是你如何与面试官讨论这个问题,以及你如何说服他们对你的看法。
因此,请对这些主题的回答和观点保持原创,阅读最近的社会问题及其事实。
只是让面试感觉分开,并尝试与面试官进行正常的讨论。
几个重要的点:
- 确保有一些好的开发项目。
- 掌握数据结构、算法和 OOP 很重要。
- 保持你的概念清晰。