字节跳动 1 面 Too simple2 面怀疑人生,宅家修炼“65 天,flutter 下拉列表
ThreadLocal
怎么获取 view 的宽高,如何确定值是准确的,说了 view.post(),补充 viewTreeObserverOnGlobalLayoutListener
场景题:头条列表有多个不同的 card,使用 RecyclerView 怎么解耦 getViewType,获得不同的 card
说了用个管理类映射,面试官说用注解、反射,依赖注入(我??我太菜了呜呜呜)
java:
迭代器,迭代器怎么删除一个元素
说一下集合框架(Set、list、map
Hashmap 原理,红黑树如何自平衡(不会 hashmap 的 Concurrentmodification 异常(不会
双亲委派模型)
根类加载器加载什么类(jre 包下的类
GC 分代算法
GCRoots 种类
四种引用
算法题:二叉树查找,将这条路上的结点存储
反问评价,面试官说不喜欢回答这个问题
问技术栈,kotlin
问跨平台技术,说是在别的地方也有用
问教育业务规划,说的很详细
问对字节的评价, 面试官说这是一家有方法有效率的公司,它的发展有目共睹,在这里工作能学到很多
问我怎么选择客户端开发,以及看待客户端的发展。
过了几天没有收到三面的通知,看 boss 上就显示,已结束面试!
一般技术面到后面,面试官都是 leader 或者是部门老大,他们其实很关心你的职业规划、对待工作的态度、团队合作的能力、自我价值实现方面的思考,当然还有项目实现的能力,过往项目经验和深度。所以最好自己先想想怎么用简短的话表述清楚。注意围绕关键词去说。
写给看到最后码友的话
这些算是我作为过来人对于应届毕业生和刚工作不久的同学的一些小小建议吧。
(1)一定要紧跟技术前进的脚步,尤其是大数据相关的技术,在技术更迭的时候一定要学习熟悉新技术,看源码,哪怕自己在工作中用不到也一定要学。因为这是你下一份工作的敲门砖。
我作为一个老兵,在上一家公司工作 4 年,我没有逼迫自己学习新技术。
结果现在面试碰壁,其实大部分原因就是人家用的都是主流技术,你不会你就被淘汰。
(2)不要给自己设置舒适区,这个就是说,一个公司待久了不要懒惰,不能荒废自己,始终要保持清醒的头脑和进取心,不断学习,不断完善自己的技术,架构设计能力,项目管理能力,交付能力等。
一定要及时从项目中总结经验和不足,最好落实到日记本中,最后通过不断思考,形成自己的做事方法论。
(3)对自己的职业生涯要有一个规划,以后要做哪一块一定要有自己的想法,确定了就要从这个方向完善自己,多学多练。
目前大数据这一块,有数据中台架构的公司不是很多,除了算法岗外,大多数人在团队中都是 1 专多能的角色,今天干干 ETL,明天搞数仓,后天又给 BI 出数据,可能又搞调度系统、报表系统、标签系统、反作弊平台等平台。
没有人会专一做某一块,但是自己一定要想好哪一块是自己以后要走的方向,那么这一个方向确定了就要深入的学习这一块的知识,多看源码,多做练习,如果接触到具体项目,要在项目中沉淀自己,最后形成自己的知识体系。
**(4)做事情要有担当,不要根据 OKR 给自己设置界限,有能力有空闲多做一定要多做,这也是别人认可你的最佳途径之一。**互联网圈子很小,大家认可你,以后去大厂,换个好工作,也许就更容易。
[](
)最后
我见过很多技术 leader 在面试的时候,遇到处于迷茫期的大龄程序员,比面试官年龄都大。这些人有一些共同特征:可能工作了 7、8 年,还是每天重复给业务部门写代码,工作内容的重复性比较高,没有什么技术含量的工作。问到这些人的职业规划时,他们也没有太多想法。
其实 30 岁到 40 岁是一个人职业发展的黄金阶段,一定要在业务范围内的扩张,技术广度和深度提升上有自己的计划,才有助于在职业发展上有持续的发展路径,而不至于停滞不前。
不断奔跑,你就知道学习的意义所在!
算法与数据结构突击手册
Android 核心技术笔记
Android 面试神技
Android 三方库学习笔记
[](
)在我的 GitHub 里面有自己搜集整理的一套,进阶 Android 高级工程师系统学习资料可以免费分享给大家,需要完整版的朋友,【[点这里可以看到全部内容](
)。】
如果需要 PDF 版本可以在群文件夹里,自行领取!
[](
)**自行下载直达领取链接:【[https://links.jianshu.com/go?to=https%3A%2F%2Fjq.qq.com%2F%3F_wv%3D1027%26k%3DBRZhpPkt](
)】**
评论