Android开发3年,4个月面试,终于拿到小米、京东、字节大厂offer

                     Android开发3年,4个月面试,终于拿到小米、京东、字节大厂offer_第1张图片

前言

普通本科计算机专业,坐标杭州,工作三年以来换过两个小公司,但是目标一直是大厂。谨以此文来记录我的学习历程,如有错误,希望大家能及时提出!

面试情况

从19年11月初到20年3月底,前前后后一共面试了 14 家公司的Android岗,按城市划分为:

  • 北京:小米,京东,美团,百度,去哪儿

  • 杭州:阿里,网易,微店,字节跳动

  • 上海:七牛云,哈啰出行

  • 深圳:腾讯,富途,乐信

历时4个月,最终收获了 小米、京东、微店、字节跳动 的offer

学习笔记(技术点)

  • Java
  • FrameWork层源码解析
  • 自定义view
  • 性能优化
  • NDK

这是平时学习过程中,整理的Android进阶技术重点,也整理成了技术面。但是,我整理的并不都是单纯的面试点。大厂对于应聘者的综合水平和能力更看重,而不是要招一个只会背面试题的程序员。这点希望大家能理解...

Java

  • 深入学习Java中的泛型
  • 反射及动态代理模式
  • 多线程与Android线程性能优化
  • 线程池原理与AsyncTask
  • 虚拟机的前世今生,深入理解JVM内存区域
  • 内存分配与回收策略~深入理解垃圾回收器
  • 热修复核心原理——ClassLoader类加载
  • RxJava
  • dagger2
  • 序列化
  • Android序列化-JSON深入理解
  • Java IO核心原理及应用(StreamFile操作)
  • Java IO 实战——AES加密让你的APK牢不可破

FrameWork层源码解析

  • 从四个视角理解Activity的启动模式
  • 进程间最基本的通信原理你了解多少(Binder)?
  • Android AMS浅析
  • 手写Activity插件化
  • AndroidWMS面试要点
  • Android年薪百万的进阶攻略-PKMS
  • 从架构师的角度分析AndroidHandler源码的正确姿势
  • 每次遇到滑动冲突都头大Leo带你寻找事件冲突的根源

自定义view

  • RecyclerView性能为什么这么好?深度解析它的缓存机制
  • CardView+RecyclerView实现一线名企的UI炫酷界面
  • 独立使用Git命令完成代码管理
  • ViewPager 源码解析与性能优化
  • Android Webview独立进程架构实战
  • hook源码实现换肤
  • Android应用进程的管理 以及保活拉活的那些事儿
  • 告别繁琐的AIDL,IPC通信框架设计与实现
  • 从零开始MVVM新闻客户端架构实战

性能优化

  • Android启动优化

  • Android 绘制优化

  • 内存抖动和内存泄漏

  • Profile、Mat排查内存问题代码

  • 内存问题常见场景

  • 代码结构优化(设计模式)

  • Bitmap的内存管理与长图加载

  • 数据结构优化
    1)数据结构方法论?
    2)Android常用数据结构原理分析;
    3)数据结构应用方法论;

  • Android 电量优化
    1,手机发烫是为何
    2,Android电量统计原理
    3,Android电量统计分析
    4,电量优化

  • Android 存储优化
    1,存储方式
    2,数据传输优化
    3,Android 7z压缩

  • apk优化
    1.apk是什么东西?
    2.动态库有多少就添加多少吗?
    3.无用的资源和代码怎么去除?
    4.资源混淆原理讲解

  • Android 适配方案

NDK

  • C与JNI,NDK的关系,与java的区别
  • C基本语法;

指针,数组与指针,多级指针
字符串,结构体 ,共用体,文件读写

  • JNI开发

JNI变量涵义与JNI字符串调用
JNI调用java函数与JNI引用

  • C++基础

C++对C的加强,C/C++中的const, 引用
C++对C的函数扩展,C++面向对象一
C++的构造函数与析构函数
C++的浅拷贝和深拷贝
C++的初始化列表;
C++的new delete;
C++操作符重载
C++操作符重载;
C++静态成员变量成员函数
C++友元

C++操作符重载

C++类继承和多态

  • Linux基本操作
  • CMake基础
  • 腾讯开源组件MMKV的原理与实现一
  • Android使用giflib实现高效gif动画加载
  • NDK开发实战;

身份证识别
OpenCV人脸定位模型训练
OpenCV人脸跟踪
OpenCV车牌识别1-图像预处理与车牌定位
OpenCV车牌识别2—SVM训练与hsv定位
OpenCV车牌识别3—字符分割与识别

  • FFmpeg视频播放器;

ffmpeg介绍与音视频基础
视频解码与本地绘制
音频解码与OpenSL ES播放
音视频同步

  • RTMP录屏直播;

手机屏幕数据获取与MediaCodec编码
音频数据编码与推送
x264/faac交叉编译与CameraX预览

摄像头数据处理
视频数据编码与推流
音频采集编码与推流

  • opengl抖音视频处理;

opengl显示摄像头图像
opengl录制视频
opengl录制视频

  • OpenGL视觉效果处理—小黄人大眼萌
  • OpenGL视觉效果处理-贴纸与磨皮

结尾

对于程序员来说,要学习的知识内容、技术有太多太多,要想不被环境淘汰就只有不断提升自己,从来都是我们去适应环境,而不是环境来适应我们!

这里附上上述的技术体系图相关的几十套字节跳动,京东,小米,腾讯、头条、阿里、美团等公司19年的面试题。把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节。

由于篇幅有限,这里以图片的形式给大家展示一小部分。详细下面石墨文档可以见;

 

Android开发3年,4个月面试,终于拿到小米、京东、字节大厂offer_第2张图片

 

Android架构视频+BAT面试专题PDF+学习笔记​

天道酬勤,只要你想,大厂offer并不是遥不可及!

希望我的经历能为你带来帮助,如果有问题,请在评论区留言

你可能感兴趣的:(Android开发)