导读:与老穆相识是在线下的一个聚会,然后一直保持联系,慢慢变成朋友,现在也同时是同事了;如果你能看到我朋友圈,你会发现最近我也在尝试学习前端知识,刚好老穆写了一篇关于 Android 转前端的思考,我觉得很受用,就转来给大家看看,也推荐关注一下他的公众号。
- 5千字,预计阅读完需要3分钟
那还要从我在支付宝做Android开发说起。
-
2016年,我刚加入蚂蚁的时候,还是以一名客户端工程师的身份加入。负责支付宝及蚂蚁聚宝APP内的Android侧交易流程开发,偏业务属性。
-
过程中,做了一些技术动态化的探索,如ReactNative及内部动态化方案等,但其实大部分日常工作,主要以维护产品迭代为主。
-
团队中虽然有动态dex或jsPatch等方案,但覆盖面有限,只适于解决部分hotpatch类问题,让这种hack类的技术去做业务开发,还是显得力量不够。
-
随着业务复杂度越来越高,原生动态性与迭代节奏的矛盾越发冲突,加上客户端历史代码的累积,包体积只会越来越大,大前端领域必须寻找到更合理的动态化方案。
-
这可能是上了100w DAU的 原生APP都要面对的问题
-
与此同时,容器化技术其实已经崭露头角。
所以,随着客户端技术栈的升级,在客户端容器化的主流技术趋势下,我选择了拥抱前端。
下决定的思考过程
ok,今天我这里就分享下,1年前我从 Android >> 前端 的这个技术转型过程,我是
-
怎么想
-
怎么分析
-
以及最后下决定
的整个思考过程。
我的运气
有时候就想啊,我的运气真是挺好的,经历是这样的:
-
高考志愿我被调剂到软件工程
-
我大三时候互联网红利开始显现,大四学长们找工作情况开始回暖
-
等到我毕业时,就选择了自己喜欢的移动端开发方向,然后一直在做Android端的一线开发
-
毕业后第二年,差不多感受到移动端岗位开始暴走,我刚好踩上了红利,直到现在
-
我自己感觉是很幸运,命很好
-
如果不是一次次的拐点都踩的准,也不会成为今天的自己,感恩~
傻瓜窗口期
这里先分享一个概念,在风险投资领域有个词叫做“傻瓜窗口期”
-
一些有独立判断力的决策者来说,他会根据自己的认知和判断,选择一些看似不确定,可能会成功,自己感兴趣的领域进行持续投入
-
该方向可能和社会主流认知方向不一致,甚至是别人认为傻瓜或者没必要的事情。而他选择持续的去投入,这个阶段就是“傻瓜窗口期”。
-
各种因素影响,他最后居然成功了,然后他就“获利”了,其他人看到这个事情有甜头,各种人就蜂拥而至,想分享红利
-
新进场的人也会携带自己的一些力量,所以会继续推高这个市场,并推动从高速发展走向成熟发展,这时窗口会来越来越小
-
最早的那一批投入者,已经嗅探到一些气味,所以他们需要去寻找新的机会和创新点,去寻找下一个不被别人发现和看好的“傻瓜窗口期”
-
剩下的人,继续瓜分着上一波市场,直至被瓜分的蛋糕和价值,被分的越来越小,甚至都不足以果腹时,流量自然就会散去,去寻找下一个主流意识认为“大好”的行业(有点像‘毒液’)。
行业大背景
2018年,中国的移动端出货设备总量下降15%,非洲以及东南亚的移动互联网成了新的更大范围的增长极,看到国内“移动端开发人员很抢手”消失的迹象,也看到了更多类型的终端系统的前端技术趋势。
所有的好东西都有半衰期,能摸得到的具体红利也是随时间而递减的,基本都是前期的红利快速释放期,然后后面逐步减弱,最后是一个慢慢的长尾效应。
用户侧的客户端技术依然火热,但背后好像已经感受到一些火力后劲不强劲的感觉。所以我也开始,有意识的提高知识面,新的通识,新的行业趋势和一线创业情况的了解,提高整体的意识能力。
嗅觉
这一两年,做原生客户端开发焦虑情绪比较明显,尤其是Android这边更突出。
现在的招聘市场现状大概是这样的:
-
刚毕业的Android新人除了专业技术要过硬,应届生的软实力被更加重视。光活好还不行,人还得具备复合性,有悟性,有聪明劲儿,有潜力
-
社招的小厂,因为业务经常变化,所以Android技术无法深入,而且还得被技术Leader要求去评估各种 RN、小程序的技术方案可行性
-
社招想进大厂的,做Android的因为坑少了,所以要求比以往更高了,除了默认技能,没有一些亮点的话,确实难拿offer
-
到处都在讲人才盘点,年龄-工资-能力-潜力,市场需要寻找各项指标的最有性价比的员工
我也说不太清楚,但就是最近几年似乎有种嗅觉感受,再像之前那样做Android应用开发,一直在舒适区踏步转圈,需要警惕和反思。
除了对业务更加了解,技术本身如果不做转型(比如往容器框架,或底层深入),三五年后review今天的自己规划路径,一定会遗憾,所以我必须要做出一些变化。
那是继续基于Android往深的走,还是转个方向,完成一次技术转型?这种思绪一直在我脑子里转悠。
知道自己几斤几两
经过早期GUI发展,后来有了显示器,有了web,有了手机屏幕,类大前端的技术其实是近些年才真正爆发式的发展起来。
经过一系列的推演未来职业发展路径和喜好选择,我确定了要切入到一个新的自己感兴趣,且又符合职业发展的新方向。
这里首先分两大块,是否继续做技术,还是转型非技术(转产品经理)。之前有多次想转产品岗的想法,所以在这次转型分析中,也率先进入思考区。
转型产品经理:
-
好处
-
能更好的理解一个公司能存在的why,以及why背后的原因
-
从一个执行者转化为一个调度者,作为团队中心的人物,去撬动和平衡各角色
-
从工程思维向复合思维转化,能较多的接触商业产品的本质
-
工程师讲究,拿到需求完美落地
-
产品经理讲究,拿到场景寻找一个值得去提供解决方案的闭环
-
不用再苦逼的写代码了,但脑细胞会死的更快
-
对人的思维结构、情商、商业理解,都提供了日常的锻炼机会
-
可以拔高个体发展的天花板,开阔整体格局
-
不好
-
之前积累的技术经验产生的雪球效应,短期无法继续
-
短期来看(3年以内),家庭的工作结构稳定,现金流稳定,会波动
-
30岁档口技术转产品,几乎意味着关闭发动机,然后冷重启,对于媳妇备孕来说,我不想凭空增加不确定因素
-
若直接转PD,其不美的地方,就像是中国画里面未使用留白手法一样,虽然可以画的很真实,但是缺少弹性空间。而如果立足技术岗,平时加强自己的产品scene,就就像是中国画里使用了留白手法。
-
产品经理的核心是在思维,而非一个title。只要自己有心,相信提高产品思维的场景也是很多
-
继续做技术,完全可以通过提高自身平日的对产品的理解,向UX提出自己关于产品交互的建议,和pd讨论切磋需求是否映射到了其背后想传达和实现的价值
-
不再纠结在意那个岗位或title,而是真的走心在关注产品和商业问题了,技术反倒是自己最大的优势
-
思维是软性的,可以依赖能力杠杆,靠梧;而技术是硬性的,不付出努力,基本没辙,不能靠时间杠杆,要硬磕。
-
反倒是可以在不背负产品KPI情况下,能有一种outOfBox的立足姿态。
继续拱技术:
继续技术路线,从职业发展上,则有更多的选择,提高技术领导力与团队领导力,做一块业务的技术TL,同时增强业务感知,发掘价值创造以及商业变现背后的技术落地能力。即走技术管理方向,可能是复合型程序员最稳的一条发育路线。
对于我来说,其实这次也是有了几个技术转型方向
1. 转服务端
-
服务端最好的优势的是,能够对整个技术架构提供架构视野。
-
未来可以做技术架构师,大技术Leader,甚至CTO。
-
cover的面,可以说是互联网在业务工程领域的核心
-
在大公司的纯技术路线晋升及发展渠道中,后端路线也会更容易些
-
虽然是个不错的选择,但假设转换后,貌似想找到核心竞争力也是蛮难的
-
另外,就是转做服务端,激发不起我内心的亢奋,非兴奋点
2. 转数据BI方向
-
其实后来有一端时间,也对数据这块挺感兴趣的
-
除了要和sql打交道,还要做数据的ETL(Extract-Transform-Load),数据可视化,以及可视化之后的数据服务
-
互联网产品驱动力,不管是在产品mvp初期、发展期、还是成熟期,都依赖数据量化驱动,来指引和校验产品的路线是否踩在有效的发展路径上
-
在大数据的当下,大数据带来的分布式、流式计算、实时计算等子领域,其技术深度也是完全有后续的发展舞台
3. 转前端
-
其实这个是一个最容易落地的方案,并且也是自己喜欢的一个方向。
-
前端在越来越多的终端领域在切入用户的视野
-
即使为Android+iOS原生开发焦虑,也不应该为现在各种各样的最贴近用户侧的体验技术焦虑
-
可能也和我从小学画画啥的有关系,对于用户侧视觉打交道,图形,美术啥的,有很好的亲和感,未来用户侧的技术要求也一定会越来越高
-
三四年前,自己就有种预感,未来成熟的Web容器技术,加上引擎的能力的提升,BS是有非常大的未来。
-
现在移动端,演化出来的各种小程序,其实不就是在移动端的一个BS变种吗
-
我是眼看着H5和JS这俩2货,一步步发育起来的,现在简直是无所不能了
-
node相关的服务化技术,虽不能像java系那么成熟,但已经可以独挡一面了,对于初期的企业服务,基于node的服务端,完全可以玩的转,即使以后初期创业,初期的技术快速搭建,完全可以一个人搞定(变相的切入了服务端领域)
-
一套核心技术栈(JS为主),从用户侧,到服务端侧,都可以touch到,对我有吸引力
-
就连最火的tensflow也是在python版之后,紧接着就是出js版的追击
-
我现在有种感觉,js在大前端的领域里
-
就像一颗刚破土的大竹笋,眼看着就要起势
-
就像08年的房价一样,眼看着他就要起飞
经过一周的思考,我最后在数据和前端这俩方向上,选择了后者。
电褥子不会一直热
手机硬件出货量2018年不再高速增长,iPhone也开始对降价,iPhone X 低配版已降至6000块,2000块的Android新机性能已经非常不错了。。。
很多生活现象已经表明,移动端市场已经完成了前期的高速发展,进行成熟发展阶段了。作为移动端的开发者,我们有必要重新审视自己的技术发展路线,如果想深入,完全可以继续沿着当前技术路线深挖,而如果现在想接触一些新的技术领域,当前也是一个比较好的时间窗口。
大家每天刷微信,刷抖音,刷农药,刷新闻客户端,从手机使用时长来看,手机终端已经占用了我们每天非常多的时间。有这么多的时间(流量)占用,这里就一定会需要好的产品和好的服务。但大家除了埋头做手头的技术工作,也要多站起来,伸伸懒腰,然后看看周围的情况和市场趋势,而我,在观察完后,选择了在这个档口进行了转型。
转型既重要也不重要
我们的生活因为有了信息化,已发生了很多悄无声息的变化,我们需要多关注社会的演进脉搏。
比如我今年就嗅到的一个气味就是,2B的企业互联网化,正在逐步代替移动互联网化,将引领接下来5年的后互联网时代的发展原动力,为接下来的社会发展提供涡轮增压。作为技术人员,应当予以关注。
-
第一轮C端工具化,场景化迭代已经基本完成。
-
供应链,产业化,企业级,非纯线上式的信息化正在深度整合。
-
这里需要更多的程序员,更多的产品经理,以及更多的科技产品服务
-
所以从移动互联网转投进入2B行业,目前是个好窗口,大家可以有倾斜性的关注。
我的嗅觉不一定对,这里只是一种感受习惯分享给大家。大家也可以多留意多锻炼,产出一些自己的预判趋势(背后是自己的思维逻辑认知及分析),然后对自己的职业相关方面做一些前瞻性的预判,然后引导自己的职场roadMap,去把握和决策自己之后的路。
嗅探与发育
不断建设自己,提升自己的认知,让自己具备独立分析和嗅探能力,再加上“结硬寨打呆仗”的笨办法。这就是,我目前认知体系下,一套最实在的程序员发育路径方法论。
如果当前的职业发展阶段属于T日,那么这一次“技术转型”之后就属于T+1日了。
T到T+1这个关键拐点上的行为,应该是经过分析和推演后的决定结果。下定离手,然后空杯投入整个T+1阶段,并有意识的使得T+1阶段的产出,成为再下一个阶段(T+2日)的借力踏板与切入新窗口的初始动力。
以上,就是我从Android转前端的技术转型的思考过程,分享给大家,希望有些许帮助。
推荐阅读:
网友评论