字节面试官:看了 3000 多份简历,面试 1000 场后,androidjni 开发书籍
子线程怎么用 handler
问网页连接怎么启动本地 app.
android 四大组件 Android 四大基本组件分别是 Activity,Service 服务,Content Provider 内容提供者,BroadcastReceiver 广播接收器。
2 ANR(ActivityNot Respone)(无响应)先介绍下 Main 线程(也称为 UI 线程、主线程)
功能:1.创建 UI 控件 2.更新 UI 控件状态 3.事件处理 限制:Main 线程不建议有超过 5 秒的事件 出现条件: 当用户输入事件 5s 内没有得到响应,将弹出 ANR 对话框 广播接收者的 onReceive()执行时间超过 10s 解决方案(原则): 所有可能的耗时操作都要在子线程()中执行 常见耗时操作:I/O:网络操作 SDcard 数据运算
FC(Force close)原因:1.Error OOM(out of memory error) StackOverFlowError
RuntimeException 解决办法: 看日志
针对项目问了具体的问题
问一下 Java 的基础技术问题,多线程,jvm 相关。Android 部分主要问的也是一般的基础性的问题。
第四面是综合面
1. 为什么离职
2. 有没有[职业规划](/jump/super-ju
mp/word?word=职业规划)
3. 对公司未来的展望
4.以前公司的薪资待遇
5. 期待的薪资
字节跳动
一面?(3.26 现场面 30min)
好像不止这些,但是我真的记不得了 orz
二面?(3.26 现场面 45min)
介绍项目,也是比较概括的介绍,没有追问 android 实现的细节。
有没有想过把项目推广到市场上,有没有想过和别的公司合作之类的,有没有想过结合手环。
项目有哪些缺陷。
【 这里好像还问了一些项目相关的,可是金鱼脑的我又想不起来了。】
是本地的吗,小学初中在哪上的,父母退休了吗,父母在哪上班,有兄弟姐妹吗。
有什么兴趣爱好。
觉得自己的缺点是什么。
如果要在五百人面前介绍你的项目,你会怎么办。
项目没有进展,很焦虑的时候怎么办,有没有想过寻求周围人的帮助。
压力很大的时候怎么调整自己。
最近让自己心烦的事情是什么,我说是找实习,他就问那怎么缓解这种情绪,周围人是什么状态的,他们怎么鼓励你之类的。
愿不愿意去上海。【其实这个问题,面试官后来说了很多,大概意思就是,华为内部调整的很快,业务需求可能会让你经常出差,或者去上海广州工作几年,也不确定要多久;还说也可能你以后因为公司需求不能安卓开发,会做其他的,总之就是说变动会很多】
如果工作节奏非常快,你可以接受吗,可能刚入职就会节奏很快。
百度
<u>公共知识点部分
安卓知识 activity 场景、启动模式、生命周期、ipc、组件化、kotln、携程
java aop、ioc、进程线程关系、数据结构、线程同步
其他 设计模式,sql 语句
计网,操作系统都没咋问,算法题也没撕
一面 50 分钟
1.java 的一些基础知识,设计模式知道啥都说说,项目介绍介绍
2.安卓 基础知识,ipc 通信、组件化
3.用过啥三方库?源码看过没?你都没看过我还能问你什么?
4.有啥想问我的 现在多进程保活场景
5.虽然你基础不咋地,看你掌握还凑活给你过了
十分钟之后二面
二面 70 分钟
1.项目讲一遍,深挖了一下,<u>用过啥三方库?源码看过没?你都没看过我还能问你什么?</u>
2.写个 sql 吧,kotlin 语法
3.一个智力题,超简单的规律,没想出来
4.反问
十分钟之后三面
三面 45 分钟
是个女面试官
1.项目讲一下,讲讲你项目困难的地方(被前面的喷完了这面不敢说了)
2.学习路线是什么,职业规划是什么
3.设计模式讲一遍
4.场景题
5.设计个扫雷游戏,重点是点击后的状态变化、随机位置
6.有啥想问我的
3.总结
很多人问我从 Android 小白到架构师的职业规划到底是怎样的?
我们初入这行是可能出于兴趣,可能出于前景。入行这个职业就代表着你需要不断的学习、学习,进阶、进阶。
在我们入行之初,为了就业,我们不得不让自己的知识体系更具有**“广度”**
入职后,你发现并不是之前所学的知识都需要用到,你开始需要进阶某一知识模块的**“深度”**
此时你具备初级开发的:知识点
工作了几年后,你发现你需要更大的舞台,你需要好几个连起来模块的深度进修。此时你具备了中级工程师的:知识面
又过了几年,你已是职场老鸟,你几乎能解决工作中所有日常问题。你具有许多的知识面,你将你所有的知识面串联,形成了一套完整的知识体系。
此时你是一名高级工程师:知识体系
可是,你已经到了 30+,快要退休的年纪,你身后有无数的高级工程师随时可取代你的位置。此时,你需要探索代码更深处的奥妙,你不再是只会建房子的“砌砖师傅”
你懂得每块砖头的组成、结构,你知道一所房子哪个地方需要这块“砖头”,哪个地方适合另一种“砖头”。你知道这所房子需要怎样建造,怎样设计更坚固、合理且美观。此时,你是一名架构师。
为什么很多程序员做不了架构师。1、良好健康的职业规划很重要,但大多数人都忽略了 2、学习的习惯很重要,持之以恒才是正解。3、编程思维没能提升一个台阶,局限在了编码,业务,没考虑过选型、扩展 4、身边没有好的架构师引导、培养。所处的圈子对程序员的成长影响巨大。
评论