11月底准备跳槽,先后面试了各大小公司,拿了一些offer,有阿里,滴滴,快手,达达,得物等公司。面试的公司大部分都能过,所以这里给大家分享下自己的经验, 也给自己做个归档,希望能给正在准备跳槽,找工作的朋友一点帮助,这里主要分享下阿里面试的经历!
阿里一面
- mvp mvvm区别 mvvm中的databinding如何刷新view的
- 跨进程通信方式,binder机制
- leakcanary原理
- 内存优化和工具,APK瘦身
- get和post的区别,浏览器中输入一个地址然后展示出页面这个过程中做了哪些操作
- 断点续传和下载的原理
- glide缓存原理,lru算法
- 动态代理原理
- 有什么问题要问我的吗?
时间不长,大概三十分钟,面试官人不错。一面结果通过。
阿里二面
过了一个星期,由于当地有阿里的子公司,就去了子公司的会议室进行视频面试。
- 二面看上去是个组长的人,年纪并不轻。同样的自我介绍开始,然后聊来深圳发展的意愿,个人的情况,然后问了一下做的项目,就开始问问题了。
- java虚拟机
- 内存优化
- arraylist hashmap linkedhashmap
- binder
- surfaceView和view
- AMS WMS
- APK瘦身
- 锁(死锁的场景和解决方案)
- 算法 两个字符串 比较最大的公共字符串 ,主要是思路 (面对问题,以大化小)
- 问了我期望薪资,本来说月薪了,后面他说他们那里是按年薪算的。然后让我等一下 ,他去找部长去概去了二十分钟。
二面结果:通过。
阿里三面
- http优化 okhttp多路复用
- 硬币兑换问题 [算法]
- 车的通过问题,一条路上,30分钟内看到有车通过的概率是90%,那么5分钟之内概率是多少
- 图的展现形式
- 全球货币转换功能的代码
- 给你一个整数数组 nums ,请你求出乘积为正数的最长子数组的长度
阿里四面
又过了一个星期。才到HR面,是当地子公司视频面试。
- 自我介绍,项目类型。
- 为什么考虑到深圳发展?
- 为什么选择平安银行?
- 现在在面试哪些公司?
- 如何规划自己的生活?
- 期望薪资。
如何快速搞定Android面试,总体上做好以下三点即可:
- 简历准备
- 核心技术及面试题
- 面试技巧
简历准备
首先你要准备的是简历。简历很重要,这是别人了解你的第一个地方,所以简历要好好写。
- 自我简介: 用最简单的话来说明自己的情况,不超过200字。
- 个人技能: 让对方了解你掌握的技术和熟悉的领域。
- 经验和软技能: 带过多少人的团队、有多少年的项目管理经验、学习能力如何、执行力怎么样、设计过什么样的系统。(不要太多,几句话就好)
- 工作经历: 不要列一大堆项目,挑重要的,主要突出项目的难度(技术点)、规模(用户量、并发量、吞吐量)、挑战(高可用、技术瓶颈及突破)、职责(项目经历/核心开发)等。
核心技术及面试题
如果这些问题你回答不出来,那么我建议你刷一遍题库。我这里有一份Andorid从底层基础到架构成长笔记和腾讯、爱奇艺、字节等大厂的面试真题,帮助大家搞定大厂面试的必考点、高频点、加薪点, 这些已经整理在Github,如果你有需要完整版,可点击传送门直达!
2021大厂Android中高级进阶面试指南目录
内容展示
无论是你短期内想提升 Android 内功实力, 突破自己工作中的能力瓶颈,还是准备参加 Android 面试,都会有所收获。这套指南,我根据面试时经常被问到的几个方向,划分了 8个模块来展开:
为便于你理解,我会采用“知识点 + 项目实践”的讲解方式, 侧重总结工作上的实践经验,并和你分享一些疑难问题的解决思路,让你在以后的工作中,能够有方法论的指导。
总结
很多求职者抱怨大厂“面试造火箭,工作拧螺丝”, 但实际上,面试中的大多数问题都是在全方位地考察你对技术的理解深度,以及解决问题的能力。你看似无理甚至无用的问题,比如 “是否写过自定义 Gradle 插件?”, 其实是面试官想借此看看你对 Gradle 的理解情况和掌握程度,进而引申到你对 Android 编译打包流程的理解。在熟知编译打包流程的前提下,你才会深谙 APK 深度瘦身的原理和过程。
听起来像是各种套路,但是技术是无止境的,你需要对自己提交的每一行代码、使用的每一个工具负责,不断挖掘其底层原理,才能使自己的技术升华到更高的层面。
|