「前端」快手二面面经(已约三面)

整体感觉面试官非常不友善,从最开始的自我介绍环节就开始了,我每次面试自我介绍的时间都控制在 5min 左右,即使有打断的我也没觉得有什么态度上的问题,毕竟人家可能是真的对项目很感兴趣才会打断问你;结果这个面试官在我介绍完项目后,有个部分也就两句话就能说完的也不让我说,整体讲完之后还说“别的面试官是会打断你还是让你说完”,整体给我的感觉就是非常不耐烦。

然后开始正式的面试环节,他说看到一面的面评说我的coding能力很强,但是对于一些原理方面的理解偏弱,于是就开始了对我的简历进行关键词提取,挨个问原理的拷打之路。

  1. 针对我项目中集成了 Sentry,问了一些性能指标的含义,然后问我 sentry 具体是如何进行性能分析和错误处理的?
    1. 这里之前好像也被问到过,写面经写完了忘了总结这个点了,现在总结一下
    2. 性能分析:像LCP和TTFB这样的指标是通过BOM的Performace API和Resource Timing API来进行测量的,具体来说他们都提供了对应的事件,只需要通过js来监听这些事件来捕获时间点即可;
    3. 错误处理:可以通过 window.onerror window.onunhandledrejection 这样的api来对错误/未处理的 Promise reject 进行捕获,然后通过Error.stack这样的来提供对应错误的上下文;包括打包工具可能会对原始代码进行压缩和混淆从而导致报错信息难以阅读,sentry还支持上传source map对错误信息进行优化
  2. 你用 tailwindcss 的时候如果有很多组件需要同时修改样式怎么办?
    1. 封装成一个类就行
  3. 这个封装类是如何实现的?
    1. 当时答的有点答非所问
    2. 通过原生的 css 类选择器加上 @apply 操作符去应用 tailwindcss 的原子类
  4. 用过什么状态管理库,为什么用,为什么不用 Provider
    1. 用的 pinia,因为 Vue 官方推荐的就是这个,Provider 其实也可以,只是当时这么实现了
  5. 看你用了 MongoDB,为什么选择这个?
    1. 因为 NoSQL 的数据库非常适合使用 Vercel 这样有微服务的平台去做部署
  6. 对结构化数据库和非结构化数据库有了解吗
    1. 不了解
    2. 前者就是 mysql 这样的数据库,以表格形式存储,使用 sql 语句进行查询;后者就是 mongoDB 这样的数据库,以 JSON 格式存储,结构灵活,容易扩展
  7. 看你 node 涉及的比较少,为什么不自己写个 node 服务?
    1. 尽量还是专注于前端,其余的部分先使用轻量化的东西顶顶,后续有精力了再去做
  8. 手撕
    1. 链表反转
    2. 实现一个线程池,有固定的线程数,每次发起时如果小于上限则直接执行,如果大于等于上限则等待空闲再执行
  9. 前端的学习路线
    1. 三大件+框架,然后写项目练手,提到最近在看红宝书加深一下对 js 的理解,质疑我红宝书是用来练深度的吗?(我发现压力面的面试官都非常喜欢质疑,不管你说啥不是否定就是质疑)
  10. 原型链相关八股
    1. 这里开始拷打,我答的一点问题没有,他就非要纠结 _proto_ 和 Prototype 的中文翻译,甚至有的问题自己都没搞清楚
  11. 反问环节

当时面完我觉得已经凉了,没想到就在写面经的过程中收到了约三面的电话;真的很奇怪,有时候你面完觉得稳了,跟面试官聊的和和气气,面试官也全程面带笑容,然后面完就把你挂了;有时候面试官又压力拉满,不苟言笑,但又给你过了,真是让人有点啼笑皆非。

#快手##前端##快手求职进展汇总##秋招#
全部评论
你这是工作几年了,还是应届生啊
点赞 回复 分享
发布于 09-06 11:06 北京
佬,线程池那题怎么实现啊 我问gpt写了一堆
点赞 回复 分享
发布于 09-07 00:12 新加坡
天翼云科技有限公司
校招火热招聘中
官网直投
中文是隐式原型吧
点赞 回复 分享
发布于 昨天 13:22 浙江

相关推荐

09-04 23:35
已编辑
武汉理工大学 前端工程师
三面面试官应该是leader,聊的很愉快,也从他那里得到了很多经验和建议,很真诚,很用心的一个面试官,想必在组内也有很好的评价。三面总体来看是去了解你的思路和业务能力,包括遇到问题的处理方式,代码题考的就很简单,不是主要目的。三面只要思路敏捷,认真沟通交流就没问题1.在字节这边做的技术上的一些事情,是否还有优化的空间2.配置的路由json是如何获取和存储3.实习相关的一些事4.实习开发完的需求有没有回头看下有什么优化的点5.在实习过程中做过的复杂度最高的功能点或者业务是什么6.如何在数据上去设计优化提到的功能点7.在校项目介绍8.地图瓦片(没听说过)9.Vue和React的状态管理用的是什么,Pinia和Vuex的区别是什么10.在实习的时候状态管理工具的选型有没有跟mt了解过为什么选这个11.hook用过哪些,了解差异吗12.“副作用”怎么理解?它是一个什么样的概念13.转正情况了解,觉得字节这边的团队和业务适合自己吗14.手上offer情况和秋招情况了解聊天:互联网目前的就业形势和风口代码题:将“get-element-by-id”变成“GetElementById”和“getElementById”,顺便考察了一下map和forEach的区别反问聊天十五分钟面试官给了一些很好的建议,在未来的一到三年要好好磨练自己的技术,并且在做事的时候往深想一层,考虑更多的细节,多关注技术,多思考。感受到面试官很用心在跟我交流,非常感谢快手,很好的面试体验#想实习转正,又想准备秋招,我该怎么办##快手##快手求职进展汇总##前端##秋招##软件开发笔面经#
点赞 评论 收藏
分享
8 14 评论
分享
牛客网
牛客企业服务