查看原文
其他

程序员吃的是青春饭?本质上取决于......

毗卢 计算机教育 2019-04-26

本文来自阿里技术官方公众号(ali_tech)

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


毗卢:近期,我与团队同学探讨了职业发展规划的问题。有些同学表示希望后续能进一步在技术领域(或管理方向)有进一步的积累;有的同学表示希望在新的一年能具有更好的技术影响力,自己能做一些技术决定,去影响其他人,这样自己会很有成就感。

 

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

 

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

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

  • 你觉得是否成功的标志,就是今年或明年得到晋升吗?

  • 等等

 

大部分同学在面对这些问题时,其实是比较迷茫的,也缺少真正可度量的衡量标准。是否能在短期内获得晋升成了大部分人作为组织是否认可、自己是否认可的衡量标准了。

 

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


1)第一阶段:大学毕业35

2)第二阶段:大学毕业510

 

第一阶段:大学毕业35

 

对于从事Java软件开发的技术同学,在毕业后的35年内主要都是以学习、积累为主。这个阶段的工作几乎每天都有惊喜,都有收获。从一开始啥都不懂的校园新鲜人职业人转变。在这个阶段,你会学习:

 

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

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

  • 常用的主流框架:比如SSH相关的《Spring实战》《Spring Boot实战》《Hibernate实战(2)》。当然,这些书已经不够了,你会通过GoogleBaidu大量地浏览在线的资源:Apache官网、Spring官网、Hibernate官网。你会去StackOverflow问问题或找答案。

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

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

 

在这5年间,快速地完成这些基础知识的学习,并能在项目中快速地学以致用。不仅自身能获得比较高的成就感,而且实际的用人的单位、猎头也会非常喜欢这类熟练工。

 

从大部分人的实际发展轨迹看,这个阶段发展快的人和正常发展速度的人,差别还不是很大。比如,发展非常快的人,从毕业就入职阿里的P5P7(注:阿里内部职称评级),可能三年就可以做到。发展速度正常的人,可能需要5-6年也可以到P7。也就是说,这个阶段正常发展速度的同学也仅仅比发展速度快的人慢2-3年而已。

 

23年的差距,是可以通过有针对性的学习、重大项目的历练等完成这些知识的学习。无非是,有的同学会严格要求自己,有严格的学习计划;有的同学赶早参加了一些重点的、痛苦的项目得到了锻炼。只要是做技术的,其实迟早都会经历过,都会成长起来。

 

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


第二阶段:大学毕业510

 

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

 

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

 

那么,为什么这些人能管理团队或者有影响力呢?

 

从公司的经营视角看,一个管理团队的人,他必须为业务的成功负责。说个大白话,一个TL管了N个人,他至少要能保证大家输出所产生的价值,至少要高于这个团队的工资、奖金、五险一金、OPEXCAPEX等等吧。这个TL为了大家输出得有价值,他是不是需要能:

 

  • 能对所负责领域的业务特点、发展趋势、友商竞争分析有很好的洞察?能知道这个业务领域的客户是谁?他们的需求是什么?他们的痛点是什么?所以,这个TL应该需要学习《咨询的奥秘》《探索需求》《系统化思维导论》。对于技术型的TL,还应该了解《成为技术领导者:掌握全面解决问题的方法》。

 

  • 服务于特定领域的客户,我们需要能了解我们的客户企业架构、业务知识。要了解清楚规划的产品、服务,什么才是客户所需要的。那么,从理论上,我们是否应该学习一些TOGAFNGOSSITIL等业务理论以及业务知识?

 

  • 作为TL,是否有必要能将自己对于市场的洞察转换成业务规划,并能向自己的老板(或者投资人)说清楚、讲明白?并争取到老板的同意,包括资金、人力资源等。对于,能否把事情讲明白,我们可能需要学习《金字塔原理》,并能非常清晰、有逻辑性地进行表达与沟通。当然,有些业务发展的事不一定特别有逻辑,是需要摸索、尝试,那么你是否能将一个不确定的领域说服老板并获得支持,我们又需要什么?《博弈论》《影响力》等。

 

  • 获得老板支持后,就需要开始带着兄弟们干活了。作为带头人,你看我们是否需要能将业务趋势、客户痛点进行业务建模好让团队的PD、技术都能理解?在做业务进一步深入分析,可能就需要学习《领域驱动设计:软件核心复杂性应对之道》《实现领域驱动设计》《企业应用架构模式》《恰如其分的软件架构》等等。

 

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

 

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

 

  • 嗯,还需要有个好的身体,还需要经常锻炼,学习科学的健身吧(说起来自己脸红)。至少我明白了一个道理,以前我都是跟自己说,等这段时间过了,闲下来去锻炼一下。其实,我发现,越是忙的时候,越需要锻炼身体!

 

  • 另外,在这10年内,比较关键的是——你还经历过什么有挑战的业务、技术、产品、平台等方面的成功与失败经验?在这些经历里,你可能会遇到这些困难与挑战:团队磨合的挑战、技术方案上的争执、平台优先 or 业务优先的博弈、低落的团队氛围、个人的低谷等等。这些困难与挑战,你是退缩了?还是有成长?在带团队时,再次面临这些挑战时,这时你是否有解或者有勇气了?

 


发现没有?毕业10年后,作为一个团队贡献者,你可能需要具备这些能力,并且还远远不止。而且,更可悲的时,当毕业10年后,突然发现自己不具备这个能力时(比如晋升失败时发现了),这些能力GAP就不再是23年就能追得上的了。我见过一些有准备的同学,他们给自己的目标是在毕业第7年就要具备这些能力,他有严格的学习计划、实践计划、甚至是冒险的创业经历。当他到第10年这个点时,这些高阶技能很可能已经有3年的实践经验了。

 

如果我们没有做好准备,10年后,如何和这批人竞争?这些软、硬知识,从十年这个时间刻度倒排,学习计划、实践计划的执行还是很紧张的。所以,从现在开始给自己制定一个严格的学习计划、严格执行,多实践吧!


END


更多精彩:

哪些高校拥有国家重点实验室多?(多图)

ICML入选论文名单公布,我国主力选手是清华和腾讯

年级和性别对计算机专业学生就业意向的影响

中国芯酸往事

全国高校新一代信息技术暑期师资培训班

给人工智能降降温!“人工智能+教育”喧嚣下,教育到底为了什么?

【思维碰撞】把握新时代计算机教育科学研究新机遇

【目录】《计算机教育》 2018年第5期

2018年全国高校计算机教育大会征文通知

基于云计算与大数据的高职教育资源共享研究

最新!学位授予和人才培养学科目录来了

信息化条件下高校实验室拓展建设的思考与实践

美国21世纪CPS教育报告的专业课程规划及启示

澳门大学校长赵伟教授:计算机科学的未来和素质教育的发展

【目录】《计算机教育》 2018年第4期

给大学生程序员的一点建议

计算机行业还能火几年?

干货!2018年中国人工智能行业研究报告(多图)

【思维碰撞】计算机教育的科学研究(上)

美国21世纪CPS教育报告的课程结构设计及启示

新工科背景下物联网专业学生创新实践能力培养

共612个!教育部公布首批“新工科”研究与实践项目名单(多图)

【目录】《计算机教育》2018年第3期

人工智能知识体系大全

干货!清华大学孙富春教授回答你对人工智能的所有疑问!

新工科建设形势下的计算机类专业人才培养方案

西南科技大学张广兵教授:计算思维再反思

干货:教学论文福利哪里寻?精选40多张计算机教学模式图(快收藏)!

未来的所有新兴工作都需要软件工程师,《2017年美国新兴职业报告》这么分析!

【目录】《计算机教育》 2018年第2期

计算机科学领域2017年度研究热点排行,最热的领域居然是这个!

清华大学杨士强教授:从实验教学到实践教育

美国21世纪CPS教育报告简介

奚春雁主编:计算机教育的春天

【目录】《计算机教育》2018年第1期

喜讯:《计算机教育》跃居《中国学术期刊影响因子年报(人文社会科学)2017版》Q1区!

《计算机教育》荣获“2017中国最具国际影响力学术期刊”

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存