看了那么多面经,终于一举拿下美团Android工程师offer!

Posted 小陈乱敲代码

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了看了那么多面经,终于一举拿下美团Android工程师offer!相关的知识,希望对你有一定的参考价值。

前言

分享的是别人的经历~

本篇文章主要是回忆今年上半年的面试总结。现已入职美团几个月的时间,终于有时间写下这篇android面经。

今年的开端有些特殊,疫情的缘故对我们的生活造成了很大的影响,这对于一名求职者来说,更是添上了一堵“难墙”,尽管如此,但我们也不能够错失金三银四的机会,该抓住的就要抓住。现在很多互联网公司都已经采取线上面试的方式,所以提前做好准备,投简历、顺利面试,定会拿下心仪的offer,而我也总算取得自己想要的成功,美团三面通关。

面试过程

美团一面:

  • redis集群,为什么是16384?哨兵模式,选举过程,会有脑裂问题么?raft算法,优缺点
  • JVM类加载器,自定义类加载器,双亲委派机制,优缺点,tomcat类加载机制
  • Tomcat热部署,热加载了解吗?怎么做到的?
  • cms收集器过程,g1收集器原理,怎么实现可预测停顿的?region的大小,结构
  • 内存溢出,内存泄漏遇到过吗?什么场景产生的?怎么解决的?
  • 锁升级过程,轻量锁可以变成偏向锁么?偏向锁可以变成无锁么?自旋锁,对象头结构,锁状态变化过程
  • kafka重平衡,重启服务怎么保证kafka不发生重平衡?有什么方案?
  • 怎么理解分布式和微服务?为什么要拆分服务?会产生什么问题?怎么解决这些问题?
  • 你们用的什么消息中间件?kafka,为什么用kafka?高吞吐量,怎么保证高吞吐量的?设计模型,零拷贝
  • 算法1:给定一个长度为N的整形数组arr,其中有N个互不相等的自然数1-N,请实现arr的排序,但是不要把下标0∼N−1位置上的数通过直接赋值的方式替换成1∼N
  • 算法2:判断一个树是否是平衡二叉树

美团二面:

  • Innodb的结构了解么?磁盘页和缓存区是怎么配合,以及查找的?缓冲区和磁盘数据不一致怎么办?mysql突然宕机了会出现数据丢失么?
  • redis字符串实现,sds和c区别,空间预分配
  • redis有序集合怎么实现的?跳表是什么?往跳表添加一个元素的过程,添加和获取元素,获取分数的时间复杂度,为什么不用红黑树?红黑树有什么特点?左旋右旋操作
  • io模型了解么?多路复用,selete,poll,epoll,epoll的结构,怎么注册事件,et和lt模式
  • 怎么理解高可用?如何保证高可用?有什么弊端,熔断机制,怎么实现?
  • 对于高并发怎么看,怎么算高并发,你们项目有吗?如果有会产生什么问题,怎么解决
  • 项目介绍
  • 算法:给定一个二叉树,请计算节点值之和最大的路径的节点值之和是多少,这个路径的开始节点和结束节点可以是二叉树中的任意节点

美团三面:

  • 项目介绍
  • 线上有遇到大流量的情况么,产生了什么问题,为什么数据库2000qps就撑不住了,有想过原因么,你们当时怎么处理的?
  • 限流怎么做,如果让你设计一个限流系统,怎么实现?
  • 算法:求一个float数的立方根,牛顿迭代法
  • 什么时候能入职,你对岗位的期望是什么?
  • 你还在面试其他公司么,目前是一个什么流程?

最后

Android面试大致可以分为Java、Android、计算机网络、算法和数据结构等板块,上面的内容没有给大家做分类处理,为了大家更好的进行阅读,我将面试题放到了具体的板块来进行解读,帮助大家掌握最新的面试题考点。

*《2022最新Android中高级面试真题汇总+解析》(免费领取~)*

面试题合集分为9个部分:Java基础、Android基础、UI控件篇、网络通信篇、架构设计篇、性能优化篇、源码流程篇、新技术篇、面试篇,共1932页!

第一章 Java基础

  • 静态内部类和非静态内部类的比较
  • 多态的理解与应用
  • java方法的多态性理解
  • java中接口和继承的区别
  • 线程池的好处,详解,单例(绝对好记)
  • 线程池的优点及其原理
  • 线程池的优点(重点)
  • 为什么不推荐通过Executors直接创建线程池
  • 不怕难之BlockingQueue及其实现
  • 深入理解ReentrantLock与Condition
  • Java多线程:线程间通信之Lock
  • Synchronized 关键字原理
  • ReentrantLock原理
  • HashMap中的Hash冲突解决和扩容机制
  • JVM常见面试题
  • JVM内存结构
  • 类加载机制/双亲委托

第二章 Android基础

  • Activity知识点(必问)
  • Fragment知识点
  • Service知识点
  • Intent知识点

第三章 UI控件篇

  • 屏幕适配
  • 主要控件优化
  • 事件分发与嵌套滚动
  • 动态化页面构建方案

第四章 网络通信篇

  • 网络协议

第五章 架构设计篇

  • MVP架构设计
  • 组件化架构

第六章 性能优化篇

  • 启动优化
  • 内存优化
  • 绘制优化
  • 安装包优化

第七章 源码流程篇

  • 开源库源码分析
  • Glide源码分析
  • Android面试题:Glide
  • day 20 面试题:Glide面试题
  • 聊一聊关于Glide在面试中的那些事
  • 面试官:简历上如果写Glide,请注意以下几点…
  • OkHttp源码分析
  • okhttp连接池复用机制
  • okhttp 流程和优化的实现
  • 一篇让你受用的okhttp分析
  • OkHttp面试之–OkHttp的整个异步请求流程
  • OkHttp面试之–HttpEngine中的sendRequest方法详解
  • OkHttp解析大总结
  • Okhttp任务队列工作原理
  • Android高频面试专题 - 架构篇(二)okhttp面试必知必会
  • Android 网络优化,使用 HTTPDNS 优化 DNS,从原理到 OkHttp 集成
  • Retrofit源码分析
  • RxJava源码分析

第八章 新技术篇

  • 实战问题篇

第九章 面试篇

  • 开源文档
  • 面试文献

篇幅原因,文中仅以截图形式展示部分内容

另外,欢迎大家一键三连支持,若需要其他Android开发资料,直接点击文末CSDN官方认证微信卡片免费领取↓↓↓

以上是关于看了那么多面经,终于一举拿下美团Android工程师offer!的主要内容,如果未能解决你的问题,请参考以下文章

凭借着这份面经,我拿下了字节,美团的offer!

凭借着这份面经,我拿下了字节,美团的offer!

刚从美团京东阿里面试拿下双offer王者归来,学习雷锋熬夜整理面经分享

怒肝15天终于将Kafka的重平衡一举拿下

开发五年涨薪无望,搞懂了这六大技术终于拿下美团offer,薪资45K

又一神器:《Android工程师10+BAT面试题大合集》,助你迅速拿下腾讯美团爱奇艺等大厂offer