wxg前端开放平台日常实习面经(一面)(已offer)

先说一下背景:双非,目前在读大三,目前 (2024/12/31) 无实习经历,所有投递都是从官网投递,无内推。

岗位是微信开放平台基建

最汗流浃背的一集,当时刚好是在游戏部门挂了后几天微信打电话过来问愿不愿意面试,我说上次不是挂了吗,双方就都很尴尬的笑了一下,最后说回去思考一天再确定要不要面。当时学期也快结束了,跟几个哥们聊了一下这件事,就觉得可能是 kpi。还好当时鼓足了勇气,想着就算是 kpi 也要尽力去学到东西和表达想法。

事实证明确实不是 kpi 面,而且拷打的非常恐怖,一面面试官说看了面评知道项目很大很复杂,于是就狠狠的考察了项目的广度,以及临场反应速度。二面则是结合计算机基础深究了项目的细节,现在回想起来我都不知道我是怎么顶住面试官的拷问的。三面则是最轻松但也是最需要口才的一集,就像是在给上司讲述自己的产品,讲自己的思考以及是否存在能效提升一样

视频面两面都没有开摄像头,就最后 hr 面开了一下。

最后实习 oc 也选了他,首先是因为没几个能选的,同期的就另一个外企发了offer,地点在北京,往返比较麻烦。微信这边主要是技术栈为 js 和 rust,还是基建岗,感觉还是比较符合胃口的。

我对这次面试最大的总结就是:计算机的基础思想很重要,许多地方都可以用上他。理解思想,并把它融入到自身作为一个工具使用。就好比我前文提到的 monorepo 和 react hooks 一样,我感觉就像是把他融入到自身,他是一个工具,理解他在什么时候该发挥什么样的作用

其次还是基础,一面结束后复盘了一下八股,答得真的是稀烂,寒假还是要恶狠狠的弥补啊。

### 一面(2h 30min)

上来先四道英文题目手撕(1小时 + 20 分钟思路拷打):

- async pub sub
- 依赖解析
- 爬楼梯
- glob 库实现

八股:
- 事件循环
- 异步任务的作用
- setTimeout 浏览器底层实现
- JS 内存管理(v8 回收,但是讲的不是很清楚
- 引用计数
- weakMap 以及为什么不能遍历,以及只能用引用数据类型做 key
- 对 ts 泛型的理解
- rust 用过什么异步框架(tokio)
- rust 内存管理(drop trait,作用域,无GC)
- css 媒体查询
- git merge 行为(只知道合并成一个提交,面试官说还有一些其他行为,后续看了一下是 fast forward / 无冲突 merge / 有冲突 merge)
- 约定式提交以及如何做约束(命令行应用与 git hooks 正则匹配)
- https 中间人攻击
- https 链接上请求内放密码
- https 的数据是安全的吗(只想到密钥泄露)
- 快排时间复杂度,为什么最坏是 On2
- 对一块内存上的数组尾插 / 头插元素的时间复杂度

讲项目(40min+)
- 立项,重构,后台实现,远程协同
- CRDT 思想
- 脏路径处理
- 并发冲突
- 简单说说 YATA 数学证明?(包不懂的)
- 断网后怎么办,或者说有个客户端延迟很高(插入永远有一个唯一位置,应对比较轻松)
- 服务是中心化还是去中心化
- 一个人删除了一行文字,另一个人在这行文字添加内容,结果是什么(根据 YATA 算法第一层比较,客户端小的操作优先)
- 简单对比 OT
- 项目背景
- 简单介绍 Astro 框架
- 项目设计(做成 npm 包,并作为 astro 插件使用)
- 项目技术栈对比,自研的原因
- 第一次升级后的成果与遇到的问题(框架问题,GitHub issue 讨论,细节挺多的)
- 语法分析器的设计(core 层 和 plugin 层)
- 如何进行语法检查的(ast 语法树遍历分析)
- LSP 服务器设计与消息优化(VSCode LSP 使用 pipeline 或 websocket,如果要优化可以通过自研协议分主动推送和监听广播行为)
- 前后端结构(前端,后端,脚手架后端)
- 项目发布过程
- mdx 中用户如何使用自定义组件
- mdx 可以回退 md 吗(没有研究,后续看了一下,mdx 是作为一个 astro 插件使用,回退的话可能需要对内容进行过滤处理(表达式,用户组件,script 标签过滤))
- markdown 过滤
- astro 编译 mdx 底层实现(讲了用到的插件,但是还可以继续讲讲 vite 怎么去 resolve module 的,和源码中经过了几次编译后才输出结果)
- 如果有用户恶意输入,你是怎么处理的(pr check)
- 如果用户太多你管不过来怎么办(插件过滤 script,工作流中使用 bot 自动检查)
- mdx 注入组件的白名单
- mdx 可以渲染 react,那可以渲染 vue 吗(可以,配置插件即可)
- 如果要在一个 react 组件里面使用 vue,我该做什么
- app.mount 发生了什么(没说全,讲了一下对比和 mount 和 patch,其实就相当于把 vue 渲染讲一遍)
- 如果我想在 react 组件内用 vue,vue 组件内继续套 react,我该怎么办(编译器做一个类似 rust 的宏展开自动注入 render code)
- 还有可以扯的吗(astro wasm 组件编译,content layer api,SSR 编译 mdx 可以实现运行时无编译开销;选择 jsx 作为通用组件的原因)
- 反问
- 技术栈(js ts rust c++)
- 业务还是基建(基建)
- 期望实习时长
- 大概还有几轮(一般三轮)
- 关于微信游戏二面面评(每个面试官都有自己的看法)
- 需要改进的地方

当时开始做题的时候我还没有意识到事情的严重性,还跟群友聊了一下说怎么一上来就做题,随后一顿拷打让我知道自己是多渺小了。

八股复盘的时候感觉自己就是个超级大笨蛋,说不定面试官都躲在屏幕后面笑,说这小孩子想象力还挺丰富的

面完这两个半小时人都虚脱了,在会议室里面跟群友汇报完后缓了好久才走出会议室,刚好实验室外面刚刚结束24届大一同学面试。后端的一哥们说想转前端了,于是就把前端在场的同学一起叫了过来,聊了一下他们的学习进度,并针对他们现场确定了一下学习路线,最需要关注的内容和接下来该做的事情以及未来要如何发展,全部聊完后也都晚上 11:10 了,于是听着私宅特有的歌冲回了宿舍。

实验室真的跟家一样,我可以说实验室和简历的项目几乎就是我大学的全部了,没有这两样我也走不到今天这一步
全部评论
双非南方科技大学的那种吗
点赞 回复 分享
发布于 01-31 17:55 福建
啊不是小程序吗
点赞 回复 分享
发布于 01-22 12:05 北京
太强了,猫猫
点赞 回复 分享
发布于 01-05 16:51 广东
那你无敌了
点赞 回复 分享
发布于 01-03 17:52 北京
吓晕
点赞 回复 分享
发布于 01-03 17:20 江苏

相关推荐

711 一面1. 实习部门、工作2. 块级元素和行内元素举例3. H5 语义标签4. CSS 水平居中方法5. img 里面 alt 的作用6. 引用 CSS 的三种方式7. CSS 有哪些选择器8. Flex 和 Grid 区别9. JS 变量声明方式,有什么区别10. 什么是事件冒泡,如何阻止11. JS 与 TS 区别12. 什么是闭包,及其应用场景13. 实现对象深拷贝14. JS 如何实现异步15. 对单页应用理解16. 对富文本编辑器了解多少,内部架构17. 如何实现防抖和节流18. 数组去重19. 对虚拟 DOM 的理解20. 对 React 了解有多少21. React 有哪些生命周期22. React 状态提升了解多少23. React.memo 用过吗,详细说说24. 讲讲 React useEffect25. React 父子组件是怎么通信的26. React 函数组件和类组件各自特点,说熟悉的即可27. 所有项目都是自己独立完成吗28. 关于 Tailwind CSS29. 其它 CSS 比如 SAAS 了解多少30. 实习业务相关31. 实习项目涉及登录态,前端怎么实现32. 项目里设了拦截器用来干嘛的,前端还是后端设置33. 对前端项目工程化的理解,举例 Webpack 即可34. VUE 有用过吗,了解多少35. 微信小程序了解过吗36. 三次握手37. 为什么不是两次38. 服务端有多少了解39. 前端项目打包之后怎么放到服务器(?)反问1. 后续流程2. 之前了解到苍穹,部门平时开发用的是自己的框架吗(光速切割,和苍穹没有任何关系,不是低代码)3. 强度两小时后约二面714 主管二面等了二十分钟没人,打电话才知道是忘了1. 项目在哪里做的版本管理2. 独立做过什么项目3. 为什么选择用 React 而不是 Vue4. (答:优雅)优雅主要体现在什么地方5. 所以函数式编程是代码的本质是吗6. 所以函数式编程有哪些优点呢7. 手里有别的 Offer 吗8. 考研考公有想过吗7. React 里面列表渲染的 K 属性有什么作用8. Webpack 有哪些优化策略9. 首屏优化怎么做10. 懒加载(?)11. 什么是闭包12. 会导致内存泄漏吗===================13. 说说子网掩码14. HTTPS 的交互过程15. 详细说说对称加密和非对称16. 进程和线程区别17. 说说虚拟内存18. 常见排序算法及其各自时间复杂度====================19. 无序正整数,怎么最快找到它的中位数,不考空间复杂度(要求时间 O(n)))20. 可以进一步优化吗(没想出来,告诉我可以用桶排序)反问1. 部门主要业务2. 规模,前端多少人3. 强度4. 培养5. 面试评价716 下午hr打电话说面试通过,然后问邮箱发了个链接,以为是测评没想到点进去是前端笔试题,四十道小选择(可能因为楼主是某聘软件上直接被技术约面,所以补了个笔试,但全程都怪怪的)至今无后续,wx问hr无回复问题只有算法优化没答出
投递金蝶等公司10个岗位
点赞 评论 收藏
分享
内向的柠檬精在研究求...:东华大学,东华理工大学,华东理工大学。牛客上这三个学校真的多😂
点赞 评论 收藏
分享
评论
9
17
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务