课程网站设计建设,杭州网站搭建多少钱,iis wordpress安装教程,推广展示类网站有哪些技术人成长的悖论
在程序员界有一个悖论持续在困惑着很多技术人#xff1a;在写代码的人的困惑是一直写代码是不是会丧失竞争力#xff0c;会不会被后面年轻的更能加班写代码的人汰换。典型代表就是工作 5 年左右的核心技术骨干#xff0c;此时正处于编码正嗨但也开始着手规…技术人成长的悖论
在程序员界有一个悖论持续在困惑着很多技术人在写代码的人的困惑是一直写代码是不是会丧失竞争力会不会被后面年轻的更能加班写代码的人汰换。典型代表就是工作 5 年左右的核心技术骨干此时正处于编码正嗨但也开始着手规划下一个职业发展阶段的时候没在写代码的人困惑是我长时间不写代码或者代码量较少我的技术功底是不是在退化我在市场上还会有竞争力吗我的发展空间是不是被限制住了。典型代表就是带业务项目的架构师或者团队 Team Leader他们更多的精力是在业务需求理解和拆分团队事务的管理上。
这种围城现象非常严重是技术人在职业发展过程中必定会面临的困境。但要回答清楚这个问题其根源不在于是写不写代码或者代码量的多少其本质还是要回到什么叫技术能力以及如何提升技术能力这个根节点上来。我把我的一些观察和思考总结下来供大家参考。
到底什么是技术能力
要解释清楚什么是技术能力还得看透技术能力的本质从源头上来做剖析。挑选几个程序员日常的工作问题来做个剖析比对从我们的日常感观中来辨识下哪些是有技术能力的做法哪些是没啥技术能力的做法。
两类日常工作
重复琐碎类工作
有一类工作是专门处理其他组技术同学对组内业务的疑惑进行解答我们称之为 daily 支持。比如咨询你负责的系统在开发环境有一个报错影响了他们的项目联调是什么原因。这种工作的典型特征就是随时都可能有人来问你问题还有可能是同一个问题不同的人来问你很多遍。这类工作称归纳为重复/琐碎类工作。这类工作我们来看看几种做法
1、就事论事把这个问题回答了结束。到这个程度你只是解决了一个具体的问题。很可惜我们很多技术同学都是处于这个层次。
2、解答完这个问题后即整理成文档把排查步骤写清楚提升自己和同组人的工作效率。到这个程度说明你看到并解决了内部效率问题。
3、将此排查问题的方法和逻辑固化为小工具给到咨询的同学去用让他以后可以自助排查解决这样既解决了别人的问题也彻底释放了自己和同组人的效能。到这个程度说明你重新定义了效能问题并找到更好提效的办法。
4、将此问题背后根因找到从业务原理或者产品功能上去找解法。将技术工具抽象为业务功能的完善。到这个程度说明你已经从单纯的技术提效看到了架构合理性问题并尝试在业务上寻求彻底根治的办法。
这四种不同的做法我们可以看出来即使是这些重复的琐碎类工作我们也可以从扩大受益面的角度去提炼价值然后寻求多个层次的解法。在解决问题的过程中自然而然也锻炼了自己多层次的思考和抽象能力。
抽象复杂类工作
还有一类工作是相对抽象和复杂的工作它的典型特质就是需要只能感受到现象很难找到根因没有明确目标和固定解法需要自己做方案定策略。举个实际中遇到的例子就是在复杂的系统链路中往往会出现联调效率十分低下的问题每个研发同学都在抱怨各种各样的问题但就是没法去根治。面对这样的复杂抽象问题也有好几种做法
1、找到抱怨的同学问一问具体的问题是什么然后针对性解决。
2、更加广泛收集问题然后列出来表格归类分析并安排负责人跟进解决最后定期跟踪进度。
3、深入分析表格的中的问题并对问题进行抽象从架构调优和产品功能的角度去寻找原因并寻找解决这些问题带来的业务价值并确定目标拆解路径最后按照任务推进和跟踪进展。
4、从更全局角度去思考此目标与年度目标的关系与组织发展的关系思考如何扩大此事的效益思考如何通过这些事的解决锻炼和培养团队同学。
可以看出来这种抽象复杂的工作其实也有多种做法看得更加细致是可以看到技术架构的调优看得有深度可以与目标、组织成长结合在一起。当然也有很一般的做法那就是纯粹单个问题解决纯粹是变成项目经理通过任务列表跟踪进度。
技术能力层次模型
通过上面两类日常工作的分析我们很明显可以看到有技术能力的做法特征是能够通过现象看到本质并能够通过对问题的抽象归纳进行技术架构层调优以解决同类问题。
因此我对技术能力的定义是技术能力是一种以解决某种问题为目标的思路、方法与执行手段其本质就是解决问题的能力。在编程领域就是对遇到的业务问题进行抽象、提炼以及逻辑的构建通过研发工具以提升解决问题的效能减低人工低效的重复工作。
如果用技术能力这个定义的方法论对“什么是技术能力”进行剖析我提炼了一些模型来表达。 这个能力模型按照逐步境界阶段分为了三层
术硬核技术能力
术这个层面其实更多是硬核技术能力基本上就是技术的基础功底如计算机基础分布式技术质量意识等。虽然这个归为是基础类但这也是技术人的立身之本。工作 3-5 年的同学基本上都还是处于这个阶段即需要大量的练习使得自己的技能非常娴熟。
处在这个阶段最重要的就是需要有技术好奇心要有技术的专研力通过时间的磨炼持久去学习去练习使得自己能够成为团队的核心骨干力量。
法技术架构能力
法这个层面其实更多的是技术架构能力即通过现象看透本质通过模型、原则来表达本质以解决抽象复杂类问题。这是一种高阶的技术架构思维基本上 5-10 年的同学会处在这个阶段。这个阶段更多强调问题发现问题定义问题分析问题解决的能力。
处在这个阶段是需要很强大的认知能力提升这里必备的素质就是皮实和包容要容得下不同的观点也要禁得起各种挑战。但这个阶段也有很大的误区即非常容易被简化为就是要学习很多方法论或者套路。
道技术领导力
道这个层面其实更多的是技术领导力即通过技术影响力去寻找愿景和目标带领组织拿取结战略结果。在这个阶段我们要基于深厚的技术架构能力和技术硬核能力。通过技术思维去解决超越纯技术领域的问题一般来说 10年的同学会遇到这类问题。这个阶段的成长也会更多面临人的底层素质能力升级需要更多靠领悟而不是纯粹的训练和问题驱动的思考。这个阶段其实也有很大的误区即很多人只学到了表面功夫而没有深得要领纯粹就变成是对己就是自我修养的提升对别人就是 PUA。
如何提升技术能力 随着把技术能力层次模型定义出来其实如何提升也有了一定指南。后续有机会可以分章节来论述这个技术能力的提升过程。但产出详细章节的实践论述前还有一篇“内功心法”可以分享给大家
寻找成长的源动力
大家往往对这个问题不以为意觉得成长是每个人都想要的但是大家没有仔细琢磨过促进你成长的到底是什么是你自驱想要享受这个练、思、悟的过程 还是 因为渴望得到周边人的认可/反馈/评价。这两者在你顺利的时候可能没什么感觉但当你面对晋升失败项目不利等挫折的时候就会有非常大的差异。
如果你能够找到自己成长的源动力那么在遇到真正的困难和迷茫时候才能够摆正好自己的心态寻找突破口让自己走出困境得到长足的成长。
常态化的总结与反思
不管是编码类的技术基础学习成长还是相对抽象的问题解决还是技术领导力成长。只要是成长只要能够抓住这两个关键就一定能够成功。
第一个就是反思能够敏锐地反思自己的不足然后不断去修正自己的心态和行为让自己蜕变。
第二个就是总结总结的过程是不断梳理自己的过程把自己迷迷糊糊是是而非的东西分类归类而且总结越多就能够用好时间的复利就能够越促进成长。
找到了源动力就解决了底层动机问题通过总结和反思是能够利用上时间的复利通过这两样心法就能够使得自己成为一个能够不断丰富完善自己的人达到这样的状态必定能够成为技术强人。
实用技巧
要做到常态化的总结与反思最简单的技巧就是写文章通过文字的整理可以让自己的思考更加成熟想得更加成熟以后自然而然对外就能够讲得更加清楚能够对外讲清楚就能够更好分享交流才能够真正去校正自己的想法是不是正确。所以我提了以写代想以想促讲以讲验真的实用技巧。
作者朱春茂知明
原文链接
本文为阿里云原创内容未经允许不得转载