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