24.10.14 美团-到家-前端 二面

面试时间前四十分钟,hr突然打电话来说面试官在开会,推迟一下时间,然后到推迟后的时间上面试地址的时候,连接不上通话,面试官就说转为微信吧,就加了微信进行视频通话

面试官是个leader级别的,面试过程中有点心不在焉,一会看手机一会看看旁边不知道在干嘛,球球了补药是kpi面啊

  1. 自我介绍
  2. 为什么学习前端
  3. 拷打项目
  4. 说说对react的看法,有多少说多少(这里说了挺久的,说了react fiber,虚拟DOM和diff算法,合成事件,其它我没了解到的底层原理,麻烦大佬可以在评论区补充,我去学习🙋‍)
  5. 手撕LRU缓存,十分钟内搞定
  6. 反问
    • 介绍业务,部门发展,团队氛围
    • 我有什么需要改进的吗?怎么又是经典的我觉得你还行,有些人回答可能真的是觉得此次面试我还不错,但有些可能是对我不感兴趣不想花时间说我的缺点之类的,就随便敷衍过去😢

回答问题的时候面试官有点不在意的感觉,搞得我本来在流畅的回答,一看到他拿起手机看一下或者看下旁边反而自己就被分心了,脑海突然短路😢可能面试官确实是忙吧,他在国外出差开会,所以可能事比较多,希望不要是kpi,求求你了美团,我是团孝子啊,给我过吧😭

我反问的时候问了后续的流程,面试官说hr面不是必须的,有些人有hr面有些人没有,也有些人会再加个业务复试,但有些人二面完直接意向了,希望能顺利进入三面/hr面/意向🙌 alt

#面经##美团##前端##牛客创作赏金赛##美团求职进展汇总#
全部评论
乱杀
2 回复 分享
发布于 2024-10-14 19:15 湖南
乱杀
1 回复 分享
发布于 2024-10-14 17:59 广东
给佬跪了
1 回复 分享
发布于 2024-10-14 18:04 浙江
佬好强
1 回复 分享
发布于 2024-10-14 19:13 江苏
海外业务吗?看你写国外出差
点赞 回复 分享
发布于 2024-10-14 23:25 新加坡
盲猜国际外卖,感觉这么缺人吗?
点赞 回复 分享
发布于 2024-10-18 22:59 河北

相关推荐

2024-12-07 17:17
已编辑
门头沟学院 Web前端
省流:无八股,四十分钟项目输出,二十分钟笔试题 + 反问面试体验最满意的一次,虽然开头细细的讲项目细节导致节奏有点慢了,只讲出了两个核心,还有两个核心没讲,但面试官很耐心的听完并跟我确认上下文细节,下次继续优化- 自我介绍- 挑一个简历上最值得讲的项目开始表演  - 背景介绍(某游戏 mod 开发组前端成员,主要负责一些页面制作宣传的需求,后期组内其他成员提出 wiki 制作需求,开始了调研之旅)  - 主流 wiki 框架(语法晦涩难懂,开发者需要时间去学习成本;使用 mdx 可以无压力上手 + 需求/问题快速沟通解决;Astro 我有实践经验,阅读过核心 api 源码,知道底层实现与扩展/局限性)  - 反问了一下这个项目什么时候开始做的:第一版落地时间周期(去年5月调研,7月开始第一版开发,9月落地,到12月前长期维护 + 新功能上线)  - 第一版落地后遇到的问题(项目结构混乱,非业务核心代码与核心混在一起,网站无法进行复用)  - 解决方案(采用 monorepo,重新梳理整个项目业务核心逻辑与周边生态逻辑,进行归类划分并确定职责和要暴露的接口)  - 成果(项目职责分离(解包,语法检查,wiki 核心,组件库,针对不同 ide 的检查适配器)对整个项目有了个更好的认知,知道整个项目的进展和状态)  - 带来的新问题(此时已经半小时了,面试官让我挑2点最大的问题(不同包之间没有权限区分;一些历史遗留插件没法及时迁移,付出了一定开发成本)其实这里可以讲一下代码复用,参考了 Astro Starlight 项目落地后发现全局 Astro 特性被局限至仅 集成暴露 api;部分 api 使用后效果不一样(Astro 官方给出了解决该问题的实验性特性))- 网站访问量多少(不多,算是技术能力锻炼产品和圈子内的服务用产品)- 是不是 minecraft 的发烧友(还真是,高中就喜欢玩珍珠炮,并且从里面开始接触到编码解码概念和一些二进制理论)- 笔试  - 版本号排序(后续讨论了一下健壮性和 plus)  - Promise.all 实现  - 写一个后台管理系统的侧边栏组件,伪代码即可(顺便聊了一下 vue compiler 的 props 宏展开)  - 本来还有第四题,面试官说不用了,直接开聊(以为会问 Promise 顺序,他说他不喜欢考这些,然后聊了一下 Promise 内返回 Promise 的问题,涉及到 v8 以及 ecma resolveThenableJob 规范,不过面试官似乎不是很了解这里)- 反问  - 我需要提升的地方(计算机四大件别丢了,讲的很认真)  - 部门主要技术栈(react,然后就是要了解一点 node,不用做开发,nginx了解即可,吧啦吧啦的,后续忘了)  - 新技术会用吗(会做研讨会和研究,不过更多是基建部门负责,他们会看手册学习并尝试在小项目落地)  - 主要业务(搜索中台,技术 + 业务结合部门?面试官好像一时也没法彻底讲清楚)  - 部门压力大吗(不算大(真的吗))  - 入职要注意的事情(需要两个月进行磨合,因为有些事情可能没有给到完整上下文就让你做,需要自己翻手册或找 mentor 问,流程清楚后就轻松了,后面一堆不记得了)  - 转正?(会给,但是看分到的名额,说25届留了两个实习生,刚好两个名额就全给他们了,然后细细的讲了一下转正前会给你的各种通知和要做的事情)  - 就面试来说有啥需要改进的地方(笔试侧边栏组件你可以做的更好点,抽象级别可以更高点,加强一下基础框架学习使用)体验最好的一次,唯一的遗憾就是讲细节太多了,还有一些核心没讲出来。其他我都很满意,1 小时后收到了三面时间选择通知许愿三面能遇到像这样体验这么好的面试官
查看16道真题和解析
点赞 评论 收藏
分享
2024-12-11 16:11
已编辑
门头沟学院 Web前端
省流:无八股,项目输出 + 性能优化疯狂拷打 + 场景题- 自我介绍- 为什么学前端- 什么时候开始学的- 看你项目还挺多,挺多方面都有涉及的,node 学的怎么样(仅基础,rust 写的那部分后端可能还多点)- 平时怎么学(从实验室给的路线发展到自己看文档查资料,会主动关注新 api)- 关注新 api?举个例子(用我博客的 content collection api 举例子,翻了 rfc 文档,对着英文生肉硬啃)- 最近科技周报看了啥,举个例子(rspack,阮一峰谈发展 ai 的公司,还有自己想在项目落地实践 ai)- 为什么想要实践ai,你是想在自己项目的哪里实践?(原来的开发者想更专注于核心开发;词条内容编写,让 ai 写雏形,自动生成框架,我们按需补充(其实有个点没谈到,就是有些内容需要编写者阅读过源码才知道机制,ai 写可以节省一部分时间;其次是语义检查,看看是否符合人类阅读习惯))- 看一眼你的后台(演示了一下基本内容,是 monaco 做的)- 讲一下选 Astro 的原因(调研现有 wiki 框架发现不适合,学习成本高;横向对比 VitePress VuePress,局限使用于 vue,扩展性开发难度较高;从 Vite 或者 Nextjs 开始写的话基建要做很多东西,一时看不见效果;页面样式自定义要求程度非常高,css 几乎都是手写;Astro 基于 vite 封装,帮我们做好了很多事,且具备 vite 大部分能力;阅读过内容集合 api 源码,知道扩展性和局限性(其实还有很多可以说,不过脑子一热忘了))- 有试过什么优化手段吗(开始拷打)  - CSS 规范,强制要求所有元素尽可能有个固定宽高,避免 CLS  - 某些显隐采用 visibility + pointer-events 处理,避免重排  - 后台部分使用 `manualChunk` 分包(面试官让我打开项目看看分包结果,然后就对着页面的请求在那里讲自己的分包思路)- 接下来从开发过程,打包编译,网络传输,首屏展示四个方面聊聊你知道的优化,越多越好  - 开发过程扯了一下 vite 全局定义 `__DEV__` 变量,然后把仅开发逻辑放在这里头,编译过程会移除(其实可以再讲讲引入路径规划,做一个强隔离,项目后台就是对每个页面进行强隔离,保证逻辑无关联,这样分包函数可以针对每个页面打包成一个 css + js,避免过多网络请求),还有 await import 作为分包点  - 打包编译讲了 terser 的上下文分析,分析 dead code 的存在和不必要的逻辑进行移除;其次是避免桶文件 + rollup 静默打包(桶文件在项目中真实出现过,打包整个 mui icon 导致打包时间 + 2min,面试官当场提问最终这些会被打入包内吗(不会,会做 tree shaking);静默输出则是因为 mui 组件都写了 'use client' 导致 rollup 警告大量占用控制台输出间接导致打包时间下降,面试官继续提问如果我不让你用静默怎么办,见我不知道就说了可以写插件去直接替换底层方法,不过感觉不算太严谨(逃));聊了一下通过插件移除指定注释下的代码(类似 rust 注解)(其实可以再讲讲语法转换,即向低版本的 js 代码进行兼容处理,即 tsconfig 的 target 选择)  - 网络传输用了项目从 http1.1 升级到 2.0 避免一个对头阻塞的问题(顺便牵扯到 tcp 阻塞,讲了一下前面的包没到后面的都得等),还有 3.0  - 首屏的话则是聊了一下 script 标签的 async defer 去避免 dom 解析阻塞,还有内联资源,扯了一下 tcp 拥塞控制的一个算法算出来首屏 css 控制在 14.6 kb 内,不过没讲出原理;顺便聊了一下我的博客,他的夜间模式 js 是放在 async 内执行的,面试官马上知道了会有闪烁问题,然后我就说在 html 前面写了一个阻塞 script 去修改 cssom 树,避免了闪烁- 场景题,现场设计一个 PC 登录扫码功能,PC 要有消息同步功能(1. PC 向服务器请求登录 token 并展示到二维码内,随后使用轮询或者 ws 等待状态 2. 手机扫码,获取 token 后发送到服务端,服务端改变状态 3. 通知 PC 可以登录了,由 PC 主动去请求个人信息)(中间扯了中间人攻击,包阻断,重放攻击;根据操作系统生成唯一标识符,mac 地址等)(感觉最核心的还是各种安全细节和登录成功后的消息同步功能,如何保证数据一致性)- 最后十分钟试试 IntersectionObserver,现场投屏写(前面聊了一下图片懒加载跟面试官说使用原生 loading lazy 和缺陷,面试官就反问有没有用过(没有);最后没写出来,但是面试官看完思路说大致没错,改改细节就可以了)- 反问  - 是日常实习吗(是)  - 您负责的内容(leader,项目负责人)  - 部门主要业务(搜索中台 + 大模型,顺便提醒我可以去学习一下看看真实项目怎么落地的)  - 就个人来说要怎么继续提升自己(去一下更大的平台,学习一下企业是怎么管理的,以及整个 workflow 的实现;就我的项目举了一些例子,我自己一些自研的地方其实有插件去帮助实现)  - 压力算大吗(经典话语)  - 实习时长(希望越久越好)  - 面试有什么需要改进的地方(还可以,主要是有自己的特色)
查看13道真题和解析
点赞 评论 收藏
分享
评论
6
8
分享

创作者周榜

更多
牛客网
牛客企业服务