技术能力
技术能力:
到底什么是技术能力?
要解释清楚什么是技术能力还得看透技术能力的本质,从源头上来做剖析。挑选几个程序员日常的工作问题来做个剖析比对,从我们的日常感观中来辨识下哪些是有技术能力的做法,哪些是没啥技术能力的做法。
两类日常工作
重复琐碎类工作
有一类工作是专门处理其他组技术同学对组内业务的疑惑进行解答,我们称之为daily支持。比如咨询你负责的系统在开发环境有一个报错影响了他们的项目联调是什么原因。这种工作的典型特征就是,随时都可能有人来问你问题,还有可能是同一个问题不同的人来问你很多遍。这类工作称归纳为重复/琐碎类工作。这类工作我们来看看几种做法:
- 第一种:就事论事,把这个问题回答了结束。到这个程度你只是解决了一个具体的问题。很可惜我们很多技术同学都是处于这个层次。
- 第二种:解答完这个问题后即整理成文档,把排查步骤写清楚,提升自己和同组人的工作效率。到这个程度说明你看到并解决了内部效率问题。
- 第三种:将此排查问题的方法和逻辑固化为小工具给到咨询的同学去用,让他以后可以自助排查解决,这样既解决了别人的问题也彻底释放了自己和同组人的效能。到这个程度说明你重新定义了效能问题并找到更好提效的办法。
- 第四种:将此问题背后根因找到,从业务原理或者产品功能上去找解法。将技术工具抽象为业务功能的完善。到这个程度说明你已经从单纯的技术提效看到了架构合理性问题,并尝试在业务上寻求彻底根治的办法。
这四种不同的做法我们可以看出来,即使是这些重复的琐碎类工作,我们也可以从扩大受益面的角度去提炼价值,然后寻求多个层次的解法。在解决问题的过程中自然而然也锻炼了自己多层次的思考和抽象能力。
抽象复杂类工作
还有一类工作是相对抽象和复杂的工作,它的典型特质就是需要只能感受到现象,很难找到根因,没有明确目标和固定解法,需要自己做方案定策略。举个实际中遇到的例子,就是在复杂的系统链路中往往会出现联调效率十分低下的问题,每个研发同学都在抱怨各种各样的问题,但就是没法去根治。面对这样的复杂抽象问题,也有好几种做法:
- 第一种:找到抱怨的同学,问一问具体的问题是什么,然后针对性解决。
- 第二种:更加广泛收集问题,然后列出来表格,归类分析并安排负责人跟进解决,最后定期跟踪进度。
- 第三种:深入分析表格的中的问题并对问题进行抽象,从架构调优和产品功能的角度去寻找原因,并寻找解决这些问题带来的业务价值,并确定目标拆解路径,最后按照任务推进和跟踪进展。
- 第四种:从更全局角度去思考此目标与年度目标的关系,与组织发展的关系,思考如何扩大此事的效益,思考如何通过这些事的解决锻炼和培养团队同学。
可以看出来这种抽象复杂的工作,其实也有多种做法,看得更加细致是可以看到技术架构的调优,看得有深度可以与目标、组织成长结合在一起。当然也有很一般的做法,那就是纯粹单个问题解决,纯粹是变成项目经理,通过任务列表跟踪进度。
技巧-架构-价值
技巧:工程,工具,方法 (研发能力)
架构:本质 模型 原则 (协作能力)
价值:愿景、目标、组织 (领导能力)
每日反思,每日总结,每日目标
阶段性反思 总结 目标
观察现象-发现问题-解决解决-归纳问题
单体力量:
提高认知-行动验证-归纳总结 这是一个循环
能力和原则是核心。
团队力量:
结构化沟通
知道每个人的擅长和短处
组合每个达成目标。
沟通-协作是核心。
领导能力:
对问题本质的分析并有宏大的愿景
超越普通人百倍的认知
拥有实现目标的资源
核心是什么:等我做到了再写。