面试失败了

  To 弄德:失败了失败了,心情很不好。从时间、地点、待遇等方方面面看,BOA的这个工作怎么看都是非常好的,但是我搞砸了。我第一次面试双方都有误会,我反而不自责;校内工的太过简单,不算真正意义上的面试;这一次算是第一次业界的技术性面试,我搞砸了。

  非常感谢,一直在用你说的kyapoocha.com准备面试,非常有效。但准备面试和面试毕竟不同。通过这个网站的复习,我已经能听懂九成以上的题目,可真要是用英语回答实在太困难。他有一题问new和malloc的区别在哪,这题的答案我以前就知道,看过kyapoocha准备以后也有了用英语回答的草稿,但当面试官果真问我的时候我一下就蒙了,口语惨不忍睹……

  还有一题刻骨铭心,问Infix和postfix的区别,我没听懂,我问他什么是Infix和postfix、能给两个例子么……好吧,我承认编译原理学得不好,你给我一个表达式,我能说出它是中缀表达式还是后缀表达式,我也可以把它们相互转化,但你要问我区别在哪,我连中文都解释不清……而当时,我根本就不知道什么是Infix和postfix。

  这次面试打击很大,收获良多,但我还是会继续找工作的。我希望没有第三次失败了。


  To DYF:我不知道中国的情况怎么样,但我觉得IT行业的人应该经常跳槽。如果你对你的技术和待遇比不满意,你就可以考虑跳槽了。我不是吹牛,我现在的这个校内工对那些没有奖学金也没有业界实习的学生来说已经算梦寐以求了,我身边的同事也多半是老美,他们自己就很满意——但是我不能安于现状啊。老美不愁毕业以后找工作的问题,而中国人找不到工作就要滚。

  在mitbbs上看面试交流,有个正向亚马逊求职的人发帖求助——亚马逊的电邮面试是开放的,问你几个问题,24小时内答复即可。第一个问题是如果网站访问速度很慢,你如何检测问题、如何优化;第二个问题发帖的人自己都没看懂,网友也是连蒙带猜,题目意思是(如果没猜错的话)怎样在不中断服务的情况下升级系统或者更换数据库……你知道,中国的绝大多数网站直接给一个“系统维护”的页面就完事了,但是Baidu不能这样搞,google不能,亚马逊也不能。

  下面有评论说,亚马逊的问题问的很到点子,没有几年工作经验是没法回答的,你去网上搜搜吧,祝好运。

  我觉得中国外国都有这样的问题:老工程师抱怨新人上位太快——技术差得不多,待遇却低得多——跟自己抢饭碗么。然而这样抱怨的工程师自己一定有问题,好比亚马逊的面试题,新人是绝对答不上来的,而老资格工程师的价值就彰显在此。

  总之,我始终相信IT从业者应该怀有跟大学时一样的工作态度——课外的自学远比课堂上的所得更重要。为什么工作以后依然要自学?为了跟老板讨价还价,或者为了跳槽。我的校内工是web developer,说好听点可能叫“前端架构”或者是什么的,但是我不喜欢,还是偷偷面试了BOA的software developer——面试的问题都是c和java——因为我喜欢那个工作,觉得它更有挑战,也更值钱。

  ps:顺便说一下二分查找的事。我面试BOA的唯一一道现场coding,就是在白板上写一个sort函数,给Int排序。我当时很惊诧,问是不是任何sort都可以,他说随便……我很高兴,因为几个月前为了准备面试,快速排序我练习不下十遍,上机写一个完整的程序十分钟左右可以搞定——没想到,面试当场,紧张加生疏,写了好久也没把一个函数写出来(没看表,但是肯定不只15分钟,而且再给10分钟估计也出不来)。面试官随手写了一个冒泡法,我说这样太简单了吧,他说你总得先写一个能用的再说吧blablabla……我无限后悔,也许我当时把快速排序写出来了工作就有戏了,可现在已经没有如果了。

  我还是坚信好的IT公司对算法的要求都是严苛的,MSRA、百度、三大门户如此,而Google、Facebook、Amazon只会更加严格——以前在校内上写过两篇有关非诚勿扰的女人的日志,就是Facebook的Puzzle,题目对时间的要求简直无限苛刻。不管我以后找到什么样的工作,我都要用quicksort而不是bubblesort的标准来要求自己——如果说我来美国以后学到了什么,这就是我最大的收获。

22 thoughts on “面试失败了”

  1. 第一,我对待遇没有不满,因为现在现在的工作经验和能力,不是谈待遇的时候,要谈待遇,研发部的很多大头都想挖我过去。唐骏说,有能力的人,第十一年的工资可能高于前十年的总和。因此待遇不是主要问题,能力才是我看中的。我鉴别自己的能力,不是通过跳槽和加薪来决定。而是我能为公司创造多少的效益。我选择继续在现场干,是因为这里是压力最大,活最艰苦,最能训练人的地方。经理跟我谈人力成本的时候说我现在已经在代替每小时50美元的成本的人力了,而一年前,可能只是十分之一。所以,我们做的是要认清自己的实力,干这行的,有能力的人不需要你来找加薪的机会,只要给自己找锻炼的环境即可。只要你是正常人,机会会主动来找你。

  2. 其实只要保持平常心,放轻松点,一定能表现更好,我面试的秘诀就是多笑多说话~不过面试的价值在于发现不足。。。你的进步我们都能看得到~另外,其实前端工程师今年在国内很火,有很大缺口,我了解到的行情基本都是跳一次槽薪水的涨幅能到50%左右。。。。

  3. 亚马逊的问题可能我答的没有那些架构师全面,但我随便举点我常做的。第一个问题:1,如果系统够规范,在缓慢模块上走一遍测试case,log开debug,监控每一层每一个函数的处理时间。找出瓶颈。2,如果系统不规范,可以在浏览器层监控http传输时间,数据库手动测试sql测数据库主要表插入和查找时间。排除非业务层因素后,jprofiler查对象和堆栈,观察gc(我是搞java,别的环境有类似工具)。3,如果上述检查均没问题。则可能是线程问题或者压力问题。LoadRunner各个页面。第二个问题:这个基础问题会没思路么?这个就是spring存在的理由。如果你不用接口编程,层次业务间耦合太大,那是不可能有办法的。如果用接口编程,那该换哪个业务类换哪个,数据库地点换,就变个数据源配置,数据库版本换,就替换dao。直接文件覆盖即可。如果是jsp单层。。。。对于本公司的系统,前端几百个负载单片机+集群业务机+数据库rac。完全可以开容灾系统,全部升级完毕再切回来。

  4. 算法是会考,准备了就行。你又没工作过,我考你什么,怎么考你?就跟sat2万单词,高考全是流氓题,过关了人以后也是牛逼人多。等价能力鉴定外,没有更好的办法。我面试别人的时候,也有算法问题,某研对了,但有一基础的java排错问题,某研不解,上网半小时没弄出来,被我给pass了。我真要你会算法么?我就算不会我可以上网down个model,几分钟的事。你个错半天查不出来,要你何用?只能说明你算法是背的,你的能力不够掌握这个算法。面试首先要有基本能力,然后再准备算法这样的题。这是和考官的默契,给自己展示能力的渠道。但不是以后一辈子工作的目的都是为了面试。补充一句,我不反对平时钻研算法。业余有空闲看看算法可以增加思维能力。但想在it上加深功力,写写大型系统,看看复杂问题的解决,会比那个实用的多。业务时间研究算法,最深也就相当于数学家看到小学生数奥一样。等你数分学完后,小学数奥什么你不能解决,就算不理解他们的方法, 我大不了方程一下,大不了积个分,那些就都变成了小问题。就算我不会那些技巧。我一样鄙视那些只会做小学数奥的。

  5. hcg如果我考你,就跟我讲讲快排,冒泡,分组的优缺点和适用情况,以及从计算过程角度上讲,为什么会出现这样的不同。如果你真正熟的话,应该立刻回答上来。想来我的那个本科班写这个程序熟到手烂的女生们,就回答不上来。我想那些大公司的人如果想问的话也会问的,但他们在意自己的工作时间,懒的花精力听你说,所以让你写了。

  6. 你说你编程能力是前三,工资又是最低的部分,换我一定跳槽了。你也说研发部的大头都想挖你过去,那你为什么不过去呢?“这里是压力最大,活最艰苦,最能训练人的地方”——这个难以理解。不管压力多大、活得多苦、多训练,钱一定不能少,一份价一分货。还有很多人还没毕业就去研发部这种地方了(比如冯晓航现在的实习),从来没吃过苦,但是钱多、简历漂亮、学的也不见得少——有什么不好?为什么非要吃苦?经理说你可以替代每小时50美元成本的人力,我觉得这很敷衍。每小时50刀是google给博士生新人的待遇,研究生可能要在google工作三五年才能达到,你也是新人,还是在中国,50刀的人力成本难以想象。你经理说你如此值钱,待遇确是最低一级,你经理在想什么?他不怕你跑了?

  7. 总而言之,我无论如何想不通你为什么不去研发部,也想不通你老板为什么明知你能力超群却不给你加薪。民工不民工,区别都在钱上——美国95%的网站,包括我现在自己给学校干的活,都没什么技术含量,但是我没听见有谁抱怨是民工的。无论中国美国,对绝大多数人而言搞IT和刷盘子本无不同,都是工作的奴隶:谈不上兴趣,也没多少技术含量,糊口而已。只是搞IT门槛高些,拿的钱自然比刷盘子多。我没什么远大理想,对算法也没兴趣,学点什么都是为了钱。如果干这个没钱,我就干别的;如果中国给的钱少,我就去美国,反之,我就回国——没什么爱国不爱国,向钱看齐罢了。你看中国那么多人考公务员,真是为了为人民服务?不都是为了钱么。我觉得你的水平已经算牛人了,为了历练蛰伏不出,更是牛中之牛;不过我还是希望你尽早跳槽(哪怕只是去研发部),即使不像弄德和我那么喜欢跳,该跳还是要跳。至于唐骏说,有能力的人云云——那不是说给IT从业者听的,那是说给骗子听的。唐骏自己就是个大骗子,成功心得都是骗子心得。我要是有捏造自己加州理工博士+大头贴之父的脸皮,我直接去读金融了,计算机那帮写代码的真是弱智。

  8. “这里是压力最大,活最艰苦,最能训练人的地方”——这个难以理解。如此说来,我需要给你这个刚入职场的新人上上课了。我留在这里,是因为我每天的内容非常充实,有压力逼着我不断的解决新的问题,逼着我承担更大的责任。而我那些在百度雅虎的同学们,他们拿着高薪干着那些闲活,有困难找牛人,或许他们的干的和他们的能力等价,但有的事大牛帮他们扛着,他们什么时候能肩负重担?他们的进步空间在哪?我们公司业务窄,技术也很烂,但就是这样的职位还是处处有困难,处处有挑战,还是有很多值得学习的地方,这是多么难找的工作。然后,当我发现我混的游刃有余的时候,我肯定会走,但我绝对不为因为曾经低微的工资就后悔这段工作经历。“学的也不见得少”,讲的跟唱的似的,你以为工作就是熟练掌握几门技术那么简单的事么?如果你是纯研究性技术人员,我没活说,那种人多么?如何处理事故,如何分配紧急异常,如何保证整体进度和工作效率,如何保证高负荷工作量下的人员合作关系。。。。这些都是责任下压力下,才能培养出来的技能。给一个貌似不干活的负责人几倍于技术人员的工资,你当是白给的啊?

  9. 我不知道你是否理解了我为什么会留下,另外我没有鄙视it民工,就像外国人一样。因为我自己就是民工,我也很热衷于目前当一个合格的民工,至少我活的很充实。我不会突然觉得自己没什么可学的。我只是鄙视那些,干着民工的活还干不合格,还觉得干着挺有技术含量工作的人。我经理跟我谈这些,是因为他觉得我人和能力都还行,眼光不限于自己。有意培养我进管理层,在这之前先让我对管理流程熟悉了解而已。你以后会有机会了解到这些内幕时,在那些管理者眼中,技术工人,其实就是在一个公司的巨大运营流程中,一个个成本数字而已,缺一个子儿根本不算什么,“我们宝贵的财富云云,那是培养公司文化”,子儿自个可以找地方塞嘛。不过你放心,我不会一直留在现在的公司,时候到了我自然会去找能让我感到吃力的地方。另外唐骏,我不了解他是不是个骗子,可能他是。不过他成就很大,得到了广泛的承认,我不如他,所以想汲取好的地方,或者给我启发的地方。我觉得hcg,如果你能达到唐骏的成就,你就有资格骂他。不过从已经过去的经历来说,不可否认人家是凭自己本事进的名牌大学,去的日本名校,没有半点虚假,这点你已经落后了,你认为他的能力没有让人学习的地方么?

  10. 你的几处逻辑我不能理解。你说你的工作充实而有压力,迫使你学习,我理解。可你说百度雅虎的同学反而没有进步空间,我无法理解。按你的意思,百度雅虎那帮人都是有困难找大牛的打酱油的?恕我不能苟同。就我在百度之星结识的一些准百度实习生而言,他们过去没有打酱油,以后也不会打酱油。何况就算你的同学在打酱油,也不代表所有人都在打酱油——这本就是因人而异的事。按你的逻辑,岂不是只有小公司的基层才能锻炼出牛人,而进了研究部、或者那些一毕业就进了google微软百度的反而没有进步空间——这让那些系出名校名企一路坦荡的人情何以堪?再者,百度雅虎那帮抗大事的大牛们都是从哪来的,全是从小公司挖来的?我更不能苟同了。一个不能培养大牛的公司不可能有百度雅虎今天的地位,而从另一个方面说,雅虎倒是一直在为别的公司输送大牛。

  11. “如何处理事故,如何分配紧急异常,如何保证整体进度和工作效率,如何保证高负荷工作量下的人员合作关系”,按你的逻辑,这又是小公司的基层人员才能体会的工作啦?你们的研发部就学不到这些?你们的研发部学不到,跳槽到别公司也学不到,只有你现在所在的岗位才能学到?换言之,我这个做校内工的自然连新人都不算,可你也才工作一年多,你怎么知道那些去了雅虎去了百度的工作是什么样的?可能你认识的同学都是酱油男,可我认识的偏偏都不是酱油男。

  12. 最后,我怎么都觉着你是在给自己找借口呢?一方面认为自己是大牛(七十个人中你的编程能力都前三了),一方面工资又不是大牛的身价(虽然你自己没有不满)——于是说,这是一种锻炼,十年磨砺,只为第十一年身价陡增铺垫云云。这个逻辑的问题在于,如果我可以让我的工资呈线性增长,何必让它呈级数形式?你已经是大牛了,我还不是,但是我希望自己是。你成为大牛的方式是劳其筋骨饿其体肤,这个苦我吃不了。我的逻辑很简单,从基层做起,如果觉得实力超出了我的待遇,我就一面偷偷找别的工作,一面暗示老板加薪——如果我能找到薪水更高的工作而老板不给我加薪,我就跳槽;反之则证明我能力不够,缺练——这样,我的工资始终跟我的能力在一个水平线上。美国人就是这逻辑,中国人慢慢也会有这逻辑。

  13. 你不理解我可以理解,我再给你解释。1,百度雅虎的同学反而没有进步空间,进步空间确实不大。无论是产品,架构,质量,发展,都已经由有经验有实力的人操控,遇到攻坚战,只负责自己有限模块的下层人员有机会参与战略讨论么?有把自己的想法赋之实践的机会么?有犯错的可能么?他们日常接触的,是关系整个工程的“正真的困难”么?相反,在一个业务为主的,不那么牛的公司,更可以接触到最有学习价值,最能积累实战经历的地方。只解决不了两个问题的人和只解决不了一个问题的人,价值差距不大;但能cover住所有问题的人,会比上两中重要的多。所以,所有困难都由自己或者自己主导着解决的地方,比那些只能跟班模仿的地方,更有理由让我留下。你说因人而异,正确。在小公司更有懈怠的理由,我承认我没有一个充满实际问题的环境就会激发不了自己的潜能,你可能可以自己激发。但不可否认,困难造就人才适用于大多数人。

  14. 2,我确实不知道某些公司的工作情况,但试问,技术层面上的上层稳稳的站住位置,他们不会把重大问题推给底层。就算留足锻炼的机会,那“自己不解决就得承担责任”和“自己不解决就会被上级骂”这两种情况就能一样的了么?确实牛逼公司有很多别处学不到的东西,但是牛逼公司我随时有机会进,啥时候学都不晚。但能负责整体项目的机会,能留给一个只处理过模块级别问题的人么?如果他是牛逼公司,那更难,因为牛逼公司有自己独有的一套开发中间件,适用不到别处,要想参与核心产品,你只有等在自己公司,等牛人们离开。管理人才和技术负责人输出到小公司的牛人确实是空降,但底层人员等不及升迁往小规模弱技术的公司跳,就能提高自己的地位么?除非那个公司太次。

  15. 实力和工资相符绝对合理。如果能在提高自己的同时,能够获得加薪,肯定是锦上添花的事。但谁能保证自己两条线一定均衡?管理层有自己的核算标准,人才选拔只选合适,不需要越高越好。另外工资的变化与公司发展境况也有关系,是个人掌握不了的,如果自己一味以加薪为标准,不满意就跳,是很少有机会取得管理者的信任,获得重任的。举个真实的例子吧,我们公司一个部门的技术骨干,掌握核心产品,两年前惠普北京负责人给双倍工资挖人,人没走,人说:我责任未尽。如今他已经是那个部门的总监了,作为Insider List的成员,拿着股票分着红,工资就是个数字。如今惠普总部又来挖人,让他当惠普北京的负责人。你认为他当时进惠普,能代替别人的位置么?不管他当时的真实想法是什么,这个事本身没有值得思考的地方么?

  16. 另外我不去公司的研发部也是这个原因:研发部大牛设计主体架构,人员负责模块,就算你是产品经理,也只能接触到一个产品线。我们公司是半研发办本地的开发模式,本地开发量和难度和研发部持平。研发开发没有压力,不需要责任心,出了问题怪本地,有了bug赖QA。但本地人员直接面度客户压力和业务压力,能了解易于发生的问题,最重要的是,本地接触各类产品线。所以我们公司的管理人才培养,90%取自本地骨干力量,少有用研发的。我们的大区总监跟我们谈话的时候就说,研发部处处是短板。根本承不了多少水。只有本地人员,才有全面的能力。所以我现在还在这混,也许是领导忽悠我,但以我接触到的研发人员的水平(无论是处事水平,交流水平,还是技术水平),我觉得领导讲的有道理。

  17. DYF说的话很有道理,值得思考,但是关于大公司与小公司的人员区别,这段文字是我看过的描述得比较到位的:大型外企更像是一个集团军,分工很明细,炮兵、步兵和枪兵,各个兵种俱全。指挥官不追求每个人都是神枪手,指挥打东不要打西的就合格,听指挥,贯彻执行指挥官命令的就是最好的,整个部队的灵魂是上层的指挥官。这样的优点是能打大仗,缺点是单一兵种或个人拉出来生存能力不强。 民营企业都像是个游击队或者是特种部队,每个人都能独当一面,是双枪老太婆,单拉出来都能消灭敌人,没有指挥的时候,自己独立生存能力非常强。这样的优点是每个兵的生存能力都很强,缺点是打不了大仗,没法规模化作战。 外企的集团军在打大规模战役的时候,可以很轻易的消灭民营企业的游击队,民营企业的游击队在打小规模战斗的时候,也能利用其灵活多变的优势消灭集团军零散出来的单一成员。 集团军最大的特点就是随便换掉某个人甚至某个团队对整体没有任何影响,游击队就不能承受这种变化。

  18. 所以我们不能说这两种有什么优劣之分,只有适不适合自己。毕业1年我待过了3个公司,有两个是500强的大企业,也有十来个人的小公司,从目前的感觉来说,大企业可以作为自己的第一份工作,工作流程合理,管理规范,对新人的压力不会太大,而毕业的2~4年可以考虑去小公司混一混,就像dyf那样,可以最大限度挑战自己的能力,但是作为IT业的,比较现实一点的归属,还是在大公司里养老,听着很没志气,但确实是无奈之举,如果不是对技术能保持长久热情,在外面飘荡还是很没安全感~另外,我不知道我的经验对你有没有什么启发,我不是技术特别好的人,对学新技术也没有太大动力,除非是工作上感到压力了,才会被动的学习。但想要进步,我的做法就是专攻面试的技巧,应聘那些超出我能力的职位,强迫自己承受更大的压力,也能拿到远超过同样能力的人的薪水,何乐而不为~

  19. 自己喜欢的道路就是最好遍地的黄金都在现场,尽管现场经常受到鄙薄事实上最大的利益源泉是现场,在现场呆过,会很有助用全局的目光来审视整个链条。

Leave a Reply

Your email address will not be published.