跳槽必备:深挖 Android 技术
ReactNaitve 底层重构的新架构 Fabric,将管理器等往 C++ 迁移实现同步操作和性能优化;
Flutter 1.2.1 正式版发布,稳步推进稳定性的同时,考虑向着更多平台拓展。
UCloud 的 uni-app 、滴滴的 Chameleon 通过各自的标准,希望把 APP、前端和小程序一并纳入后宫。
但这并不意味着原生开发的“没落”!无论哪种跨平台的加持,最终都离不开你的原生系统能力。大潮过去后更多是淘汰“裸泳”,而如今的市场愈发趋向大前端,竞争之下我觉得移动开发的边界可以更广。
![](https://static001.geekbang.org/infoq/24/24d9835bc4072567add1c0ea95968889.png)
因为“某些原因”,前段时间就开了跳槽的准备,在合适的时机和领导提了离职后,就在离职流程的同时开始了面试之旅。这期间再一次体会到换工作的成本真的很高,但也是最能体现 “离开平台后你还剩什么” 的过程。
很多时候脱离了平台以后,留下的才是你真正赖以生存的水平,同时面试也是最直接最快发现你不足的方式。当然,有些时候不是面试官真的比你厉害很多,只是刚好大家所在位置不同。
![](https://static001.geekbang.org/infoq/56/56ce9b7f7db4f63225cfe1e7ed99b759.png)
面试中面试官的问题,也很可以直观的让你了解到对方公司的技术水平和业务需求,而换工作对我更多考虑的是公司发展与团队氛围。
一个公司的发展与否直接关系到你付出的回报,而一个团队的氛围决定你的工作是在成长还是在“扯皮”。其次身体健康和家庭也很重要,在衡量一份工作的时候,我也会把这些因素考虑在内,因为我一直认为,努力工作就是为了幸福的生活。
事实上我相信大多数程序员都存在危机感,无论是媒体的宣导,还是大环境的压迫,这很容易让我们产生焦躁和迷茫的情绪,对比那些大神们,很多时候我们都是在默默耕耘着一些“不知名”项目。
但这就是生活,把手头事情做好,然后多给自己准备提升的空间,这会比起对着屏幕自哀更舒适,毕竟一时学习一时爽,一直学习一直爽。
每
个人都有自己的选择,就像之前某个视频里提到的:“他们有他们的节奏,我们有自己的步伐”,有些时候你需要定下自己的小目标,而不要被风头打乱了节奏。曾经一个段子:“你和产品经理讨论了一天的需求和大环境,他的任务完成了,你的工作还没开始。”
从离职流程、面试、适应新环境一步步走来,每次都有一番难以言喻的感慨。其实换工作最累的是离职,离开你熟悉的地方,放弃你当前平台积累的资源,所以我希望每一次跳槽都是为了更好的目标而去争取,而人的每次一选择都会让你更成熟。
所志在功名,离别何足叹。
在体系化的学习过程中,博客、书籍、视频课程都是较好的学习手段。
Android 相关的书籍包括《Android 权威编程指南》、《Android 开发艺术探索》等,进一步的还可以去阅读 Android 相关源码,配合《Android 源码设计模式解析与实战》等书籍,对阅读源码大有裨益。
那么如何构建完整的知识体系,深挖 Android 技术?
《Android架构视频+BAT面试专题PDF+学习笔记?》
很多工作了 1-3 年的 Android 人,想够一够 3w 月薪的岗位,但在底层技术上却有很大的问题:
毕业几年,表面上用过很多技术,但都没能深入学习,一年的工作经验,干了好几年。结果就是遇到实际问题时无从下手,最终还是走着普通工程师的道路,和高手的距离越来越远。
都说三年是程序员的一个坎,能否晋升或者提高自己的核心竞争力,这几年就十分关键。
技术发展的这么快,从哪些方面开始学习,才能达到高级工程师水平,最后进阶到 Android 架构师/技术专家?我总结了这 5 大块;
我搜集整理过这几年阿里,以及腾讯,字节跳动,华为,小米等公司的面试题,把面试的要求和技术点梳理成一份大而全的“ Android 架构师”面试 Xmind(实际上比预期多花了不少精力),包含知识脉络 + 分支细节。
![](https://static001.geekbang.org/infoq/37/37a1b7a5f5fb290b7f27611dfc739795.png)
Java 语言与原理;
大厂,小厂。Android 面试先看你熟不熟悉 Java 语言
![](https://static001.geekbang.org/infoq/f0/f04275bd6ccfc4a04962e92a07bf933f.png)
评论