Android三非实习面筋:3轮面试,终与字节无缘,结束了,被焦虑支配的120天

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Android开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip204888 (备注Android)
img

正文

  • 自我介绍

  • 介绍一下项目

  • 软件大概样式是怎样

  • 首页是怎样做的

  • 首页下拉刷新是怎么做的?(说了滑动冲突的处理)
  • view 事件分发机制怎样
  • 事件好几层,怎么知道是由哪个控件处理(说了根据触摸的位置啥的,不太了解对不对)
  • 提到了责任链,内部链怎么分发的
  • 怎么判断哪个 view 处理(根据 return true/ false
  • 我们的事件有action_move,action_down,action_cancel,所有的事件都是一层一层往下分发吗(说了不一定,down 被拦截了,后续就收不到其他的事件了,然后提到了 action_cancel 的机制)
  • 我听到你首页用了 recyclerView ,那他一般怎么用?
  • 提到了 adapter
  • adapter 用来干嘛?
  • adapter 中有哪些是主要方法(说了 bindView ,这块不太记得了,说项目中用到的是 BRVAH )
  • 提到了 ListView
  • 为什么用 Rv 不用 Lv(说了1.强制实现 viewHolder (避免 findViewById ) 2.缓存机制)
  • Lv 二级缓存怎么判断这个 View 是他要的?(答了 postion,id
  • 然后问 id 指的是?(这里说忘记了)
  • 四级缓存是怎么找到 view 他要的?(说了 itemType )
  • 如果有相同的 itemType 怎么处理?(说了直接使用任意一个)
  • 如果四级缓存中找不到呢?(说了手动加载)
  • 手动加载是哪里来的?(说了从布局 xml 中定义的 itemtype 中拿的)
  • xml 怎么关联到 Rv (加载代码 inflate 的,不太了解)
  • 堆内存和栈内存区别

  • 5层网络协议包括哪些?

  • tcp 三次握手说一下

  • equals 和 == 区别

  • hashmap 实现原理(说了基本结构,put

  • get 是怎样实现的

智力题:

  • 5升桶,3升桶,水无限,你给我装出4升水

算法:[82. 删除排序链表中的重复元素 II](javascript:void(0)😉

技术面三面(时长37分钟)

  • 自我介绍

  • 架构设计主要是什么

  • 说一下你提到的依赖倒置

  • 除了依赖倒置还有什么重要的原则(刚说完单一职责就被打断)

  • MVP注意事项(说了内存泄漏的处理)

  • 内存泄漏的原理

  • 怎么判断内存不能被释放

  • 如何检测内存泄漏(说了线下用 LeakCanary,线上用 Memory profiler,然后自己扯到 DialogFragment 内存泄漏)

  • 打断,问 final 作用(说了修饰类,方法,变量,作用)

  • 非静态内部类引用外部类对象,需要 final 关键字吗?(说了应该用 static ,转为静态内部类,防止内存泄漏)

  • 多线程使用过吗

  • 说一下线程池的使用(刚说了构造方法实现)

  • 核心线程数什么作用(说了线程池的运行流程)

  • 核心线程数和最大线程数的设置(IO 密集型和 CPU 密集型,最大线程数的话,看系统支持的并发量)

  • 一个进程有多少个线程?(说了空间允许的范围内可以一直开辟)

  • 实际上是多少?(说了 2g 分配的空间)

  • 为什么是2g(说了之前看过,具体原理不太清楚)

  • 一个异步任务都开一个线程,还是多个任务开一个线程,你怎么决定开不开?(说了耗时的话就开,不太耗时不开,因为线程切换调度的话,存在一定的开销)

  • 线程安全怎么保证?

  • syncronized 内部原理是什么(说了修饰静态方法和非静态方法,代码块)

  • 修饰静态方法和非静态方法,能够并发执行吗?(可以,因为他们锁的对象不一样,说到了死锁)

  • 死锁的原理是什么?

  • 出现死锁怎么排查(这个不太会,说了用 jvm 中的 jstack )

  • 追问怎么用?(说没用过,只是知道)

  • 问我他的原理是什么?(不太知道,说看 traces.txt ,看堆栈)

  • 怎么安全停止一个线程(说了用 volatile 修饰变量,通过 while(变量),手动设置 true false )

  • volatile 原理是什么?(说了 java 内存模型啥的,修饰特性啥的)

  • 网络了解吗

  • tcp 优点(可靠性,面向连接)

  • 面向连接是什么?(说了计算机通信前建立连接)

  • 面向连接和非面向连接的本质区别是什么?(乱答,不知道)

  • 拥塞控制原理

  • http 与 udp 区别(说了层数)

  • http 请求流程

下面开始聊天了

  • 反问

HR 面

  • 你是周一面的三面,这几天关于面试你是怎么考虑的?

  • 周一面试完,周四周五才给你反馈,有考虑过面试不通过吗

我说周二就给我反馈了

  • 面试感受如何?

  • 你对面试做了什么准备

  • 客户端基础知识方面的话,你是怎么复习和准备的?

  • 有做一些刷题吗?

  • 字节算法这块,难度怎么样

  • 距离毕业还有一年半,你怎么规划这段时间

  • 你们是信息安全专业?应该不是计算机专业的同学吧

  • 你是什么时候考虑转开发

  • 你是大一就打算做开发?还是说进到工作室后,受到师兄的影响才转开发?

  • 介绍一下工作室

  • 配合方式是怎样的?

  • 说一下影响比较深的项目

  • 主要是客户端做?还是前端后台都有?

  • 这个项目你们老师也是怎样评价的?

  • 团队协作有没有遇到比较难推进的时候?

  • 你会主动去配合团队吗

  • 自己学习或者工作,怎么安排时间?

  • 工作的时间占你一天多少时间?

  • 任务你是怎么管理

  • 你的方法论挺好的,你提到的日程管理软件是哪个?

  • 旁边人用哪几个词语评价你

  • 你的优点缺点分别是什么?

  • 有遇到压力特别大的时候吗?

  • 你在学校成绩怎样

  • 你对自己的未来的规划

  • 什么时候能来?能来多久

  • 学校课程怎样

  • 反问

面试字节需要做好哪些准备


通过整个面经就会知道,现在互联网校园招聘技术岗位面试所考察的内容是非常的标准化的

面试流程主要分为三个部分:

  • 字节跳动是非常重视应试同学编程能力的考察的,每轮技术面试都会考察2-3道算法题目。

  • 然后第一轮面试会着重考察候选者的Android基础知识,java基础,数据库,操作系统,计算机网络等。

  • 然后后续面试面试官会围绕着候选者的项目进行提问。

要想掌握正确的学习准备方法,最关键的就是要知道面试问的是什么!所有的考试面试其实都有重点可寻的,最忌讳盲目的瞎学准备!

同时这里还要额外说一下,推荐大家去多看面经,并不是让大家只看面经,死记硬背面经,投机取巧。这种只简单被面经的同学面试也是无法通过的。还是要踏踏实实的去多认真学习技术,多看优质的官方技术文档、书籍、博客。

知己知彼,百战百胜。

Android市场需求短期内提升自己

Android方向

关于Android的发展方向这里我归类了如下几类:

1、应用层开发,不限于各种产品,主要还是Android原生开发,主要是各种性能优化。

2、嵌入式开发,不限于各种开发板子,物联网,智能家居,车联网/车载

3、安全开发,不限于各种反逆向,反汇编,寻找安全漏洞

4、音视频开发,不限于直播、点播、音视频通话、音视频会议,短视频等

5、插件化、组件化、热修复开发,不限于自研和使用开源框架集成开发

6、系统开发(Android),不限于Rom维护和FrameWork层定制需求

7、图形图像开发,不限于OpenGL ES,EGL,GLSurfaceView,滤镜,美颜

8、小程序 / 快应用

按照Android 标准面试问题学习

目标明确,字节岗位职责:

最后

我的面试经验分享可能不会去罗列太多的具体题目,因为我依然认为面试经验中最宝贵的不是那一个个具体的题目或者具体的答案,而是结束面试时,那一刻你的感受以及多天之后你的回味~

很多人在刚接触这个行业的时候或者是在遇到瓶颈期的时候,总会遇到一些问题,比如学了一段时间感觉没有方向感,不知道该从那里入手去学习,对此我整理了一些资料,需要的可以免费分享给大家

在这里小编分享一份自己收录整理上述技术体系图相关的几十套腾讯、头条、阿里、美团等公司的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。

【Android核心高级技术PDF文档,BAT大厂面试真题解析】

【算法合集】

【延伸Android必备知识点】

【Android部分高级架构视频学习资源】

**Android精讲视频领取学习后更加是如虎添翼!**进军BATJ大厂等(备战)!现在都说互联网寒冬,其实无非就是你上错了车,且穿的少(技能),要是你上对车,自身技术能力够强,公司换掉的代价大,怎么可能会被裁掉,都是淘汰末端的业务Curd而已!现如今市场上初级程序员泛滥,这套教程针对Android开发工程师1-6年的人员、正处于瓶颈期,想要年后突破自己涨薪的,进阶Android中高级、架构师对你更是如鱼得水,赶快领取吧!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注Android)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

无非就是你上错了车,且穿的少(技能),要是你上对车,自身技术能力够强,公司换掉的代价大,怎么可能会被裁掉,都是淘汰末端的业务Curd而已!现如今市场上初级程序员泛滥,这套教程针对Android开发工程师1-6年的人员、正处于瓶颈期,想要年后突破自己涨薪的,进阶Android中高级、架构师对你更是如鱼得水,赶快领取吧!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注Android)
[外链图片转存中…(img-VzftZssG-1713703066372)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 15
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值