Boss 秋招一面
- 自我介绍。
- 实习里的成长或收获、以及难点和代表性的项目。
- 自然语言转换为 DSL,在 Prompt 里有什么需要注意的地方?
- 实习四个月,最主要的成长在哪里?
- 为什么不继续实习?
- 你觉得字节和 Boss 的差异或者你的期望是怎么样的?
- 低代码项目为什么采用了 Vue 和 React 两种技术栈?
- 讲一讲多端预览。
- 项目整体的架构和设计是怎么样的?
- Schema 定义是怎么样的?
- 如何控制物料拖拽的表现过程?释放的区域有什么限制吗?
- 怎么样处理循环引用?
- 项目里是否有 Json Schema 的校验过程?
- 如何实现渲染画布里物料之间的联动关系?
- 低代码平台后续有什么样的规划?
- 项目里是否有重做历史的管理?其实想问的是操作的撤销和取消撤销。
- 服务端框架使用经验?如何使用 JWT 的登录鉴权?JWT 的实现原理?
- 讲一讲双 Token 机制。
📌 回答
- 双 Token 机制是指在登录时,除了返回一个 Access Token 外,还返回一个 Refresh Token。
- Access Token 用于请求资源,而 Refresh Token 用于获取新的 Access Token。
- 整个流程如下:用户初次登陆以后,服务端返回 Access Token 和 Refresh Token。后续用户请求时,在请求头里携带 Access Token。服务端收到请求后,先校验 Access Token。如果校验失败,服务端会校验 Refresh Token;如果 Refresh Token 校验失败,用户需要重新登录,如果 Refresh Token 校验成功,服务端会生成新的 Access Token 和 Refresh Token。
- AOP 思想做个介绍,包括使用场景。
- 可以说一下你对 React 源码的一些研究后的收获吗?
- 观察者模式和发布订阅模式,你觉得二者有什么区别?
📌 回答
- 观察者模式:定义了一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知并自动更新。
- 发布订阅模式:可以是多对多的依赖关系,二者之间没有直接联系,发布者将消息发布到消息中心,订阅者从消息中心订阅消息。通过事件中介,发布订阅模式耦合关系比观察者模式低。
- 观察者模式往往采用同步通知,发布订阅模式采用异步通知。
- 观察者模式适合 UI 刷新、模型-视图绑定关系;发布订阅模式适合微服务通信、事件总线、异步消息处理等。
- 在谈到性能优化的时候,会有三个概念——浏览器缓存、CDN、DNS。简单讲一讲这三个概念,以及在那些场景或者排查问题的过程会使用?
- 核心的业务等不想让 CDN 等第三方缓存,只想让浏览器缓存,怎么实现?
- 是否对 CDN 回源有所了解?这代表什么现象呢?
📌 回答
CDN 回源是指当用户请求的资源在 CDN 边缘节点缓存中不存在或已过期时,CDN 会向源站(Origin Server)获取最新资源,再返回给用户的过程。这一机制保证了用户能够访问到最新内容,同时也是缓存失效、首次访问或缓存策略限制(如 private
、no-cache
)时必然发生的操作。回源会增加源站带宽和延迟,因此高效的 CDN 配置通常通过合理设置缓存策略、静态资源版本控制和缓存时间来尽量减少回源次数,从而提升性能、降低成本,并保证内容一致性。
- 你希望一个技术团队应该是怎么样的?
- 「反问」业务、团队规模。