先简单说一下我的背景,普通本科。23 年 6 月毕业,实习加上正式工作的时间大概有两年左右
投的是长沙数字马力 oceanbase 这个事业部
权且记录一下当作复盘
- 一面 (2 小时)
-
- 手写题: 用 react 实现一个倒计时的 hook,写完讲思路 (略)
-
- 手写题: 实现最大并发 3 个图片的线程池,写完讲思路 (略)
-
- 手写题:array 转 tree,写完讲思路 (略)
-
- 介绍项目,讲一个最有代表性的项目,阐述你在其中的定位,以及难点,和亮点 (略)
-
- 讲一下大屏的技术选型
- 自适应
- 3d
-
- 讲一下你项目中的 monorepo 吧,它的使用场景,用途,为什么当初要用这个代码组织形式,有没有调研过其他的代码组织,有没有更好的组织形式 (略)
-
- 讲一下设计模式吧,你在项目中有用到什么设计模式.观察者和发布者订阅者的区别是什么 (可以讲的很多,略)
-
- 项目中的优化是如何做的,能举几个例子吗 (perform+ 埋点定位 + 老生常谈的报菜名)
-
- 聊一下 react 的体系吧,讲一下你在 react 中技术选型的依据以及对应框架 (redux,zustand) 的原理
-
- 聊一下 hoc 吧,你是怎么在 vue 框架中应用这一个设计模式的呢 (函数式编程 +createVnode+tsx)
-
- 问了对开源的看法
-
- 反问环节 (这一个部分聊了差不多一个小时,主要是这个事业部的定位和一些对于市场和技术的交流)
-
- 二面 (40min)
- 1.着重问项目,包括几千次请求前端如何优化以及有没有更好的方案
- 2.webpack 的原理 (compiler→entry-run-compilation(plugin)→emit-done,然后大概说了一下之前写过一个 mini 的 webpack,流程可能有缺漏)
- 3.有看过 umi 的原理吗 (这个真忘了)
- 4.umi4 你对他有进行过什么优化吗?mfsu 的优化原理 (联邦,当时答了这个和他的扫描机制.漏了一个预构建的流程)
- 5.问了在 antdv 关于 fix 的 bug,这个地方是怎么定位问题并且解决的 (dom attr 的断点然后看 callback)
- 6.遇到过什么线上 bug 吗,你们是怎么排查并且恢复的
- 7.CICD 的流程
- 8.针对我 monorepo 的库提出一些疑问,然后问了我关于 package 版本管理和 monorepo 中关于图形学的部分,例如 3d 2d 转化的原理以及在矩形操作中我对其中一些方法的优化
- 9.项目我是如何进行管理的,如何组织代码结构和产品上线流程
- 10.webpack5 对比 webpack4 有什么优化
- 11.反问 (数字马力具体的项目和大概的方向)
- 三面 (hr 面 20min)
-
- 个人定位,未来规划
-
- 为什么离职
-
- 问了我的述求 (没有直接回答,反问数字马力对我的定级和定薪.跟预期差距还是有的,没有直接说拒绝,说让我考虑一下,然后加了钉钉好友,找个日子拒了)
-