kpi面 我也被捞过

相关推荐

11-27 22:42
已编辑
门头沟学院 Web前端
总结:面试官人很好,整个面试过程中就像是聊天一样,全程演示项目,中间穿插了一点八股- 蓝桥杯是什么- 问简历上的项目是实验室还是个人项目  面试官说都会把比赛项目给放到前面,所以以为这也是实验室作品。然后我就拿了挑战杯写的前端页面简单说了一下以下基本都是项目细节:- Mod 开发组与你是什么关系(甲乙方?)- 为什么分了开源核心 + 后台仓库(后台仓库代码不安全,需要审查)- 编辑人员提交流程(后台编辑 + 管理员提交 -> gitee pr + 审查后合并 + webhook 触发 cicd 同步到 oss)- Astro 是什么,SSG SSR 是什么(说了一下基于 vite 进行驱动与支持 ssg + ssr,然后说了一下 ssr 的动态拼接字符串;然后面试官说了什么 jeklly?)- 选了他的原因是什么(博客落地实践过,知道一些底层原理,内容驱动生成网站,符合 wiki 定位要求)- 框架可以插入 react 或者 vue 组件吗(可以,且可以一起使用)- 有试过放在一起吗(没有,提了一下 vite 放在过一起导致开发声明报错,其次是两个应用相互独立,通过各自的 app 创建函数来渲染页面,只要他们副作用不会相互影响我觉得问题都不算大,不过现在看来感觉还得想一想 vue react 底层,他们的更新机制不一样,会不会一个框架的占用线程太久导致了另一个框架更新不及时)- 整个项目内核升级是什么意思(说了用插件将所有的逻辑进行封装,最后进行复用,要求展示了一下除了简历还有哪个网站复用了)- 编译器和 polyfill 的关系,知不知道每一个 es 版本的区别(不会)- VSCode 插件展示一下,具体在 VSCode 做了什么,用途(mdx 转 ast 语法树,对节点进行分析,并读取工作目录下的资源进行查错;给一些编外的词条编辑人员使用)?- 网页插件展示一下?(没实现,说了一下对每一个用户都要开一个专用检查进程的原因)- 看一下你的分析器和 mdx 官方分析器的关系(完全独立,没来得及说存在的优化部分)本来要进笔试了,然后说了一下 yjs 是核心之一- 在线平台演示效果- yjs 是什么(协同编辑中编辑冲突的一个库)- 协同主要问题(说了并发冲突和 YATA 算法的作用,面试官似乎没做过这个领域)笔试:```ts// 写一个类似迅雷的下载管理器,用户可以不停往里面push url,管理器需要保证同一时间最多只有3个请求在并发下载。class Downloader {  urls = []  push(url) {  }}// 每个url均需要被传入以下fakeAxiosWrapper函数。你可以把这个函数当做一个封装好的axios函数,作用是请求远程api,不要改动这个函数。async function fakeAxiosWrapper(url) { return new Promise((resolve, reject) => { setTimeout(() => {      console.log(`download ${url} done`)      resolve()    }, 3000);  })}// 验证代码const downloader = new Downloader()downloader.push(`url1`)downloader.push(`url2`)downloader.push(`url3`)downloader.push(`url4`)downloader.push(`url5`)// 等待3s后,同时输出// download url1 done// download url2 done// download url3 done// 再等待3s后,同时输出// download url4 done// download url5 done```没写出来很可惜,因为以前写过一个类似的并发下载控制,结果这里没写好。面试官换了个节流,问了一下为什么 setInterval 可以用来证明你这个函数是节流的(宏任务队列首部)反问:工作时间(上午十点到晚上八点半)地点(深圳总部)实习时长(越久越好)技术栈(挺多跨端技术的,感觉进去又要开始上手新东西了)有没有什么可以改进的地方(没有,做的很好(不知道是不是客套话整体下来感觉最大的问题还是信息差与沟通点没到位,项目yjs部分展示的内容不是很多,然后还浪费了一些时间,只能说很可惜,下一次对于不会的内容就应该直接说不会(恼)。然后就是没问多少八股,这真的正常吗()
查看22道真题和解析
点赞 评论 收藏
分享
12-13 17:18
已编辑
门头沟学院 Web前端
一开始介绍的时候节奏不是很好,让面试官误会了这就是个工具使用项目,直到最后反问的时候把各种研究的细节抖了出来才改了态度- 自我介绍- 说一下项目(简单做了一下介绍,落地背景,技术选择,产品上线,由于之前有点摆烂,所以准备的不是很好)- Astro 框架是你自研的还是第三方的(?第三方)-  CDN 是什么- 网站访问量高吗,有多少人在用?- 八股:  - http 每个版本的区别  - 缓存- linux 源码看过吗(?)- 反问  - 需要改进的地方?(反问了你从这个项目学到了什么)    - 阅读了部分 Astro 源码(content collection 与 vite 结合的底层实现,知道了可扩展性和局限性,翻阅了 RFC 文档,知道了其开发目的解决的痛点,最后评价是又好又坏,好在对 mdx 的处理工作是在编译器完成,在运行时无过大开销,缺点也是 mdx 在编译期间处理完成,没法应对更灵活的需求;其次讲到了 Astro 上周第 50 个 RFC 文档,github 可查 content layer api,也是不把运行时编译列在目标内;所以评价是又好又坏)    - 深入研究了 CRTD 思想及其背后的 yjs 生态库(从小团队开发比重权衡选择了 yjs,生态丰富,且配备 demo,体验很不错,尤其是周边库,源码内容简单,要针对做定制开发的成本也比较低)    - 面试官主动问了一下有没有了解 OT (对比了一下 OT 与 CRTD 的区别;他与 CRTD 解决的目标相同,不过思想核心不一样,OT 是保证过程顺序一致,CRTD 保证数据一致性,颇有分布式思想的感觉;OT 在生态上较为薄弱,调研了 ShareDB 实现,发现后端代码过于复杂,对于小团队开发可能时间并不充足;我的中心服务器性能不够的话可能导致体验下降;针对不同数据模型要实现不同接口,开发成本增加)    - 了解了一些 vite 的短板(生产环境与开发不一致,不合理分包导致模块循环引用(上周优化时发生的),首页白屏的问题(vite 仅仅经过最简单的转义便直接把模块发送给首页,没有像 rspack 一样做一个合并优化,导致项目变大时首屏发出大量的模块请求,且 vite 开发服务器 http 协议似乎是 1.1,只允许 6 个 tcp 请求,其他的会被阻塞,进而导致长时间白屏))    - 实践了一些设计模式(模板模式,策略模式)    - 站在了开源包使用者的角度去看待一些内容(包下的语法分析核心分了两层设计,用户可以选择最简单的 plugin 模式去定制规则,也可以自己创建 core 实例去完整覆盖 mdx 的检查行为)    - 总之做这个项目就是很开心,学到了很多也收获了很多  - 您是 GM 吗(不是)  - 反问了一下平时玩什么游戏,但是当时脑子有点短路答不上来,就说最近玩的比较少,会练一下吉他也是从这一次面试后,我就意识到了必须要主动争取面试主动权,面试官给出机会时一定要有意识,抓住项目核心讲,因此后续继续优化总结,把项目最重要的几个核心抓了出来,并进行了提炼,因此一天后的字节二面我收获了一个非常好的体验
查看11道真题和解析
点赞 评论 收藏
分享
12-13 17:15
已编辑
门头沟学院 Web前端
- 老家是哪里的,还有住在哪,学校在哪- 说一下数据结构栈和队列,他们的区别,栈在哪里有应用场景,队列,然后假如队列发生了插入,那么此时这个队列变成了什么,具体应用场景有什么- 先说一下 localStorage 大小- 引导到操作系统置换算法,要求写一个按字节数大小计算的 LRU 缓存,问了一下时间复杂度,有没有什么可以优化的地方- 计算机网络(七层模型,常用的四层),每一层帧封装的格式,知道的越多越好。到传输层后问了一下 udp 的校验和是怎么做的(忘了),应用层有哪些协议(http,ftp,就记得这两个)- 说一下项目大概的情况- 看一下你项目的架构图- 你的项目最终为了解决什么问题,相比其他 wiki 第三方平台有哪些优势- 看你 wiki 用 astro,性能是不是很好,跑个 lighthouse 看看(第一次不给力,才89,第二次才满分),那么就结果来说你能信任 lighthouse 吗,最好的收集用户数据手段是什么,埋点的话你会怎么解决- 反问- 我需要改进的地方- 这次实习是有考虑提供转正的吗(有,所以筛人很严格)- 如何提升项目积极性(问了我 wiki 的访问量,很少,于是就说这个就是问题,一个是正反馈,还有就是当你的代码面对千万级用户时你该怎么办)- 聊了一下跟踪脚本,现场出一个场景题,假如要拦截该怎么办- 看一下你的项目文档- 以为这一面会继续拷打项目,为什么没有深入细节(说一面已经看到项目诚意了,二面看看其他方面)- 平时怎么学前端的- 一面是主管吗- 有因为学历而考虑考研吗
想踩缝纫机的小刺猬在打卡:每次看佬的面经,都感觉自己没学过前端
查看17道真题和解析
点赞 评论 收藏
分享
牛客网
牛客企业服务