2020年3月初开始准备暑期实习,腾讯3捞3败,最终以 0 offer告终 2020年5月中旬开始投递日常实习,收到网易的两个offer及滴滴OC。2020年8月初开始投递秋招,面试了一些大厂,没有满意的offer。
2021年春招,收到CVTE、乐视offer,知乎一面挂。
三、毕业后进互联网大厂的三个机会
1.暑期实习/春招实习:面向次年毕业的学生,一般随应届春招同步开启(3月左右)竞争相对较小,有转正,转正几率视不同公司而定。
2.秋招:面向应届生,一般在7月中旬陆续开启网申,整个招聘过程持续到9月甚至十月(12月左右零星开始补录)竞争大,HC相对较多。
3.春招:面向应届生,一般在2月中旬陆续开启网申,整个招聘过程持续到4月甚至5月(但其实4月初基本就招完了)竞争巨大,HC极其之少。
2020年7月开始准备秋招,直到春招才找到满意的工作,有了暑期实习备战的经验,已经能够清楚所有的流程和准备要点,准备阶段所做的步骤基本如下:
其实每个人都有自己特有的学习方法,我们都需要寻找到最适合自己的,在这里我只是列举出我复习的技巧,大家只需要选择适合自己的就行。
书籍和网站
我觉得看书真的是十分的重要,每一本书都有自己的知识体系,但是好书确实不多,需要经历一番挑选;关于网站则是对一些体系较小的知识进行汇总,这里推荐的是设计模式。以下我列举一些个人觉得不错的一些书籍和网站:
- Android 相关
- 《Android开发艺术探索》
- 《深入理解Android虚拟机》
- 《Android源码设计模式解析与实战》
- Java相关
- 《Java编程思想》
- 《深入理解Java虚拟机》
- 《图解Java多线程设计模式》
- 网络相关
- 《计算机网络》(谢希仁 编著)
- 《网络是怎么连接的》
- 数据结构与算法相关
- 《算法导论》
- 《算法》(第4版)
- 设计模式相关
- 练习相关
知识总结
看了这么多书籍和网站之后需要对这些知识做一个比较系统的整理,这里推荐使用思维导图工具,下图则是我总结的Android复习体系图,完整的版本大家可以点击这里下载。
面试技巧
-
面试前需要对自己总结的知识重新回顾一遍,以便在被问及时能够快速并且全面的回答问题。
-
面试前对该公司稍做了解,可以从官网或者从产品等方面了解,如果有产品的话还可以使用,看看有没有存在一些bug,当面试官要你提问题的时候可以跟他一起讨论。
-
面试完之后做稍做记录,记下自己回答的不好的问题,方便查漏补缺。
下面是我收集整理的一套大厂Android面试真题含解析,完整的朋友可以点
击【这里】免费阅读下载。
CVTE
一面 (电话面)
-
讲讲你看的Android源码
-
说说你在项目中用到的MVC
-
说说观察者设计模式
-
讲讲对线程安全的理解
-
JVM内存模型
-
HashMap的工作原理
-
知不知道可重入锁
-
GC回收算法(凉)
-
引用方式
-
内存溢出和内存泄露的区别,内存泄露一定会内存溢出吗?
-
四大组件有哪些
-
Activity的启动模式
-
Activity的生命周期
-
wait使用时要注意什么(答了死锁,面试官换了题目,应该是没有get到它的点) —和notify成对出现
-
ArrayMap和HashMap区别(没答出来,之前看过ArrayMap但忘完了…)
二面
二面应该是总监面,问题主要偏向项目,有一些问题已经忘记了,只能列出一些还记得的:
-
做了哪些项目?详细说一下项目。
-
讲一下RXJava原理;subscribeOn()与observeOn()哪一个方法多次切换线程只有第一次有效?为什么?
-
Volley原理?
-
Retrofit原理?
-
Volley与Retrofit缓存机制有哪些区别?
-
简单工厂,工厂方法,抽象工厂三种设计模式的优缺点?
-
什么是内存泄露,什么是内存溢出?
-
平常使用什么分析工具来优化APP的性能?
-
手写算法题————实现一个栈
-
Java的集合类包括哪些?各自有什么特点?
-
为什么写博客?
-
今后想要往哪些方面发展?
终面(视频面)
我并不认为我能走到最后[不是矫情和装],因为面过CVTE的人都知道,最可怕的是它的终面,终面是被人诟病的,说CVTE不好的基本都是吐槽它的终面,还是有点慌的。又过了好几天,约好了终面的时间==
-
给前两次面试打分,满分10分。为什么这么打?
-
有没有面试过哪些公司了,有收到多少offer了,为什么?
-
工作的薪资期望,地点和时长?
-
家庭情况,爸妈性格怎么样,你觉得跟谁的比较像,家里人对工作有什么要求吗?
-
你父母小时候是怎么教育你的?
-
有没有女朋友?
-
你未来有什么规划?(我说了一个三年目标和五年目标)
-
你在技术方面最有成就感的一件事情是什么?
-
最近压力最大的是什么事情,如何调解?
-
为什么没有留在之前的公司?
-
如果你面试没有通过,你觉得是什么原因呢?
-
你会因为什么原因拒绝我司的Offer?(个人觉得这个问题回答的很关键,我说我不会拒绝的,因为贵公司就是我想去的公司)
仔细回想发现有点强行跪舔的感觉,中间也暗示过几次只要你要我,我TM就去。
在两天后的晚上官网刷新状态— 终面通过了,bingo!!!
乐视
笔试:
笔试没啥特别的东西,都是一些java基础,安卓基础,几道中规中矩的算法。
一面:
-
四种启动模式?写了几个情况,让我说back键的情况?
-
LayoutManager和MeasureSpec之间的关系?
-
堆排的思想?快排的时间复杂度?手写一下快排?
-
Handler机制?
-
Service即start又bind,怎么才能彻底停止?IntentService怎么实现的?
-
Aidl中Stub和Proxy的区别?聊一聊对Binder的理解?
-
手写一个有序数组的合并?
二面:
二面整体就是根据我的简历,问了问。让我聊一聊看过的OkHttp的源码。
手写了俩个算法:
-
用最小的时间复杂度判断单链表是否有交点。
-
手写二叉树的按层级进行遍历。
HR面:
谈人生谈理想…
乐视的效率不算高…一周后给了答复,可以给offer…不过鉴于乐视最近的情况…再考虑吧
知乎
知乎算是一次体验比较差的体验…一面就让我走了,而且我都不知道啥原因。手动摊手.png
一面:
-
聊一聊ArrayList源码?什么时候初始化数组?怎么扩容?扩容时使用什么样的方式增大数组?
-
聊一聊HashMap源码?怎么扩容?源码的hash是怎么保证平均散列的?hash冲突后,使用什么方式解决?插入的时候在头结点,还是尾结点?key为空的处理?
最后
小编这些年深知大多数初中级Android工程师,想要提升自己,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。
因此我收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、电子书籍、讲解视频,并且后续会持续更新
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人
都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
如果你需要这些资料, ⬅ 专栏获取
链图片转存中…(img-jueRsnCd-1719341465937)]
[外链图片转存中…(img-9oiprKzz-1719341465938)]
[外链图片转存中…(img-fyCquV5q-1719341465938)]
[外链图片转存中…(img-bbIM5bfP-1719341465939)]
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、电子书籍、讲解视频,并且后续会持续更新
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人
都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
如果你需要这些资料, ⬅ 专栏获取