时隔一个月,我又来分享面试经历了

32 天前
 lijianan

时隔一个月,我又来分享面试经历了(话说今年找工作已经离谱到这种程度了吗)

挑几个觉得抽象的公司分享一下(都是最近面的):

第一家:

公司背景:base 上海,规模不大,20 人不到

一面挂,面试过程中一点技术不问,简历上的技术和项目一点不问,抓住 SEO 优化埋点相关异常上报 相关的问题不放,聊了一些过往的相关经验,但聊的不是很深,最后对方说,他们招聘非常谨慎,他们需要 C 端经验比较丰富的候选人,而我的项目经验大多偏 B 端,所以短时间内应该不能给我答复(说到这里我也不抱希望了,简历上写的很清楚,方向不对口,干嘛还约我面试)

第二家

公司背景:base 上海,规模不大,20 人不到,AI 方向

首先是笔试题,一个难度比较大的算法,参考 GPT 答案写出来了,然后是一面,问了一些常规的项目和技术,过程不是很顺利,本来以为挂了,没抱希望了,没想到过了一周 HR 通知过了,然后安排了二面,二面是系统设计,面试官是后端负责人,题目是 设计一个酒店预定系统,共享屏幕,写了系统设计的过程,重点写了 需求分析技术选型接口设计 三大模块:

  1. 需求分析:包括 功能需求非功能需求,功能需求包含登录注册、浏览列表、搜索酒店、预定房间、支付逻辑、订单管理、用户评价打分、取消订单等等模块,非功能需求包含了性能优化、扩展性设计、UI 、交互优化、安全性、用户隐私、埋点分析等等模块

  2. 技术选型:主要对比了前端的不同领域、不同技术栈的区别、以及每个 lib 适用的场景,这块是比较拿手的东西,感觉没有什么问题(但是由于对方不是前端,所以不确定有没有听懂我说的)

  3. 接口设计:参考上面的需求分析做了 api 设计,包括接口 api 命名,详细到了接口入参出参(顺便对比了 GraphQLREST ful 两个规范的区别和优缺点)

一套系统设计下来,大概写了 50 分钟,差不多一页半文档,个人感觉没啥问题,最后还是挂了,没给原因(另外前端的技术一点没问)

第三家

公司背景:base 杭州,规模不大,15 人左右

一面线下,中午两点跑去公司聊了一下,当时是杭州最热的时候,地表温度 60 度,到家之后发现鞋底子都融化了,聊的过程比较顺利,项目经验也是非常对口,但是负责人说他们老板比较看重学历,一般需要 92 起步,所以要先帮我问问

问了之后说可以约二面,然后约了二面(先说一下,这家老板是真的看重学历,但是很离谱,他自己又不愿意承认,也不想把这个事情搬到台面上来讲,所以二面专门安排了不懂前端的 AI 工程师面试算法,应该是打算让我知难而退,当然了,这些只是我的猜测,如果不是,算我冤枉了你):两道算法题,一道 easy ,一道 hard ,限时 50 分钟,最后用了 45 分钟,全做出来了

然后到了老板面,上面说了,老板很看重学历,为了让我知难而退安排了算法面,结果没想到我过了,然后不回我消息了,再然后第二天,负责人回复说,老板又仔细看了一下简历,还是觉得学历不行,学历不行就是潜力不够,所以决定不给我通过,到这里我已经无语到懒得回消息了,那一开始干嘛约我面试呢

第四家

公司背景:remote 办公,规模不大,20 人左右

首先 Coding Test ,需要编写一个 Server 应用,应用内容是一个 User Profile 页面,包含展示用户名、性别、手机号、邮箱等字段,所有字段需要 支持编辑和保存,并且需要持久化保存到数据库,包括后端接口都要实现,自行选择 DB library ,最后还需要部署到他们公司的 server 上面,并且给了详细的文档,教你怎么操作,并且还建了专门的 Testing 答疑群,遇到问题的话可以在群里问,完成之后需要把代码提交到 GitHub 个人公开仓库里面,然后回复邮件,限时三天,Coding Test 通过之后才可以正式约面

这里实现功能大概用了半天时间,包括前端页面和后端接口(vite+React+antd+nest.js一把梭),难点在于 搭建环境 & 构建过程 遇到很多坑,包括启动 server 实例创建应用初始化应用模板,这一些列操作都需要使用 他们自家的脚手架工具,折腾这些的过程中遇到很多报错,后面问了一下才知道,他家的脚手架不支持 windows 系统,目前只能在 mac 上运行,没办法,为了完成 test ,我又在本地装了 docker,在 docker 环境里面运行部署操作(庆幸我的系统是旗舰版 Windows ,因为 docker 不支持学生版和家庭版),后面部署在本地节点的过程又遇到一些列问题,不清楚是他们的脚手架有问题,还是我的环境有问题,折腾到这里,已经打算放弃了,于是回复了邮件:目前已经花费了两天时间,精力有限,还需要时间去准备其它公司的面试题,所以到此为止了。

虽然最终没有按照要求把应用部署到他家的容器上,但还是把代码传到 GitHub ,贴在邮件里面了。本来以为笔试没过,没抱希望了,但是过了几天 HR 通知笔试过了,可以安排面试。

接下来是一面,过程 90 分钟,聊天大概 30 分钟,问了一堆八股文,剩下一个小时都在做题,具体什么题目想不起来了,总之难度不高,做完之后时间还没到,面试官又要求换个 api 实现,也做出来了(一面遇到的所有问题,答案都需要共享屏幕写出来,不能光用嘴说,包括八股文,1234...每一点都要写出来)

第二天通知一面过了,然后又约了二面,二面同样 90 分钟,聊天大概 20 分钟,剩下一个多小时都在做题,场景题:需要实现一个 移动端的九键输入法,刚开始拿到题目的时候觉得很简单,但是真正写起来发现有很多细节需要去做,首先简单的布局,除了 12 个主体数字按钮,还包括一个拨号按钮、一个退格按钮,然后部分数字按钮下面有字母,比如 数字 2 对应 ABC数字 3 对应 DEF,短时间内连续按同一个键时,需要从数字切换到字母,这些细节都需要处理妥当,在实际编码的过程中,发现有三个 case 需要处理:

  1. 两次按键是同一个键,未超时,反复点击时修改最后一个字符
  2. 两次按键是同一个键,已超时,点击时追加数字
  3. 两次按键是不同的键,点击时追加数字。

核心逻辑:用 currentKey 记录当前按键、用 letters 记录当前按键包含的所有字母、用 letterIndex 记录当前是第几次重复按下,也就是切换到哪个字母,然后用一个防抖记录按下同一个键时是否超时,最后用一个 inputValue 记录所有按下的键,一顿操作之后,最后大概实现了 80% 的功能,时间到了,被面试官喊停了,测试的过程中发现了一个小 bug ,但是主要逻辑没问题,实现思路也没问题。所以我猜应该能通过。然后面试官又想让我实现一个 T9 输入法(实际上我都不知道什么是 T9 ,还让对方给我解释了一下),但是时间有限,对方只是让我说了思路,这里我提到跟自动补全的思路有点像,首先需要一个词库,然后预处理,先把词库变成数字组合(方法有很多,正常的匹配思路就是一个个找前缀),但是实际的实现肯定更加复杂,我就说不出来了,但是我又提到了 Facebook 出品的 lexical 富文本编辑器,这个编辑器内置了自动补全单词的功能,我告诉面试官,我看过这个源码,里面就有一个很大的词库保存在本地。

到这里二面就结束了,其实我已经失去耐心了,毕竟在这家公司上投入的时间和精力已经远远超过了其它公司,前面的笔试用了两天,后面的两轮面试又花了四个小时(因为失业的时候作息比较乱,白天都在睡觉,强制起床参加面试,还要把精神最好的一面表现出来)

再然后 HR 通知二面过了,又约了三面(又是 90 分钟的过程,包含一个大的场景题,我是真的头大)

三面约在周末中午,先是聊了一下二面的场景题,问我后面实现的出现了 bug 是什么原因,其实我真想说是因为时间不够,然后聊了 20 分钟的项目亮点和难点,又到了场景实现环节了,他说他比较喜欢考察移动端的九键输入法,但是二面已经考过了,所以三面换一个场景,实现一个谷歌日历,我真是两眼一黑。核心功能:以天为单位,精确到小时,垂直布局,显示 24 个小时,区分上午下午,并且当前的时间要显示一条高亮的线,并且支持事件预约、调度,被预约的时间段高亮显示,如果同一个时间有多个事件,那么高亮部分也需要重叠显示,大概这些吧,基本和谷歌日历一模一样,过程懒得说了,结果就是只实现了一半,点击当前时间可以选中进行预约,支持当前的时间显示一条高亮的线(这里计算的逻辑浪费了十几分钟,要计算当前的分钟是一天当中的第几个分钟,然后计算出这条线的位置,并且需要用定时器,每隔 1s 更新当前时间,然后计算 div 高度,对这条线进行偏移)到这里基本上一个小时过去了,时间不够了,被面试官打断了,也没有给反问的机会,直接结束了面试。到这里已经基本猜到挂了。

到这里,我并不觉得是自己的问题,一个小时实现出这个场景,在我看来是一件不太现实的事情,毕竟在以往工作中,类似的需求排期都能给我一周时间,再想起来当初 antd 的 DatePicer 组件重构工作,就连强如豆酱这种级别的巨佬,当年也重构了两个月。(虽然不是一个量级的)

然后果然过了两个小时,HR 来通知我三面挂了。

总之在这家面试中投入了巨大的时间和精力,最后突然觉得很不值得,早知道不如笔试题直接给我挂了,也省的约面试了。(另外其实我比较好奇这家公司的面试通过率是多少)

后面还有两家抽象公司,懒得记录了

最后只想说一下,按照这些标准的话,现在在职的员工重新入职,保守估计有 80% 都进不去

最后附上个人简历,杭州求内推:

24050 次点击
所在节点    职场话题
206 条回复
xiao8276
31 天前
我看着都脑壳麻了,很难想象 op 的精神状态
zhw2590582
31 天前
是我的话,估计就放弃找前端工作了,不想背八股文了
caiji11
31 天前
@poltao 结合上个帖子一起看
wudashan
31 天前
不说公司名,等于没说
ZGame
31 天前
加油 大佬很强了 我感觉
channg
31 天前
@xiaozhang1997 #14 因为之前帖子都是大公司的
JamesFisher
31 天前
看到 op 的经历,我感觉现在前端面试是地狱难度,这些小厂的面试题我一个不会
jalr4ever
31 天前
考虑来深圳么?
Felldeadbird
31 天前
技术很强啊,祝福楼主找到工作。这么强的人才都找不到工作,有点可怕了
littleG
31 天前
感觉第四家有点像故意挂,可能是找到合适的了。故意找个难度高的让楼主面试挂掉。
Orangeee
31 天前
第四家这样的公司就是太把自己当回事,你值得我投入这么多精力吗,OP 的耐心确实挺大,换一般人三面直接溜了。
EndlessMemory
31 天前
为啥挑这些小公司投?
aker91
31 天前
你的第四家经历我也参与了,确实抽象,不过也有我自己的问题,看了你的分享,现在巨庆幸

给不知道的同学说一下,这家是 ArcBlock ,在电鸭和 V2EX 都有招聘,hr 相比其他家异常好沟通,之前不知道原因,看到你的经历就明白了

首先 hr 说有三次笔试,每次大概两三个小时,我觉得没问题,就接受了,题目本身非常简单,但是要求用他家脚手架和工具,那真是巨难用,我一开始就看到了不支持 windows ,所以直接开了个 ubuntu 虚拟机搞,结果就这三四个小时跑不起来,而且运行中各种问题,然后开始编写代码,我第一次代码写的很随意,然后挂了,指出的都是些非常鸡毛蒜皮的问题,不过确实是我觉得题目太简单,所以写的太随意,我跟 hr 表达了下后,hr 表示我可以重写???

然后我就按照两三个小时的标准去写,结果写了五六个小时,因为他们那套工具真是巨难用,尤其 nodemon 监听后端,热更新竟然要重新去他们服务器注册,改一行代码等小一分钟更新你敢信,写到后面耐心全失了,因为已经超过我很多心理预期时间了,匆匆提交了,刚才告诉我挂了,原因是找到了一个 bug ,我当时第一反应是,唉,还是应该检查下的,然后打开 V2EX ,就看见了你这帖子,心情瞬间就好了
sky9401
31 天前
小公司都是很抽象的,百人以下的公司都不要去面试,过去浪费时间干嘛
sharpy
31 天前
看楼主能力挺强的,要不面试的时候带个摄像头做视频发抖音,搞个新赛道,
youyouzi
31 天前
大佬这么强怎么“又”在找工作?我记得很久很久之前就在 GitHub 看到你挂求职的信息了呀,是到现在没找到还是怎样
K332
31 天前
还找不到只能换个城市了,杭州基本都被 op 面得差不多了
facebook47
31 天前
@chaleaochexist 985 、211
258
31 天前
离谱 太离谱了
AdminZ
31 天前
抽象的公司,杭州就没有跟你职业经历相似的公司?哪怕 70%也好

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1066039

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX