【校招面经分享】好未来-北京-视频面试

  • 作者:阿吉
  • 整理&点评:lucifer

为什么要写这个面经?

lucifer 说让我写一下秋招面经,但我很菜,一开始不想写的。最主要的是不想暴露自己的菜,虽然群佬都知道我比较菜。

lucifer 的群大概是我唯一一个每时每刻都能得到响应的群吧。很开心当时只是随便加了一下,但认识了好多大佬,经常在群里问一些很没头脑的问题,但总有人会艾特我回答,尽可能去触摸自己的知识边界帮我解答,大家都在交流(技术+扯皮)。

比较遗憾没偷学到 lucifer 的算法能力,也没能白嫖到小漾的美图。在 lucifer 群里开群语音,还有幸白嫖过川川(若川大佬)的声音 hhhhhh。大概我挺希望小漾看到这个文章能主动点晒照一下 hhhh(感觉第二天我就没了)。

面试体验

好未来的四位面试官给予的面试体验很舒服。四面面试官说话一直用“您”。四面面试快结束的时候:

  • 我:“我们的时间价值并不对等,所以很感谢您愿意抽时间面试我”

  • 面试官:“不,我们的时间是对等的,我们今天只是在平等的交流”。

好未来的面试体验可能是目前秋招面试最舒服的,因为平时喜欢看很多闲书(面试很少会问的那种),把那些知识都有机会和面试官进行了分享。

面试官的问题用 Q 表示, 我的回答用 A 表示,序号表示第几个。 比如 Q5 表示面试官的第五个问题, A8 表示我对第八个问题的回答。

一面(男)

面试内容

  • Q1: 聊项目,聊实习公司,问什么时候开始学前端
  • A1: 大二
  • Q2: 说一下排序算法。手撕冒泡,快排及其优化
  • A2: blabla

lucifer 小提示: 要可以手撕才行哦。

  • Q3: TCP 和 UDP 区别。TCP 为什么是可靠的?

  • A3: 《计网 自顶向下》,同时说了应用场景。

  • Q4: 三次握手,四次挥手

  • A4: 过程,字段,为何两次不行,各自作用。SYN 半连接攻击。

  • Q5: 谈一下 HTTP

  • A5: 详细说 HTTP 1.0 1.1 2 3 细说文本格式和二进制格式(这个很感谢 feiker 大表哥在群里说了下),以及 HPACK,应用层和传输层的队头阻塞,多路复用和多路分解 瞎扯了一下 302 303 307 在 RFC 规范中的发展历史,其实是跟浏览器大战年代相关的。

  • Q6: 浏览器缓存

  • A6: 四级:Service Work, Memory Cache, Disk Cache, Push Cache HTTP 控制的缓存位于 Disk Cache,即强缓存和协商缓存。二者中间的启发式缓存。

  • Q7: CDN

  • A7: content dispatch newwork。 《计网 自顶向下》

  • Q8: 从 URL 到浏览器渲染,仅围绕 HTTP 相关展开

  • A8: 因为仅涉及 HTTP,除了常规回答,谈了下 webkit 里的三类资源加载器,以及网络栈。

  • Q9: 编译性语言 和 解释性语言的区别

  • A9: java,js。引申 JVM 和 V8。以及 V8 在早些年间拒绝采用中间码(《了不起的 nodejs》那本书比较老,里面就是无中间码),后来又采用了。其实最开始的原因就是考虑到移动端存储量。

  • Q10: 单线程的原因,好处

  • A10: JS 多线程对 DOM 的坏处。引申 webkit 多线程,看面试官比较感兴趣,又分析了浏览器的多进程架构,以及 Renderer 进程的四个配置项。

二面-男

面试内容

  • Q1: 聊项目,前端倒计时,IOS 兼容等
  • A1: ...
  • Q2: 各种排序的时间复杂度
  • A2: ...

lucifer 小提示: 不要死记硬背。

  • Q3: 手撕代码

<pre class="custom" data-tool="mdnice编辑器" style="margin-top: 10px; margin-bottom: 10px; border-radius: 5px; box-shadow: rgba(0, 0, 0, 0.55) 0px 2px 10px;">`function tpl(template, data){

}
// 输入
tpl('<div class={%className%}>{%name%}</div>', {className:'hd', name:123})
// 输出
<div class="hd">123</div>
// 面试时编码思路:根据浏览器的词法分析去做,用stack。但存在问题。` </pre>

  • A3:...

  • Q4: 看代码说输出,作用域

<pre class="custom" data-tool="mdnice编辑器" style="margin-top: 10px; margin-bottom: 10px; border-radius: 5px; box-shadow: rgba(0, 0, 0, 0.55) 0px 2px 10px;">var a = 2; function fn1() { var a = 1; console.log(this.a + a); } function fn2() { var a = 10; fn1(); } fn2(); // 扯了一下this指向,以及C++中作用域的_variable表默认添加。 </pre>

  • A4: ...

  • Q5: 你对闭包的理解

  • A5: 函数执行的保护机制。围绕函数执行机制(后来 lucifer 男神讲可以从词法作用域说,但毕竟是面试,感觉从函数执行来讲比较 ok),结合 V8 生成 AST 角度去谈何为闭包。具像为作用域链,及其 2 个表象。优缺点。理论应用:在 Vue 中的应用 Dep(),React 中的应用 Redux dispatch,设计模式中单例模式。项目应用:H5 前端自拟倒计时 destroyed 销毁引用。

三面-女

面试内容

  • Q1: 自我介绍
  • A1: 叫 AJ,来自 X,能干活。
  • Q2: 聊点你的学校经历吧
  • A2: 在校职务...
  • Q3: 为什么选择前端
  • A3: 经过大一尝试过 java,py,cnn 后决定,前端作为当下的生存技能。兴趣不局限于此。

lucifer 小提示: 不要把自己局限到前端。

  • Q4: 为什么不现在就去学后端
  • A4: 我明白自己每个阶段想要的是什么,当下秋招的我应该找一份匹配自己的工作。
  • Q5: 未来三年的职业规划
  • A5: 业务崽。
  • Q6: 实习公司,对比百度、腾讯、小米,最不喜欢哪一个?
  • A6: 从不同的层面去说最喜欢哪家。
  • Q7: 你觉得你的缺点有什么
  • A7: 不喜欢跟人争执,浪费时间且无趣。
  • Q8: 为什么会投我们公司,了解我们吗
  • A8: 很好的朋友在开课吧(然哥),给我说好未来还挺不错的。秒投了。
  • Q9: 我们的业务有...你喜欢哪个业务啊
  • A10: 直播吧

四面-男

面试内容

  • Q1: Vue 那种左右界面,中间的竖线可以滑动,左右布局跟着变化,怎么去做优化,可以从哪些角度触发
  • A1: 不会。尝试从 Vue Object.freeze() 和 提升图层角度去说。
  • Q2: GPU 硬件加速渲染说下原理
  • A2: 不会。从 CSS3 触发的角度说了下。
  • Q3: HTTPS 性能损耗在哪里?
  • A3: TLS 握手。从《计算机网络 自顶向下》那本书里提的角度简单说了下。同时认为非对称加密算法对服务端资源消耗比较大。
  • Q4: 你如何去解决前端人员被需求压满,然后做业务觉得没有技术成长
  • A4: 不局限在功能点的开发,真正理解业务,理解业务流程中的数据流向以及坑点。当在当前环境遇到技术瓶颈要跳槽时,带着已有经验去下一个环境。
  • Q5. 谈谈 WebSocket,然后怎么去改造。
  • A5: 简单说了一点理论,直言没实践过。

lucifer 小提示: 可以自己实现一个 WebSocket 玩玩就啥都知道了。

  • Q6: 直播业务中,常用的协议是什么
  • A6: 仅知道 webRTC。
  • Q7: 海量数据找出最大的 K 个,怎么找?时间复杂度是多少?
  • A7: lucifer 之前的文章应该有过,没记牢固。简单说了下。

lucifer 小提示:我们只需要建立一个大小为 K 的小顶堆,N 个数分别入堆,最后堆顶的元素就是第 K 大的。 时间复杂度

  • Q8: 了解好未来吗?为什么要来?
  • A8: 做教育的。我哥推荐的。

PS: 面试白菜起步。SP 面是四面。

lucifer 点评

由于是校招的原因,整个面试过程比较注重的是基础知识以及思考和学习方式。并且可以看出侧重点依然是:

  • 网络(TCP,DNS,HTTP,HTTPS,浏览器缓存等)
  • 浏览器渲染(GPU 硬件加速, webkit 原理等)
  • 数据结构与算法(排序算法,复杂度分析,堆的应用等)

对于每一个部分,我们首先要做的是建立大局观,这样即使错,也不会错到哪去。大局观建立好了,相当于基本的知识框架有了,接下来就是填充知识框架了。这个阶段最主要的就是巩固复习和查缺补漏。经过这样的一个学习,相信你也能够在面试中崭露头角,获得心仪的 offer。

大家也可以关注我的公众号《脑洞前端》获取更多更新鲜的前端硬核文章,带你认识你不知道的前端。

image

公众号【 力扣加加】 知乎专栏【 Lucifer - 知乎

点关注,不迷路!

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,542评论 6 504
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,822评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,912评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,449评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,500评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,370评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,193评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,074评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,505评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,722评论 3 335
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,841评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,569评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,168评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,783评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,918评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,962评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,781评论 2 354