简介
35岁左右对工程师而言是个不同寻常的年龄段。技术人有可能面临人生中的转型:从纯技术岗转向管理岗。也将面临诸多新的挑战,关于组建团队、领导以及KPI设置等。本文将讲述阿里资深技术leader张荣从去年1月底接手CRO线NLP算法团队以来,在团队组建、能力建设、以及管理上的一些思考。这些思考从实践中来,总结出一套方法论,希望能给予转型中的技术人一些启发。
一 、Java 后端
在我写过的 《Android程序员的Java后台学习建议》 中提到,因为 Java 的先天优势,Android 开发者在转岗选择时,转 Java 后端占据很大比例,因为 Java 后端岗位需求量较大,同时技术迁移成本也较低,比如现在 Java 开发中应用最广泛的 Spring
全家桶:
作为 Android 开发者,如果你使用过或了解过 Dagger
,那么理解和使用 Spring
并不难。通过各类注解如 @Contorller
、@Service
、@Configuration
等去标明类的用途,通过@Autowired
去注入使用的方式,相信会让你倍感亲切。
如果说 Spring
是类似 Dagger
的注入和管理实体的容器框架,那么 SpringMVC
就是基于 Spring
功能之上添加的 Web 框架。
对于 Android 开发而言,MVC 肯定是不会陌生的,实际上后台开发人员通常就是写个 Controller
提供个 Model给你。而 Hibernate
和 MyBatis
都是持久层框架,属于能方便使用如 MySql
等数据库的 ORM 框架。
如果说 Spring
和 SpringMVC
是 Android 开发者较友好的选择,那么 Spring Boot
则是你的“绿色通道”。 Spring Boot
又称之为全家桶,因为它集齐了各类常用的开发框架,同时降低了 Spring 开发的门槛,更是简化了各种配置过程,而且 Jetbrains大家庭支持它!所以现阶段而言,个人认为 Spring
、SpringMVC
、SpringBoot
是 Android 开发者学习入门 Java Web 的不错选择。
当然,作为 Android 开发者转后端,最大的问题就是开发思路和领域的变化,你需要关注的不再是当个设备上的业务逻辑,更需要关注的是大数据、并发、性能优化、分布式等等,这些都是转岗的你需要从头开始的,这是无可避免的成本。
二、大前端
大前端在我理解中,一般包括 Web 前端、客户端、跨平台的集合。对于 Android 开发而言,继续从事 UI 与用户交互逻辑也是一条谋生之道,但是受市场红利结束、开发成本等影响,拓展能力成为大前端开发也是趋势之一。
在我的 《我的移动开发春季历程》 说过:随着各类移动跨平台的兴起,在 ReactNative、Weex、Flutter、 等框架的加持下,Android开发的能力已不再局限于 Android 领域,而各大厂商近些年也针对跨平台的不足进行逐步完善。
但这并不意味着原生开发的“没落”!无论哪种跨平台的加持,最终都离不开你的原生系统能力。大潮过去后更多是淘汰“裸泳”,而如今的市场愈发趋向大前端,竞争之下我觉得移动开发的边界可以更广。
所以有 Android 平台存在就会有需求,而利用跨平台开发,能让我们的能力更快的覆盖到 iOS 平台,同时如 ReactNative
、Flutter
、Weex
等,能够让你逐步接触并熟悉 Web 前端的世界,之后如 uni-app
、myvue
、Chameleon
、taro
等框架还能丰富你的小程序能力,从而让你的业务能力走向新的巅峰。
三、物联网
Android 平台和 iOS 平台最不同的就是它的开源和影响力,多年后的今天,Android 已经不仅仅代表着手机平台,在电视、机顶盒、楼宇安防、自动售卖、广告展牌、智能家电、车载等领域都已渗透并精进,就像我 Android QQ 群内的小伙伴,现在还从事 App 开发的反而不多,但是在以上领域继续耕耘 Android 的反而很多。
5G 时代下物联网领域很有可能具备新的机会,华为的鸿蒙智慧屏、无人驾驶的车载平板、其他各类利用 Android 实现的无线智能平台,这都是 Android 开发者可以耕耘的机会。
当然,光是学习或者“纸上谈兵”,最终只会徒生焦虑,所以‘学习最好的方法就是“动手”,开源项目是你最好的学习方法,自己动手练练,才是你“转岗”的最好尝试。
最后
为了方便有学习需要的朋友,我把资料都整理成了视频教程(实际上比预期多花了不少精力),由于篇幅有限,都放在了我的GitHub上,点击即可免费获取!
Androidndroid架构视频+BAT面试专题PDF+学习笔记
当程序员容易,当一个优秀的程序员是需要不断学习的,从初级程序员到高级程序员,从初级架构师到资深架构师,或者走向管理,从技术经理到技术总监,每个阶段都需要掌握不同的能力。早早确定自己的职业方向,才能在工作和能力提升中甩开同龄人。
- 无论你现在水平怎么样一定要 持续学习 没有鸡汤,别人看起来的毫不费力,其实费了很大力,这四个字就是我的建议!!
- 我希望每一个努力生活的IT工程师,都会得到自己想要的,因为我们很辛苦,我们应得的。
当程序员容易,当一个优秀的程序员是需要不断学习的,从初级程序员到高级程序员,从初级架构师到资深架构师,或者走向管理,从技术经理到技术总监,每个阶段都需要掌握不同的能力。早早确定自己的职业方向,才能在工作和能力提升中甩开同龄人。
无论你现在水平怎么样一定要 持续学习 没有鸡汤,别人看起来的毫不费力,其实费了很大力,没有人能随随便便成功。
人。
无论你现在水平怎么样一定要 持续学习 没有鸡汤,别人看起来的毫不费力,其实费了很大力,没有人能随随便便成功。
加油,共勉。