前言
从毕业到现在面试也就那么几家公司,单前几次都比较顺利,在面到第三家时都给到了我offer!前面两次找工作,没考虑到以后需要什么,自己的对未来的规划是什么,只要有份工作,工资符合自己的要求就行!所以在智联招聘上选好工资范围,就一顿海投,做等面试电话!
做两快三年的Android开发,工作的任务也就是一些界面的编写,RecyclerView的简单使用,网络框架也是别人封装好的直接用,再就是集成些第三方的分享、支付什么的!技术上的提升可以说根本没有,和工作一年左右的人,比起来就多几个项目优势!所以这次出来找工作还期望15K,说起来心里很慌!
一面
数据结构中堆的概念,堆排序
死锁的概念,怎么避免死锁
ReentrantLock 、synchronized和volatile(n面)
HashMap
singleTask启动模式
用到的一些开源框架,介绍一个看过源码的,内部实现过程。
消息机制实现
ReentrantLock的内部实现
App启动崩溃异常捕捉
事件传递机制的介绍
二面
ListView的优化
二叉树,给出根节点和目标节点,找出从根节点到目标节点的路径
模式MVP,MVC介绍
断点续传的实现
集合的接口和具体实现类,介绍
TreeMap具体实现
synchronized与ReentrantLock
手写生产者/消费者模式
逻辑地址与物理地址,为什么使用逻辑地址
一个无序,不重复数组,输出N个元素,使得N个元素的和相加为M,给出时间复杂度、空间复杂度。手写算法
三面
Android进程分类
前台切换到后台,然后再回到前台,Activity生命周期回调方法。弹出Dialog,生命值周期回调方法。
Activity的启动模式
RxJava的功能与原理实现
RecycleView的使用,原理,RecycleView优化
ANR的原因
四大组件
Service的开启方式
Activity与Service通信的方式
Activity之间的通信方式
HR面
家是哪的?
父母做什么的?
我看你是通信专业的,为什么想做客户端开发?
保研还尝试过哪些学校?为什么最后选择北邮?
还有别的Offer吗,薪资是多少?等等。。。
期间小姐姐一直在讲腾讯的产品、日活特别大,公司得技术氛围好、提供免费的午晚餐、健身房等等。哈哈,反正聊得很愉快。
一些给新人的建议
腾讯笔试题倾向考察C/C++
无论投的是哪个岗位,腾讯的笔试题都会重点考察C/C++的知识,即使所投岗位不要求C/C++基础。
不要被腾讯笔试题吓到
虽然腾讯笔试题考察C/C++很变态,但即使是编程题一个字都没写,也都有很大概率收到腾讯的面试通知。
腾讯网申时“服从工作地点调剂”则很大可能分到深圳
腾讯虽然在北京、上海和成都等都有分公司,但岗位都比较少,而每年招聘的绝大部分岗位都在深圳,所以选择“服从工作地点调剂”的,很大可能分到深圳去。比如,南京离上海近,离深圳十万八千里,但也是有相当大概率分到深圳的。
不要对实习转正后调换工作地点抱太大期望
实习转正后对应转正的岗位也是当前实习的岗位,即在当前组内,所以不太可能可以调换工作地点。如果坚持想要调换工作地点,可能需要按秋招流程重新来一遍。(腾讯是这么干的,但国内互联网公司大同小异)
不要认为实习一定能转正
诸如阿里、腾讯和百度等公司的实习留用率肯定不是100%,所以不要怀着实习一定能拿到秋招offer的心态去实习。
一些笔记
附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题 (含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)
如果需要PDF版本可以在群文件夹里,自行领取!