记Thoughtworks一次糟糕的面试

       Boss直聘上投了TW, 三月某个周二的下午,TW电话过来。问一下离职原因,我说目前业务方向不对。HR介绍了一个TW,问从哪些途径了解TW等。谈到TW的分享文化,我表示我在团队里面也经常分享。这样,你情我愿,上车了。HR说给我发一个 Homework,让我三天内完成。
       我回来查看一下邮箱,初步评估了下,Homework嘛,应该不是什么大项目,4小时内可以完成吧,就答应了周五晚上提交作业。
       Homework目录,pdf里面介绍了一下项目要求,ASSETS有一些切图和大图,后者就是前端写静态页面需要的PSD或者Sketch文件,但是这里给的图片。于是只能把这个图片放到Ps里面取色和测Size。另外有部分标注,但是并不全。上来这种杀马特的风格,写静态页面的条件是艰苦的。这里有个插曲,我拿到Homework,打开pdf,pdf里面有一些截图,但是不清晰,我以为这部分就是设计稿和标注, 让HR再发一份。HR回面试官说不影响完成作业。

目录结构:


主要需求就是完成这个一个后台管理系统,一个页面。

       因为上班995, 通勤时间3小时,工作日没时间,就找HR申请延长两天。周末边带娃边写代码,我用vue-cli生成单页应用,加了vue-router,写了基本的框架。大概花了4小时,把Homework提交了。

       4-3日HR反馈:作业完成部分工程化不错,让清明节假期继续完成全部作业。我以前在外企待过,比较扁平,同事比较Nice,而且在网上经常看到一些TW的技术文章。再看到面试官的反馈,我想如果我继续花时间完成作业,这工作可能就稳了。


       然后清明节我把娃支开了,写了两天代码。基本的封装,navbar,sidebar,appmain,公共样式都写了。好,作业提交过去。 

        三天后,中午12-15点面试,自带电脑。地点大冲商务中心,高大上。进公司后,比想象中的差了点,不是很活泼吧,第一印象是这样的。在会议室坐稳了,俩面试官进来,介绍了一下他们的名字。看年龄大概28,28吧。

面试官:HR让你提前装Zoom了吗
我:没有
连上外接显示器后
面试官:说说你的工程结构
我:....
面试官: vue脚手架生成的index.html和App.vue里面都有 id=“app”,你怎么理解的?
我:呃,实际上页面上并不会渲染两个id="app".这个我一时看不出原因。

面试官:作业里building和idle有两个icon,你为什么没做呢
我:漏了。
面试官:现在完成
我一边写,面试官一边说字号大小,颜色等。
面试官:这个icon图片给到了吗?
我:有icon font
其中build下边的齿轮icon是匀速转动的。我用css3转动并不均匀。其中一个面试官说balabala,试过没作用,另一个说少个linear。但是怎么加,我不知道,百度一下,搞定。
面试官:好。接一来,增加一个功能,40分钟内完成。
我看看纸质需求文档,需求是加一个Add Agent按钮,点击按钮弹框,弹框里面有几个input和按钮,点确认添加Agent.  考虑了一下,这功能可能要花我1个多小时。于是开始紧张的写代码了。先添加按钮。
面试官:这个按钮的样式可以copy其他按钮的样式
我:不是很方便找到其他按钮的样式,我习惯自己写。(vue文件template、js、css混在一起,我并没有分离。另外MBP写代码并不多,其实小屏也难操作的)
面试官:你一般写样式不在chrome里面调试吗?
我:有些样式我是确定,只有不确定的才会在chrome里面调试
我:样式这些东东是耗时间的,我先完成js逻辑吧
面试官:为什么呢
我:40分钟内我完成不了增加的功能,优先完成js逻辑比较有说服力。

中间卡住了,eslint报错。iTerm里面并不会指出哪里报错了。我加了/* eslint-disable*/也不行,很奇怪。
面试官:xx行 error,把eslint关了就行
我:有error关eslint也不解决问题呀。这里是warning.
面试官:xx行,加个空格
我改了,依然报错
面试官:改eslint配置
我:对不起,时间不多。我先按我的思路来
我关掉iTerm,打开vscode的Terminal, 哪一行出问题,直接显示了。解决之。
接下来处理收集表单数据,查mock-server add item的API。面试官提示了一下,增加数据成功。

面试官:时间差不多了。可以了。你觉得你刚才有什么要改进的地方吗?
我:呃。。。你们说说看吧。
面试官:组件如果提前封装了,可以节省很多时间。误敲后,回退,没有用快捷键。对vue脚手架生成的项目理解不够。对eslint不熟悉,又拿来用。
我:有面试者40分钟完成增加的功能吗?
面试官:有,写iOS的都有完成的。

然后等来的结果是:对不起。HR过来反馈,说结对编程和面试官互动不行。

     我解释一下,面试官的建议哈。
  • 组件提前封装:大的组件才会封装,按钮和input框定义基本的公共样式即可,若出现几个相似的按钮和input框才会封装组件。现公司的项目按钮也没封装,为何Homework你希望我封装呢。另外这个按钮的样式和Deny按钮类似,icon加文字的。但是实际上Deny按钮的显示在作业文当里面并没有说明,我也就没有做Deny按钮。
  • 后退快捷键:这个建议不错。不过不会快捷键并不会影响太大。
  • vue脚手架理解不够: id=”app“这块的确卡住了。实际项目里面用的是多页应用。这次用SPA是第一次用。毕竟之前鼓励我的把项目写下去,我都花了大量时间,面试官是不是应该找找项目里面的亮点呢?
  • eslint不熟悉: 面试官自己也不熟悉,出一堆主意,没作用。这东东用到就查,只不过当时时间不允许。

        这是我大小100次面试,体验最差的一次。TW让我花这么多时间做作业,换来这样粗糙地打发面试者。既然引诱面试者花那么多时间完成作业,为什么不重点考核作业呢?结对编程新增功能,大部分时间要花在样式上,而样式很多时候是要花时间调的,在原作业增加js逻辑功能是否更适合? 结对编程?半桶水在旁边瞎BB吧!
        thoughtworks这公司在互联网上名声还挺好,百度一下,形容词都是“人文光怀”。广告什么,就缺什么。“人文光怀”大概像是刘强东口里面的“兄弟”吧,说多了恶心。面试体验如此差,希望同样面试过TW的年轻司机,说说感受。

面试地点:深圳Thoughtworks。结对编程副面试官态度不错,主面试官态度很差。另外不满的是,没有基本的技术考察之前,就鼓励面试者做16+的作业。


转载于:https://juejin.im/post/5cbde536e51d456e6d1334ae

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Thoughtworks公司面试题——MARS ROVERS问题火星探测器 C# 实现 VS2010工程,带界面展示! 一小队机器人探测器将由NASA送上火星高原,探测器将在这个奇特的矩形高原上行驶。 用它们携带的照相机将周围的全景地势图发回到地球。每个探测器的方向和位置将由一个x,y系坐标图和一个表示地理方向的字母表示出来。为了方便导航,平原将被划分为网格状。位置坐标示例:0,0,N,表示探测器在坐标图的左下角,且面朝北方。为控制探测器,NASA会传送一串简单的字母。可能传送的字母为: 'L ', 'R '和 'M '。 'L ',和 'R '分别表示使探测器向左、向右旋转90度,但不离开他所在地点。 'M ' 表示向前开进一个网格的距离,且保持方向不变。假设以广场(高原)的直北方向为y轴的指向。 输入:首先输入的line是坐标图的右上方,假定左下方顶点的坐标为0,0。剩下的要输入的是被分布好的探测器的信息。每个探测器需要输入wo lines。第一条line 提供探测器的位置,第二条是关于这个探测器怎样进行高原探测的一系列说明。位置是由两个整数和一个区分方向的字母组成,对应了探测器的(x,y)坐标和方向。每个探测器的移动将按序完成,即后一个探测器不能在前一个探测器完成移动之前开始移动。 输出:每个探测器的输出应该为它行进到的最终位置坐标和方向。输入和输出 测试如下: 期待的输入: 5 5 1 2 N LMLMLMLMM 3 3 E MMRMMRMRRM 期待的输出 1 3 N 5 1 E
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值