五一前,ThoughtWorks与拉勾网一起举办了“抛弃简历,用代码说话”的活动,http://www.lagou.com/subject/s_thoughtworks.html 在CNode得到了大家的热烈讨论。http://cnodejs.org/topic/535f19f64eac85ae11011d50
现在活动已经圆满的结束了,多谢大家的关注以及参与。(此处响起热烈的掌声👐 http://weibo.com/p/1005052262501975/weibo?from=page_100505&wvr=5&mod=headweibo
活动前期公开接收代码作业,后期代码评价以及面试都是非公开的,你们是不是很好奇?我们收了大家这么多代码,都是怎么处理的,没有接到电话是不是就代表没有机会了…众多的问题,看我今天一一扒出!
1.这次“抛弃简历,用代码说话”的活动,收到超过1000份的代码作业,其中用到的语言真的是包罗万象,包括java,python,C#,C++,javascript,ruby,shell (bash),objective-C,C语言,JS,Lua,whizz,php,Haskell,go,Racket–scheme,scala,linux-64bit,bat… 这么多种语言,别人晕不晕我不知道,反正猫姐是晕了。
2.中国有多大,代码提交的地点就有多大我们收到的这些代码来自五湖四海,北京、成都、广州、杭州、深圳、上海、重庆、岳阳、武汉、三亚、桂林、南昌、厦门、南京、湘潭、西安、天津、珠海、长沙、沈阳、郑州、大连、昆明…还有新疆阿克苏和台湾新竹,猫姐表示震惊! 在此也特别声明,代码作业通过了的异地求职者,ThoughtWorks会继续跟进,尽快与你取得联系。
3.千奇百怪来自各地的代码作业,看作业的TWer们也是频频吐血,我们来看看他们的奇葩点评。 ①单行太长,想酷,并不容易 ②作为半年多的人,肯去查api用函数式去做也不容易 ③……我看他用github且去github看了一眼readme觉得问题不大…(面试官,猫姐给你点赞) ④提交一个exe是几个意思? ⑤能看出用心了,但是单元测试做得一般,说明文档写得不错 ⑥为什么会有一个叫(与面试官同名)的写android程序的小伙?(你们是兄弟不?)
4.面试官在评审代码时,遇到很多典型的问题,不得已“痛下杀手” 想知道你“死”在哪里?想知道你“冤”在哪里?请看这里👇👇👇
a.遇到很多过度复杂的实现,比如31类/接口的Java实现,虽然运用了很多设计模式,具有“扩展性”,但是代码过度复杂带来的坏处已经超出了设计模式带来的红利。 b.没有完全实现题目的要求,有的没有实现规则5,有的干脆没有输入、输出。纵然有些业务规则会让干净的代码变“脏”,但企业级软件开发的现实就是这样子,必须要先满足业务需要,然后再让代码变得好看、好读。 c.只有单身的源代码,没有伴侣测试、构建、说明,需要花很大精力才能运行起这段代码(有些甚至要补充一个main函数)。有些文件还是.txt格式,面试官已经哭昏过去…😂 d.题目中明确要求降低圈复杂度,有些同学没有足够重视。 e.运用不同范式的语言,却没有范式背后的思想,比如有些Haskell代码,没有使用map去遍历集合,却在使用for循环;很多Ruby代码,写完后一看,这不是Java嘛!是谁把你们掰弯了?!😂
很长一段时间,ThoughtWorks都被称为“最难面试的IT公司”,在这次活动前后,我们也一直在讨论这个问题,我们真的是最“难”面试的吗?我们的面试“难”在哪里?所以在拉勾网结束前,我们与 Teahour Daniel @lgn21st 一起发布了一期谈话,主题是:跟ThoughtWorks的面试官聊聊面试这件事。
希望能够通过这期谈话,为自己正名。
我们不是最难的面试,我们希望做最涨姿势的面试!
Teahour在线链接:http://teahour.fm/2014/05/09/job-interview-at-thoughtworks.html