原创 一个技术大牛人的IBM面试记

2013-1-17 10:49 1237 8 9 分类: 消费电子

本文转载,作者赵劼,网名老赵,洋名Jeffrey Zhao

 

话说其实我很久没有被正经面试过了。一开始去微软实习自然经过了经典的笔试和几轮面试,然后去了朋友的创业公司并立即被激动集团收 编——没有面试,接着从激动集团去合伙创业——没有面试,然后被朋友推荐去盛大创新院——面试更像是讨论及聊天。由于长久缺乏职场磨练,我虽然对自己能力 有一定信心,但也怀疑自己如果通过“正经渠道”去面试的话能有多少机会成功。而这次面试IBM终于算是过足了面试瘾,记录一下。

 

大约一两个月前,我收到一封邮件,某同学忽悠我去尝试下在IBM的.NET工作机会。我感觉这机会似乎还不错,也正好想考察一下自己的面试水平,于是表示说愿意尝试一下。很快收到HR的邮件,让我做一套在线的笔试题。

 

笔试题分两部分,一部分是.NET测试,另一部分是英语测试,分别有几十道选择题。HR在电话里说,.NET测试 会偏向理论一些,有些难,可以用搜 索引擎找下答案。被她那么一说我也不知道该如何是好,更不知该如何准备,于是就打算死马当活马医,霸王硬上弓吧。当天晚上直接打开链接做题,做了以后才发 现,所谓“偏理论”估计是HR从以往的被面试者那里得到的反馈,事实上这套题目考的其实就是我一直强调的.NET基础,例如C#语言的特性(从面向对象到 LINQ里的种种),CLR的一些表现,BCL内常用类库的实现细节,还有就是代码阅读题了。总体而言其中相当部分也是我常用的面试题,自然正中下怀。

 

.NET笔试十分顺利,但英语就麻烦许多了。要知道自从大学前两年的英语课以外,我已经好多年没有正经地学过、考 过、用过英语了,什么GRE,托 福,雅思,甚至六级我都没接触过。英语测试就跟传统的测试一样,例如给你一大段文字,提出一个问题,并选择一个正确答案,还有选出出现语法错误的某句话。 测试的内容涉及政治、金融、文化、生活等方面,唯独没有我最熟悉的——技术领域的内容。尽管有Google和Bing翻译,但是从实际效果来看,自动翻译 技术要达到“可用”还有很长的路要走。

 

第二天一大早就我收到的结果,.NET测试96%,这意味着我的成绩在“做过这套测试”的人里面排在前5%。为此 我也暗自得意了一番,因为从某同学 那里了解到,在之前应聘这个职位的人里面,笔试成绩无一超过50%。此外我的英语是71%,而“及格线”似乎是30%。总体而言,我的笔试成绩应该还是比 较令人满意的。于是,HR跟我预约了第二天的电话面试,由J.P.Morgan的人来面试,全程英语。

 

于是我立马找出机器里的一堆技术视频来看,希望能让耳朵适应一下英语内容。听下来感觉倒还算不错,基本没有大大障碍。但是在第二天电话面试的实际过 程中,我发现一旦隔了电话,导致背景里出现了很多噪音之后,听力立马会打一个折扣(适 应以后会好一些)。面试我的人是两个老外,基本上没有口音(或者说就 是美剧里常见的标准口音)。他们问了我很多东西,有部分和笔试差不多,例如最典型的:某对象分配在堆还是栈上——有趣的是,在他们的追问中,我也发现原来 这个问题在流传甚广的“标准答案”以外还有一个变数,不过我略加思考应该也回答地没有问题。还有印象比较深刻的便是让我解释一下LINQ的相关内容(例如 LINQ Provider的实现方式),GC的工作方式及特点,多线程开发会遇到的问题等等。就我个人感觉来说,这些问题我都应该回答地不错,用“对答如流”来形 容似乎也不太过分。与其形成极端对比的是,对于WPF和WCF方面的问题,我也没有作任何“挣扎”,基本都是直接回答“不好意思,没有接触过,不太清 楚”。电话面试耗时大约50分钟。

 

比较有趣的事情是,我在简历和自我介绍里提到我平时接触过及感兴趣的技术(基本就是我博客右边写的那样),可能他们也正巧对Scala感兴趣(毕竟 是要用Java的),于是就提出让我向他们解释下Scala这门语言。解 释地过程没有什么值得一提的,不过我也适时地表达了我对Java一贯的厌恶态度, 我的原话是:Java is a dead language, it sucks,然后就围绕Java语言展开了简单地讨论,主要还是我以前谈过的那些。例如我解释道,我很喜欢Java平台、类库、框架、运行时等等,讨厌的 只是Java语言;我很了解和关注Java语言,说它dead是因为它死不肯演化或者演化地很奇怪(Java 7和8);还有Java表达能力太差,虽然看上去简单,但是需要太多代码,写完了以后还看不懂。前段时间有人问我说去了IBM以后还会不会骂Java?我 说我就是骂着Java进IBM的,所以绝对会继续骂不停口。而且我很希望到时候我在骂得时候,某些弟兄不要仅仅看到我是微软MVP的身份,也可以顺便一提 IBM员工这茬。

 

电话面试后的第三天,HR又给我来电话说通过了,说接下来便是一场“面对面”的面试,地点在深圳。会有两个团队的人从香港过来与我面试,一个是 做.NET的,一个.NET和Java均有涉及——同时还发给我一份Java的在线笔试题,说希望我能在面试前完成“以供参考”。那天正好是个周五,而面 试安排在周一,与.NET的裸考不同,我有一个周末的准备时间。有了.NET笔试的经验,我估摸着Java笔试应该也是类似的题目,于 是找了本一千多页的 SCJP的辅导教材,认真地啃了一天半。期间也弥补了我对Java语言认识的一点缺失,因为我实在被Java的内嵌类、匿名类、泛型的复杂度给恶心到了。 后来再有人跟我说Java语言简单,我就会回应说其实“它比你想象地要复杂很多”,要不我们可以来谈谈某些话题——更重要地是,复杂而不好用,导致人们会刻意规避这些复杂度,因此“连你也不知道Java语言原来这么复杂”。

 

不过Java笔试其实比.NET要简单不少,完全没有涉及Java语言的复杂部分,更像是考一些代码阅读题以及基础类库,对于后者我只能根据一些 “常识”和“经验”来猜测结果了。最后我的Java笔试成绩是93%,也算是不错的样子,面试时老外跟我的开场白便是说我.NET和Java成绩都很好 ——他的组会同时使用Java和.NET。倒是原本提到的用.NET那组的面试,由于签证没有过关,只是在电话里简单地聊了几句。

 

面试房间有白板,因此面试的方式也有所不同。首先他提出一些业务上的场景,给我一些可用的组件(例如持久化队列),让我在白板上画出解决方案的设计 图。然后他会继续做出一些假设,例如某一个服务的压力提高,成为了性能瓶颈,那么可以如何改进这个服务。不断涂涂改改最终也差不多画满了整面墙。此外还有 各种关于性能诊断和优化的问题,涉及到日志记录的设计,CLR(主要还是GC部分),WinDBG,数据结构(线性表,哈西表,优先队列,平衡二叉树)等 等。这些大都是开放题,因此可以谈得东西不少,我也不太担心因为不了解而无言以对。而且因为可以使用手势和示意图来辅助我那半吊子英语,也比纯粹在电话里 的交流来的清楚。此外对方也谈到他对JVM的了解多过CLR,所以很多时候我也更像是在“解释”CLR的行为,目的是能够让对方理解,而不是去“迎合”对 方心里的正确答案。总体而言,面试后的感觉其实比电话面试更有自信一些。

 

回到上海后,我也很快收到了回应:我通过了J.P.Mongan方面的面试,也是第一个通过的.NET技术人员。剩下的便是令人烦躁的Offer商 讨问题,略过不谈。值得一提的是,在正式发Offer之前,IBM还让我做了一套智力题(就是那种根据规律选则下一个数或下一幅图),据说是每个IBM员 工都需要经历的测试——这是我整个过程中经历的最困难,也是最没有信心的环节了。最后我得了72分,堪堪超过65分的及格线,幸好终究没有在阴沟里翻船。

 

以上便是我这次整体的经历。我也不想总结出什么理论地哲学化的大道理,就这样完整地记叙一遍吧。

文章评论1条评论)

登录后参与讨论

自做自受 2014-11-19 13:09

一个“交”字了事?这样的香港人不敢恭维。

自做自受 2014-11-19 13:04

说到“教育体制”,个人看法 应广义求解。教育体制体现人类所接受的全部教育包括三类,家庭教育、学校教育、社会教育。可见第一就是家庭教育。由于家庭教育是在家庭成员之间进行,这就决定了它的初始性、持久性和施教者与受教者之间的关系的亲密性,自然,家庭教育对人的影响之大就不言而喻了。纵观历史,我们可以看到良好的家庭教育使人终生受益,而不良好的家庭教育自然也就贻误终生。

用户1277994 2014-11-19 09:29

香港人对于教育的做法就很值得学习,大陆的教育,OMG,我的孩子交给他们真的可惜了

自做自受 2014-11-18 15:59

呵呵,万事皆有度,应该适度,适度则适宜。

从这位学子来看,可谓教育体制没有尊重个性发展所至?学子的个性。

从他的父亲来看,可谓教育体制是有尊重个性发展所至?父亲的个性。

两位当事人,经历了,知道了,没有了(还能重来吗?)。

旁人看见了,没经历,不知道,会重演(可谓前人犯过的错误,后人是一定会犯。何谓错?)。

用户1602177 2014-11-18 10:17

"因材施教",这个道理,我们很小就懂,可是老师们却都已忘记了

用户1643450 2013-2-5 09:43

工作中要应用到的各种语言
相关推荐阅读
用户590739 2014-06-20 16:36
什么吃掉了你的执行力?在浮躁中求解
转载自36Kr 编者按:“职责越多,执行力越弱?”本文作者为移动创作及阅读应用“汤圆”市场部钱婧(微信:gracetiantang),她通过书写来理清思绪,或许不失为好的方法。 执...
用户590739 2014-06-20 14:26
初创团队的形成和激励
文/进门团队   在进门发起的线上创业分享汇上,长江商学院张维宁教授就“初创团队的形成和激励”发表了见解,汇总提炼如下:   创业是现在中国最靠谱的事情之一,越来越多的人选择创业,选择拥有自己...
用户590739 2014-06-19 15:29
如何对待开发团队中那个拖后腿的人?
每个开发团队中总有一个人是最差的,老跟不上整体水平。据我观察,队友们对待这个差生的态度是团队健康状况的重要标志。(注:原文用“贝尔曲线(bell curve)”,也就是“正态分布”来衡量团队的整体...
用户590739 2014-06-18 17:36
那些糟糕的面试和那些屎问题
原文链接:http://www.raychase.net/371 作者:四火的唠叨 不 同的公司和人,有不同的面试策略,有的考察视野、有的深入细节、有的则是评估解决问题的能力。我经历了一些有意...
用户590739 2014-06-16 15:04
不做7件事,提高生产力
转载自36Kr. 此文是 CamMi Pham 的文章,原文发表在Medium上。作者通过自身经历和一些科学证据说明,有时候努力工作未必是通往成功的正确路径。成功的关键不是努力而是巧干。因为时...
用户590739 2014-06-09 09:09
看李嘉诚如何请人吃饭
作者:冯仑 一个月前我去香港,和李嘉诚吃饭,感触非常大。李先生是华人世界的财富状元,也是我的偶像。大家可以想象,这样的人会怎么样?   一般伟大的人物都会等大家到来坐好,然后才会缓缓过...
我要评论
1
8
关闭 站长推荐上一条 /2 下一条