Android 开发者计划近半年的跳槽,面试四家,斩获3家Offer

Posted 冬天的毛毛雨

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android 开发者计划近半年的跳槽,面试四家,斩获3家Offer相关的知识,希望对你有一定的参考价值。

作者: 李龙

概述

最近我一直在执行一次我计划了近半年的跳槽。总得而言还不错。说下我的情况。我是去年年底开始计划,六月份开始准备,投了100+家公司,拿到了20+个面试,总共面试了四家,拿到了3个offer,周期差不多是一个月时间。

这个面经可能不是适合所有人,毕竟这次不是一线大厂的面经。不过内容可能你看了至少会发现自己还缺乏哪方面的知识点。适合人群:

  • 学历一般
  • 技术一般的中级开发:毕业1-3年
  • 安卓应用层开发

在前面的文章中我已经谈到了如何投递简历和筛选面试和offer的,这边我就不废话了。

技术储备

首先说一下,针对面试我们需要会一些什么。不管是android基础还是Java基础以及常见的数据结构和算法,这些是无原则地必须要熟练掌握的,尤其是非计算机专业的同学,面试官一上来肯定是问你基础,要是基础表现不好很容易被扣上基础不扎实的帽子,常见的就那些,只要你平时认真思考过基本上面试是没太大问题的。

俗话说的好,面试造火箭,工作拧螺丝。所以,该准备的还是要准备。有些东西长时间不看会忘,但有些东西长时间不看也不会忘。所以学习的方式很重要。好了扯远了,下面进入正题。(面试题的顺序可能不一样,印象中记忆的面试题)面试公司

面试过程

接下来就是各公司的面经了,分享出来供大家参考。

A公司一面

  1. java引用,以及引用队列,以及使用场景
  2. 拆装箱
  3. LeakCanary
  4. map
  5. 线上性能监控
  6. SharedPrefrence 遇到的问题
  7. 手写算法

A公司二面

  1. Handler
  2. 进程间通信
  3. 序列化
  4. 动画
  5. native崩溃捕获原理
  6. 结合项目提问
  7. Recyclerview的点击事件原理
  8. 启动一个空的apk,回启动几个线程
  9. 手写算法

A公司三面

  1. 跳槽原因
  2. 原来公司规模
  3. 预期薪资
  4. 个人优势

感受
1.简历上写的一定要了解,并且知道原理
2.多熟悉项目,找出一些能聊得功能点
3.崩溃捕获,以及解决(java ,native)
4.优化需要知道(大厂都会问)
5.了解由点到面,需要把知识连贯起来
6.还有如果想要高薪,一定要多跳槽,一般大厂工资涨幅都是有限度的,最高涨幅百分之30,除非你特别牛皮

B公司一面

  1. MediaCodec连环炮:MediaCodec报错,只有错误码,没有任何其它信息,如何解决?使用MediaCodec遇到了哪些问题?同步使用和异步使用有什么区别?
  2. 如何计算音频帧,一帧音频帧有多大
  3. YUV基础知识,相比于RGB减少了多少空间,YUV 各个分量都是0实际渲染出来是什么颜色的,NV21和NV12有什么区别
  4. MP4是如何存储音视频文件的,它是什么结构
  5. OpenSL 相关的问题,如何使用。可以干什么不可以干什么
  6. 结合项目问题

B公司二面

1.SurfaceView和TextureView区别
2.OpenGL ES相关问题,MVP矩阵左乘和右乘有什么区别,什么是外部纹理,为什么叫外部
3.OpenGL如何渲染一个View
4.VBO是用来干嘛的解决什么问题
5.结合项目问问题

B公司三面

1.项目是什么架构,如何设计的,为什么这么设计
2.算法题:字符串反转
3.平时如何学习的

感受:音视频开发感觉OpenGL ES问的比较多

C公司一面

  1. 自定义view
  2. Handler机制
  3. 组件化和插件化
  4. HashMap的源码
  5. retrofit和okhttp的源码用到了哪些设计模式
  6. NDK静态库和动态库编译流程
  7. openGL渲染模式
  8. Android中的动画有哪些它们之间的区别
  9. 谈谈mvvm

C公司二面

  1. 讲之前做的项目负责哪块,根据业务采用什么架构
  2. 使用过哪些设计模式,项目中遇到哪些棘手的问题,如何解决的。

C公司三面

这个是hr说,整体问下以前公司的情况等问题

感受:自己简历上写的东西要熟悉,基本面试官都是根据简历来问的。对自己以前做的项目也好好梳理,提前组织好语言,挖掘项目闪光点。

D公司一面

  1. Fragment和Activity生命周期联动,及Fragment显示与隐藏的一些方法
  2. Handler原理
  3. View绘制流程
  4. 事件分发
  5. APP从安装到启动都做了什么
  6. 设计模式相关,

D公司二面

  1. 线程都有那些状态
  2. 线程锁相关的东西
  3. 对称与非对称加密
  4. HTTPS请求过程
  5. 数组,链表,红黑树,二叉树等一些数据结构相关的东西,还有一些开放性的问题

D公司三面

hr面试,自由回答

感受:基础最重要,不仅要会用,还要知道其中的原理,会根据你的回答逐渐深入。

谈谈非技术面试

上面的问题大多数还是技术面。我这边稍微说下非技术面,一般非技术面试考你是沟通能力,表达方式,情商等众多方面。不过一般都会环绕公司的发展方向,产品等问题进行讨论。所以,单单技术好还是差一点的。比如某些公司问道,从用户角度,谈谈我司的产品怎么样?所以在面试之前,最好下一下面试公司的app进行了解。如果没找到app也可以上公司官网进行了解。

最后

跟大家分享一下我这面试前期进行收集整理复习的一些 Android 开发相关的学习文档、面试题、Android 核心笔记等等文档,希望能帮助到大家学习提升,如有需要参考的可以直接去我 CodeChina地址:https://codechina.csdn.net/u012165769/Android-T3 访问查阅。

好了,暂时只能想到这些,后面如有想到其它东西再补充哈,祝想找工作的同学都能去自己心仪的公司,前程似锦!

以上是关于Android 开发者计划近半年的跳槽,面试四家,斩获3家Offer的主要内容,如果未能解决你的问题,请参考以下文章

2022上半年《Android面试题合集+完整体系学习指南》,一步实现跳槽涨薪

手撕面试:历经半年的 Android 面经汇总

Android 开发招聘市场要求变高了,面试到底问些啥?

2019 1.5年 Android跳槽面试复盘 今日头条 有赞 贝贝网 涂鸦智能

年后准备跳槽?这份Android 中高级面试题大全,面试建议+系统复习路线不容错过

Android开发者跳槽面试,Android面试题及解析