阿里资深技术专家:谁说程序员是吃“青春饭”的?

简介: 你是否认真思考过:毕业 3-5 年、10 年,乃至更久后,我们希望成为什么样的人?作为一名技术人,我们要如何规划自己的职业发展生涯?网上热议的“35 岁中年危机”,本质上又因什么而焦虑?今天,阿里资深技术专家毗卢,将带来自己的思考与理解,希望对大家有所启发。

你是否认真思考过:毕业 3-5 年、10 年,乃至更久后,我们希望成为什么样的人?作为一名技术人,我们要如何规划自己的职业发展生涯?

网上热议的“35 岁中年危机”,本质上又因什么而焦虑?今天,阿里资深技术专家毗卢,将带来自己的思考与理解,希望对大家有所启发。

近期,我与团队同学探讨了职业发展规划的问题:

有些同学表示希望后续能进一步在技术领域(或管理方向)有进一步的积累。

有的同学表示希望在新的一年能具有更好的技术影响力,自己能做一些技术决定,去影响其他人,这样自己会很有成就感。

因此,我也问了一些问题:

你希望技术能进一步积累,那你积累的方向和期望达到的结果分别是什么?

你希望能有技术决策,希望有影响力,你觉得应该如何做到?是希望通过岗位任命的方式吗?

你觉得是否成功的标志,就是今年或明年得到晋升吗?
......
大部分同学在面对这些问题时,其实是比较迷茫的,也缺少真正可度量的衡量标准。

是否能在短期内获得晋升成了大部分人作为“组织是否认可、自己是否认可”的衡量标准了。

当然,这个话题仁者见仁、智者见智,这里我简单地谈谈我的看法。我以相对比较口水化的方式,将职业发展分两个阶段来进行阐述:

第一阶段:大学毕业 3 到 5 年。

第二阶段:大学毕业 5 到 10 年。

第一阶段:大学毕业 3 到 5 年

对于从事 Java 软件开发的技术同学,在毕业后的 3 到 5 年内主要都是以学习、积累为主。

这个阶段的工作几乎每天都有惊喜,都有收获。从一开始啥都不懂的校园“新鲜人”向“职业人”转变。

在这个阶段,你会学习:

基础的 Java 知识:你会开始看《Java编程思想》、《Effective Java》。

高质量代码进阶知识:你会开始看《重构:改善既有代码的设计》、《代码大全》、《编程珠玑》。

常用的主流框架:比如 SSH 相关的《Spring实战》、《Spring Boot实战》、《Hibernate实战(第2版)》。

当然,这些书已经不够了,你会通过 Google、Baidu 大量地浏览在线的资源:Apache官网、Spring官网、Hibernate官网。你会去 Stack Overflow 问问题或找答案。

系统设计与算法知识:《系统分析与设计方法》、《设计模式》、《需求分析与系统设计》、《面向对象分析与设计》、《UML用户指南》、《算法导论》。

其他知识:比如数据库调优、缓存框架、NoSQL 数据库、日志框架等等。

在这 5 年间,快速地完成这些基础知识的学习,并能在项目中快速地学以致用。

不仅自身能获得比较高的成就感,而且实际的用人单位、猎头也会非常喜欢这类熟练工。

从大部分人的实际发展轨迹看,这个阶段发展快的人和正常发展速度的人,差别还不是很大。

比如,发展非常快的人,从毕业就入职阿里的 P5 到 P7(注:阿里内部职称评级),可能三年就可以做到。发展速度正常的人,可能需要 5-6 年也可以到 P7。

也就是说,这个阶段正常发展速度的同学也仅仅比发展速度快的人慢2-3年而已。

这 2 到 3 年的差距,是可以通过有针对性的学习、重大项目的历练等完成这些知识的学习。

无非是,有的同学会严格要求自己,有严格的学习计划;有的同学赶早参加了一些重点的、痛苦的项目得到了锻炼。只要是做技术的,迟早都会经历过,都会成长起来。

发现没有?这个阶段,我们能协调好的资源其实就是自己,更多的是一个“个人贡献者”。只要把自己管好了,学习计划执行好了,工作高质量做好了就能得到认可。

第二阶段:大学毕业 5 到 10 年

很多本科同学,特别是研究生同学。在毕业 10 年后,就已经到了 34、35 岁左右了。也是前段时间网上广泛讨论的所谓 34+ 岁现象。
其实,年龄并不是问题的真正原因。真正的原因还是在于自身“竞争力”是否符合这个年龄所应该具备的。

到了这个年龄的人,往往已经不是“个人贡献者”了,而是“团队贡献者”。团队贡献者可能是带团队的 Team Leader,也可能是个架构师,在技术决策上具有团队影响力和话语权。

那么,为什么这些人能管理团队或者有影响力呢?从公司的经营视角看,一个管理团队的人,他必须为业务的成功负责。

说个大白话,一个 Team Leader 管了 N 个人,他至少要能保证大家输出所产生的价值,至少要高于这个团队的工资、奖金、五险一金、OPEX、CAPEX 等等吧。

这个 Team Leader 为了大家输出得有价值,他是不是需要能:

对所负责领域的业务特点、发展趋势、友商竞争分析有很好的洞察?能知道这个业务领域的客户是谁?他们的需求是什么?他们的痛点是什么?

所以,这个 Team Leader 应该需要学习《咨询的奥秘》、《探索需求》、《系统化思维导论》。对于技术型的 Team Leader,还应该了解《成为技术领导者:掌握全面解决问题的方法》。

服务于特定领域的客户,我们需要了解我们客户的企业架构、业务知识。要了解清楚规划的产品、服务,什么才是客户所需要的。

那么,从理论上,我们是否应该学习一些 TOGAF、NGOSS、ITIL 等业务理论以及业务知识?

作为 Team Leader,是否有必要能将自己对于市场的洞察转换成业务规划,并能向自己的老板(或者投资人)说清楚、讲明白?并争取到老板的同意,包括资金、人力资源等。

对于,能否把事情讲明白,我们可能需要学习《金字塔原理》,并能非常清晰、有逻辑性地进行表达与沟通。

当然,有些业务发展的事不一定特别有逻辑,是需要摸索、尝试的,那么你是否能将一个不确定的领域说服老板并获得支持,我们又需要什么?《博弈论》、《影响力》等。

获得老板支持后,就需要开始带着兄弟们干活了。作为带头人,你看我们是否需要能将业务趋势、客户痛点进行业务建模好让团队的 PD、技术都能理解?

在做业务进一步深入分析,可能就需要学习《领域驱动设计:软件核心复杂性应对之道》、《实现领域驱动设计》、《企业应用架构模式》、《恰如其分的软件架构》等等。

做完业务设计后,开始要带着团队做技术方案设计、接口设计以及编码实现等。这个过程,Team Leader 又需要具备软件项目管理的能力。
无论是《PMBOK指南》,还是《敏捷软件开发》、《人月神话》、《程序开发心理学》,相信总归还是会有点帮助的。

对于一些有国际化要求的公司,还需要再学习英语吧!

嗯,还需要有个好的身体,还需要经常锻炼,学习科学的健身吧(说起来自己脸红)。

至少我明白了一个道理,以前我都是跟自己说,等这段时间过了,闲下来去锻炼一下。其实,我发现,越是忙的时候,越需要锻炼身体!

另外,在这 10 年内,比较关键的是——你还经历过什么有挑战的业务、技术、产品、平台等方面的成功与失败经验?

在这些经历里,你可能会遇到这些困难与挑战:团队磨合的挑战、技术方案上的争执、平台优先 or 业务优先的博弈、低落的团队氛围、个人的低谷等等。

这些困难与挑战,你是退缩了?还是有成长?在带团队时,再次面临这些挑战时,这时你是否有解或者有勇气了?

发现没有?毕业 10 年后,作为一个团队贡献者,你可能需要具备这些能力,并且还远远不止。

而且,更可悲的时,当毕业 10 年后,突然发现自己不具备这个能力时(比如晋升失败时发现了),这些能力 GAP 就不再是 2 到 3 年就能追得上的了。

我见过一些有准备的同学,他们给自己的目标是在毕业第 7 年就要具备这些能力,他有严格的学习计划、实践计划、甚至是冒险的创业经历。

当他到第 10 年这个点时,这些高阶技能很可能已经有 3 年的实践经验了。

如果我们没有做好准备,十年后,如何和这批人竞争?这些软、硬知识,从十年这个时间刻度倒排,学习计划、实践计划的执行还是很紧张的。

所以,从现在开始给自己制定一个严格的学习计划、严格执行,多实践吧!

原文发布时间为:2018-07-25
本文来自云栖社区合作伙伴“Java程序员联盟”,了解相关信息可以关注“Java程序员联盟

相关文章
|
3月前
|
网络协议 算法 Java
从外卖员到程序员,自学3年终于转行成功,三面“拿下”拼多多
老家农村,家里好不容易把我送到大城市读书,大学非985,211,但在我们老家,能出一个本科大学生也是非常不容易的。因为农村信息的相对闭塞,我对大学专业一无所知,加上分数并非前茅,最后被调剂一个我并不喜欢的专业,这里就不透露自己是什么学校了,只能说毕业之后为了能多赚点,选择了送外卖,这一送就送了将近3年的时间。
|
机器学习/深度学习 云安全 人工智能
从“吃鸡”抱腾讯大腿,看腾讯云网络与安全秘籍
从“吃鸡”抱腾讯大腿,看腾讯云网络与安全秘籍
310 0
从“吃鸡”抱腾讯大腿,看腾讯云网络与安全秘籍
|
Cloud Native 安全 Linux
6位大咖坐在一起聊了聊:龙蜥社区做了什么、以及能带来什么?
云栖大会龙蜥专场精彩来袭,通过本次讨论会,让大家更深入了解龙蜥开源社区。
6位大咖坐在一起聊了聊:龙蜥社区做了什么、以及能带来什么?
|
SQL 移动开发 NoSQL
年末学弟四面阿里面经!
最近学弟把面试经历给我整理了下,我特意发出来给有需要的同学!
290 0
|
机器学习/深度学习 前端开发 数据可视化
如何从校招脱颖而出?支付宝程序媛王妍岩:自信+方法
请收好!加入支付宝梦之队的校招独家经验分享
2175 0
如何从校招脱颖而出?支付宝程序媛王妍岩:自信+方法
|
机器学习/深度学习 自然语言处理 测试技术
工程师如何给女友买包?问问阿里“百事通”
小叽导读:工作那么忙,怎么给女朋友买包?是翻看包包的详情页,再从商品评论中去找信息吗?为了帮助类似的同学节省时间,阿里工程师们提出快速回答生成模型RAGE。你问它答,这个“百事通”能从整体结构,评论的抽取和表示及融合四个方面综合解决生成模型响应速率及生成质量的问题,进而提高生成的回答的真实性及有效性。从此,如何给女友“买包”,不再是难题。
1609 0
工程师如何给女友买包?问问阿里“百事通”
|
架构师 程序员 CDN
|
双11 数据中心
在阿里,40岁的奋斗姿势
在阿里,什么样的年纪可以称为老呢?35岁? 在云网络,有这样一群人,他们的平均年龄接近40,却刚刚开辟职业生涯的第二战场。 他们的奋斗姿势是什么样的呢?
4505 0
|
架构师 Java 数据库连接
备战金九银十,跳槽经验分享,我是如何逆袭进入阿里的
前言想起刚刚入门的时候,工作和学习上是完全找不到方向的,再然后渡过了一段时间的新手期之后,工作的方向虽然逐渐变得清晰起来,但是没过多久,能了解到的资料就开始超过每天学习的能力,像是买了没看的书、收藏没读的贴、mark了之后再也没有关注过的文章越积越多,更别提每天面对各种技术分享或者微博里的新鲜玩意了。
1677 0
IT风云之面试(1)
       最近感慨万千,心绪烦乱。但是为了梦想我一步步坚持了下来;                                                       -- 题记   我喜欢IT这个行业,有团队上的,也有合作上的,它曾让我辉煌也带给我更多的快乐。
756 0