北京青橙科技面经-遇到了一个快慢刀但很有耐心的面试官

  首先非常打脸,我上周二才发了一个帖子说我去年11月开始到上周二没有一个面试,并且附上了简历过来找问题,结果没过几天就接到了一个面试通知。帖子:96年硕士后端求职10个月的情况

面试过程

开场

  初创公司的面试流程可能不太规范,或者是急于招人,就只有一面,没有笔试题,也没有自我介绍环节,面试官直接就是项目主管。   一上来面试官就拿着我的简历问我上家公司的情况。我就直说了是在导师实验室打工,因为我也不想欺骗潜在的未来领导或者同事,尤其是在这种小团队。面试官看上去有一些失落,说以为我是在企业实习(说明我简历优化的可能还行),可能和预期有一些偏差,表达了只会招一个后端和一个前端的情况。之后就聊了一会儿,我表达清楚我在导师那里其实和普通实习也差不太多,虽然可能经历有点水,但是大方向和真实企业差不多。于是就获得了继续往下聊的机会。

聊项目环节

  这个阶段,面试官会引导我说出项目中的亮点,比如觉得自己之前哪个项目比较好,哪个功能比较好。我想了想,因为我简历的云图库其实是有一些“过度设计”的。比如说云图库的一个主要功能应该是存储图片、防止其他人访问隐私内容、存储和流量成本控制、AI调用成本控制以及会员机制这种功能。但是为了简历好看,我就加了一些多级缓存,缓存同步机制,微服务,还有C端交互比如说点赞评论。但是在一个挺资深面试官的面前,我不敢提这个,因为是过度设计,比较脱离现实场景。(如果面试官是2-3年的经验,可能我会多提这种项目。)   因为我在企业中也有自己研发过项目,虽然是个测试开发架构,不是Web应用,但也没有其他特别拿得出手的东西了,就只好主要说这个。在说完了那个项目的需求,以及为什么会启动这个项目的开发之后,我短暂的犹豫了一下。还是那个原因,这个面试官给人感觉非常资深,我很担心我说一些代码内容会被反感。所以我是以架构、某一个功能背后的真实需求和每一个功能的设计,这几个方向去叙事的。但其实面试官的思维是很清楚的,我的年限并不高,所以他对我的期望也没有那么高,他更想听实现层面的信息。 这也就导致这段沟通起来很混乱,甚至因为时隔多年,有些细节我真的忘记了,再加上我一直以非实现层面去聊,导致沟通过程没有涉及到比较多的技术细节,进而导致面试官对我的印象转变为“沟通能力有所欠缺”。 不过最终还是聊清楚了我的那个自研项目,面试官对我的解决问题的意识以及能力还是表示了认可,所以有一点勉强的继续面试。这时面试已经进行了30分钟+   也可能是没有聊到太多技术细节,面试官换了个问法,问我这些功能里面有没有用到一些设计模式,锁之类的东西。这个时候我意识到,刚刚那段的沟通可能比较无效,然后也不能只提一个很多年前的自研项目,需要在近期项目里挑选功能。其实我因为很久没有面试,这个时候就已经累了,所以我选了云图库的图片上传功能,有本地上传和URL两种模式,因为大体流程差不多,所以可以用模板模式,我就这样回答了,因为这个功能比较小,想缓一口,也觉得面试官还是会顺着去问怎么实现的。结果万万没想到啊,这个面试官直接切了一招慢刀,问我有没有更好的设计模式来实现这个功能。 我懵了,内心想,啊?回答一个if-else?能实现,但是我当时觉得他都说了需要结合设计模式,我不能答一个这种答案。犹豫半天,硬挤了了一个策略模式,结果正好落入面试官的圈套。(在结尾的时候他说问我这个问题的时候,我表现的有点虚……下次还是应该自信点,这种功能硬上设计模式应该就是模板比较适合了。)之后就聊了一会设计模式的应用。时间上大概来到了43分钟+.   面试官还是继续问我有没有什么自己感觉做的比较好的功能,以实现层面说。这个时候我被他刚刚那一套快慢刀已经搞迷糊了,支支吾吾半天说不出来什么。面试官看到我有点欲言又止,就开始给我出场景题,可能也是想最后捞一下。

场景题环节

  面试官说:现在有一个停车场,出门需要扫车辆的车牌号,然后车上的人扫二维码去支付,那么车上三个人一起扫码支付,有一个人退出了支付,另外一个人想支付,这辆车上的人没人支付,把车开到一边,后面的车过来支付,这些情况怎么处理?有一个算一个,回答出来就行。(这里我故意用了一大堆逗号写了一个长难句,也是想用文字体现出当时面试的时候,我听到的一个问题)   因为前面那些场景挺复杂的,再加上“有一个算一个,回答出来就行。”在真实的口语表达里有点模糊,我没Get到他希望我分点回答,所以我就想了半天给他一个整体的方案。(后续再被问到场景题,我一定先问清楚了是想让我整体设计一个方案,还是分点回答)   结果就又是造成了沟通不畅。纠结了一会儿把前面两个小场景说清楚了。但是第三个场景,他问,如果第一个车上的人不是不想支付,而是三个人手机都没信号,结果开到一边,下一个车过来扫码,这两个能不能一起支付。我理解,这不应该是俩个单子一起支付么?那用车牌号绑一个订单,各付各的,上一个车再过来扫个码,看订单状态支付成功了就可以走了。结果就被教育了……面试官问,那如果说一个车跟着前面的车,抬杆了一起走,怎么办?如果说一辆车他进这个停车场扫了个进场单子,结果立马扫出门码,停车出去玩了,怎么办?我赶忙表示,我没有驾照,确实是没想过这么细致,也没想到这么人心叵测……我说想采用地铁那个方案(想表示不能连续扫两次出门),但是这个时候已经语塞了,支支吾吾。面试官看我支支吾吾,就结束了面试,开始总结问题。说我没有涉及到太多的技术细节。说我沟通有点问题,看起来过往经历像是有人直接把需求扔给我就去做了(倒也确实……),没有太多团队协作的痕迹,能看出解决问题的能力,但感觉沟通不畅。 面试时长差不多75分钟。

总结

  关于这次面试,虽然失败了,但是也学到了很多,也非常感谢那个面试官给我支出具体问题帮助我改进。他说也不想让我白来一趟。我做了下面几点总结。这周到目前没有约面,下一次不知道要多久……希望到时候能用上吧。   1 通过这次面试,我了解到,我是2年左右,还是以执行为主,面试官也会以这个方向对我做期待。我不应该因为面试官看着比较高级而去以架构和设计方向叙事。   2 面试是一个博弈的过程,应该时刻提防快慢刀,比如前面一大部分顺着面试者提问,突然一个切手质疑面试者的实现方案问题。那种时快时慢的反倒好,有个明显的段落感,这个快慢刀确实没遇到过。   3 平时应该顺理好项目的业务逻辑以及数据流向,防止对面快慢刀切手的时候卡顿太久,被一套连招送走。   附加,简历优化可以,但是项目不能纯编。在沟通过程中,面试官表示之前有几个面试者被他查出来项目是纯编的,直接结束面试。

0个评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
午后茶
下载 APP