3.25美团转暑期一面111min

由于已经在美团日常实习ing,面试官是同大组的哥哥,大概是7年经验的L7,技术特别强人也特别好555,美团的每个Engineer怎么都这么强啊,都有闪光点。

面试官上来就说,既然是在团子实习的同学,咱们今天就搞简单点,10分钟面完到点下班,写个简单的题吧:

手写20min

parseInt:要求对字符串进行判断并转换,例如:

parseInt('') = NaN

parseInt('x123') = NaN

parseInt('12x3') = 12

parseInt('123') = 123

我一开始给出的写法是遍历字符串对每个字符的type进行判断,再拼接字符串,最后转Number()。

面试官:Number()兼容性可能有问题,而且最重要的是!不够优雅!我要求你10行内写完,能行不?

我:...给点提示?

面试官:ASCII码啊,这题也就课后题难度吧,抓紧想想!

最后在提示下写出来了,11行(汗)

实习

没想到接着就是聊天,聊业务聊实习做的事情。

主要是对我的链接转换和二维码生成工具比较感兴趣,毕竟这个功能写的PV和MC都挺高,而且确实连我们组的人和mt都经常也在用,运营产研都说好!被拷打了实现方式,重点拷打美团小程序容器底层如何实现承接h5/MRN落地页,还有中间页唤端的原理是什么,这些我确实在写技术设计方案的时候有瞟过一眼相关文档,但是真的还不够深入,对技术和业务的热情应该是很看重的点。

  • 小程序h5容器的实现原理是什么?微信唤起是有上限的,谁做了处理?
  • 既然你说到了唤端,有想过APP是如何记录站外唤起来源的吗?了解过LCH吗?
  • 中间页唤端能力是如何实现的,有了解吗?
  • 既然是营销投放链接,如何记录每个渠道的流量来源?了解过灵犀UTM(追踪网址成效表现)参数吗?
  • 如果一个小程序嵌套一个MRN再内嵌了一个h5,想要做标记,应该在哪一层?(这个有点没懂,在中间那层是对的)
  • 部门在做的搭建平台的底层原理是什么?比现有的平台优势在哪里?(多端兼容+交互优化)

框架

问到这里已经一个多小时了,面试官突然说:哎呀这样的话不好写面评呀,我们来点常规问题吧,Vue和React你挑一个,咱们随便聊聊(这里选了Vue,没办法还是对Vue更熟一些)

  • data是对象还是函数,为什么?
  • Vue2和Vue3生命周期对比
  • 父子组件生命周期顺序(记住父先开始,子先完成)

  • mounted阶段做了什么?和created阶段的区别是什么?(已经将编译好的模板,挂载到页面指定的容器中
  • 请求数据应该在哪个生命周期?获取不到想要操作的DOM应该怎么做?(nextTick)
  • nextTick原理是什么?会手写吗?(Vue2和Vue3不一样,但原理相似)(校招不会情有可原,社招会考手写的)
  • slot的原理?React是如何实现slot的?为什么可以只通过props实现(函数式编程的优势)
  • 引出了Vue和React的不同,AOT和JIT优化
  • 写过微信小程序吗,了解过微信小程序里的slot是什么吗?(没有)

计网

  • get和post区别
  • 引出的东西问的很深,还涉及到了业务实践啥的

反问&总结:

  • 如何学习如何成长
  • 7年进阶之路:业务-源码-抽象模块-设计模式-代码品味-MVP
  • 收获很大,很多问题确实回答的不好,理解不够透彻。今天约了下周一现场二面,是另一个组TL面我,瑟瑟发抖
#美团##美团暑期[话题]##前端##暑期实习##面试#
全部评论
兄弟25号面的吗 时间线这么久吗
1 回复 分享
发布于 04-07 20:18 北京
太强了😭
1 回复 分享
发布于 04-08 13:18 北京
日常转暑期还需要面试嘛
1 回复 分享
发布于 04-09 11:08 北京
有点太强了
点赞 回复 分享
发布于 04-07 14:22 北京

相关推荐

代码质量的监控和检查是确保软件开发过程中代码质量达到一定标准的重要环节。以下是一些常用的方法和工具:https://www.nowcoder.com/issue/tutorial?zhuanlanId=Mg58Em&uuid=07d53be4cd034a4ab270d500feebcc8d代码审查:通过团队成员之间的互相审查来发现潜在的问题。这可以通过定期的代码审查会议、使用静态代码分析工具或版本控制系统上的代码审查功能来实现。静态代码分析工具:这些工具可以检查代码中的潜在问题,例如未使用的变量、未初始化的变量、空指针引用等。常用的静态代码分析工具包括PMD、FindBugs、SonarQube等。单元测试:编写有效的单元测试可以帮助发现代码中的错误和缺陷。使用自动化测试框架,如JUnit、TestNG等,可以确保代码在修改后仍然正常工作。代码覆盖率工具:代码覆盖率工具可以衡量测试用例对代码的覆盖程度。它可以告诉开发人员哪些部分的代码没有被测试到,从而帮助他们编写更全面的测试用例。持续集成和持续交付:通过使用持续集成和持续交付工具,如Jenkins、Travis CI等,可以自动构建、测试和部署代码,并生成相应的报告。代码规范:制定一套统一的代码规范,并使用工具进行代码风格检查,如Checkstyle、ESLint等。这有助于提高代码的可读性和维护性。性能测试:通过使用性能测试工具,如JMeter、LoadRunner等,可以对代码进行性能测试,以确保其在负载下的表现符合预期。通过以上方法和工具的结合使用,可以有效地监控和检查代码质量,提高软件开发过程中的质量标准。
点赞 评论 收藏
分享
导师要求周报要写日期和思考,而不是像流水账一样寥寥几句,因此一改往常流水账风格,写成了人机周报,有些思考还挺有用的,发布到这里,后面自己还能回顾一下。后面应该每周都会更新周报了============分割线==============10.28:修改了现有代码的Assembler层的问题,同一个方法重载多次;问题:为什么不能多次重载?思考:虽然返回的是相同对象,但是功能不同,入参不同,在调用时容易混淆,因此修改方法命名,使其更加符合其功能,而不是多次重载;10.29:通过单元测试调通ClassIn自动注册接口,画了相应的时序图;问题:流程图和时序图的区别?解决:时序图主要反映时间上每个步骤的流程,结合时间更加直观,而流程图以流程为主,在较小的范围内能清晰的展示流程;思考:对于需要调用三方服务同时又有回调的功能,用时序图会更加直观;10.30:参加需求迭代会,梳理下一期迭代的需求,拆task并大致估时,同时完成前置工作,核对了业务上的一些细节;10.31:设计用户详情表等需求相关的表;问题:第三方表账号字段为什么不能以三方服务自己的名字命名?解决:如果以三方的服务命名,那么当再次接入一个服务时,又要新增字段,每一次增加服务都要新增字段,不便于维护,且数据也会不整洁,会出现某个用户这个字段有值而另一个字段没值,每个用户的数据的结构不一致;思考:第三方账号表设计应该具备通用性,对于不同的三方服务,统一用来源表示,更加容易维护和扩展;11.1:调研阿里云图像审核的前置工作,了解如何使用并且需要哪些参数,这些参数的含义,都写入了技术文档;文档比较清晰,一些疑惑的点也都问了客服,通过示例代码了解了使用方法,没有什么问题;
投递阿里云等公司10个岗位
点赞 评论 收藏
分享
9.21.一面 50min 全程八股+算法* 自我介绍* 实习用的golang是吗  介绍一下学了什么技术?* 公司用的rpc框架是哪个?开源的吗还是* 你如何理解rpc?* 和http什么区别,为什么不都用http* haspmap并发下有什么安全问题* 扩容死链是怎么产生的* 什么情况下会产生死锁* 实际开发过程值遇到过死锁吗?* redis持久化 rdb aof讲一下* aof 重写是干什么?* redis有一个bigkey你怎么删掉* redis不是单线程的吗?* fork出来的是子进程?子线程?* 进程和线程的区别* kafka? ...不太会* RabbitMQ和kafka的区别是什么* RabbitMQ吞吐量不高吗?为什么* RabbitMQ如何保证消息可靠?* 确认、持久化机制 就能保证可靠吗?* 持久化机制会不会造成mq性能下降* 零拷贝知道是啥吗?解释一下* io多路复用模型* gmp模型讲一下* p是队列吗?* gmp要这么设计算法:1、k个一组翻转链表    2、最长回文串10.12 二面: 50min多,算法+大部分全场景 问的还是有点难算法:1.比较两个json字符串是否相等(只是顺序不同也是相等 要考虑json套json的情况) 2. n个数的数组1-n 如果有一个数重复出现 则找到并且返回* 微博热搜系统 根据热搜词做排行榜 怎么做?排行榜支持top10查询* 在业务代码层面做排序 选择什么样的数据结构?* 现在有一个爬虫 反复爬取冷门数据 造成热数据在缓存中剔除。从而导致缓存雪崩等问题。你有什么方案?* Redis底层用哪些措施保证读写效率高* Redis集群* 这个系统怎么保证服务稳定性(各个层面* 限流你会怎么做* 你刚刚提到了漏斗桶。还有什么方式做限流* 单元测试存在的意义?你觉得单测会不会和测试人员的工作内容产生冲突?反问:
查看36道真题和解析
点赞 评论 收藏
分享
13 28 评论
分享
牛客网
牛客企业服务