写代码还是做管理?安卓开发者的困扰

移动应用开发从逐渐开始火爆到如今也有小十年了,大部分的学校还是没有开放专门的课程。

目前市场上的大部分 Android 开发工程师大多数是自学或者是培训出身,用一段时间上手 Android 开发技能(畅销书作家 Josh Kaufman 提出,掌握正确的方法后,可以在短期内上手任何技能 ),而后进入一家公司或者接手一个项目培养实操能力、积累实战经验。

再之后呢,Android 开发初期之后怎么提升?怎么才能叫精通? 方向在哪?

通常情况下,Android 工程师 1-3 年时间应该能从初级上升到中高级工程师,这个阶段主要就是技术的提升和经验的积累。

之后 1-3 年持续做到高级工程师,这个位置要求能独立完成整个模块,对项目架构有比较深入的了解,能够设计复杂模块的程序方案。

同时需要一定的管理能力,能够带新同事快速入手项目,所以这时候一般同时也担任了主程或者 Team Leader,部分参与项目的管理工作。

高级工程师之后可以有两种侧重方向或者说两种发展路线。

第一种是管理路线,首先要对移动端和前端有一个系统的认知,并非说要完全掌握移动端和前端 coding 的能力,更多可以侧重于扎实的技术基础,再加上对技术的理解和融会贯通,就算不能快速地写出 iOS 和前端的代码,也应该对实现流程有一个清晰的认识,并且能够快速定位问题。

同时要熟悉服务端开发流程,负责移动端项目管理,最终成为移动端研发经理,如果你不打算学习后端知识基本止步于此了。不满足于此的可以继续去学习后端开发,拓宽之后的职业发展可能性。

第二种是纯技术路线,往往是一个专业细分领域比如音视频、三维图形、逆向安全、性能优化等,根据不同的细分领域,市场上有需求的行业和公司数量也会不一样,但若是该公司的核心需求,一般也会是公司的核心技术岗位,成为该领域市场上少有的精通人才的话,不可替代性也会很高。如果想一直 coding 下去,那么打好基础、找准方向是没有错的。

明确了方向之后,具体怎么做呢?可以分成几个方面。

首先,**技术基础是必不可少的。**刚开始进入公司写业务功能的时候,可能会觉得数据结构、算法、操作系统、编译原理之类的基础对自己日常的工作内容没有什么影响,知道怎么用就好了。

实际随着工作内容的深入,以及对不同技术的涉猎,会发现技术看似一直在发展、创新、变化,而底层的逻辑和原理是不太会变化的,越是不断变化的东西,理解它底层的原理就越是重要,这时候再去看待和学习它的变化就会轻松许多。

其次,要深入学习自己的“一技之长”,对 Android 开发工程师来说就是 Android 的相关知识:UI、底层原理、NDK、架构、调试实战经验等等。

业务或者技术方案,站在不同的时期和视角上看,难免会有不同的意见,但是技术是不会模棱两可的,会就是会,不会就是不会。

如果考虑管理路线的话,有几年工作经验的 Android coder,此时应该更加主动参与项目、承担工作、积极沟通需求和实现,对业务培养起自己的理解。架构孵化于业务,并且服务于业务,技术和业务齐头并进才能更好地发展(对于公司和个人都是如此)。

同时,多观察你的 Leader,看他是怎么协调整个项目向前推进,怎么不让项目进度失控,怎么和产品讨论需求,什么时候该重构等,这些都是细节也都是宝贵的经验。

无论选择哪个方向,都要保持对新技术趋势的敏锐度。

纯技术路线对新技术的关注自是不必说,管理岗需要在做技术方案时考虑新技术,同时提升自己的移动端/前端全栈能力。
####针对上面谈的内容,给大家推荐一份整理好的Android资料,有录制成视频的供大家免费下载,希望能够在学习这一块上帮助到大家!

Android开发资料+面试架构资料 免费分享 点击链接 即可领取

《Android架构师必备学习资源免费领取(架构视频+面试专题文档+学习笔记)》

猜你喜欢

转载自blog.csdn.net/Coo123_/article/details/95207471