24.9.9 字节跳动-抖音-前端-北京 一面
面试官是个和蔼的姐姐,就是对我的回答没有什么反馈
- 问我是否还在腾讯实习,为什么转正失败
- 讲我做的项目中比较有挑战的,选了第一个参加的公司级项目,简单介绍了下
- 问前端监控服务内容,使用什么上报的(Aegis SDK)
- 如何发现错误(只回答了接口层面的错误发现,但是代码层面的错误如何发现没有回答出来)
- 有没有自动预警(没有)
- 项目中的性能优化 虚拟列表,理解不够深,还需要多去了解
- 还有什么别的性能优化(http 和 web 缓存,合并文件,现在感觉还可以多说一个 cdn 缓存)
- 讲下 http 缓存
- cache-control 基本完全取代了 expires,为什么 etag 没有完全取代 last-modified,last-modified 依旧存在的意义是什么
- 一般网页什么内容会被缓存(静态资源,css/js 文件)
- html 文件会不会被缓存(没回答上来)会被缓存
- 讲下 osi 七层参考模型
- 哪层使用的协议较多呢(回答了应用层的 http 协议和传输层的 tcp 协议)
- 讲下 tcp 三握四挥
- 为什么要是三次握手?为什么要是四次挥手? 理解不够深,磕磕巴巴的从一开始理,三次握手是为了确保客户端服务端的接收发送能力,四次挥手是为了确保客户端和服务端的正确关闭
- 堆和栈的区别,内存上和数据结构上,没答出来,对堆不够熟悉
- 代码题 100 楼,2 鸡蛋,在 N 楼及以上会摔碎,N 楼以下不会,在最坏的情况下,如何在最小的丢鸡蛋次数下获取到 N,没做出来,思路是二分查找,但是最坏的情况下是 50 次丢鸡蛋次数,感觉太大了。 让我做了个快排,问时间复杂度(nlogn)和空间复杂度(n) 设计一个随输随搜的搜索框,需要有参数设计(回答得不太好,感觉脑子有点不够,有点胡言乱语了)
- 搜索框,我们输入内容后向后端发起请求,第一次输入后再第二次输入,假如请求回来的顺序出了问题,先返回了第二次的结果在返回第一次的结果,那么现在第二次输入呈现的是第一次的结果,该如何处理呢?(实际没遇到这种情况,所以不知道该如何处理)
- 反问 有什么需要改进的?对项目要更加的有思考,前端监控一般都有代码层面的错误检测,但我回答没有 设计搜索框回答的不太好
对项目的理解还可以再深一点,算法题也要多刷,希望能有个二面
#面经#