技术人员的思考力
1、原理性思维:找出知识背后的原理
1.1、原因
a、降低记忆,原理数量是可控的
b、原理知识比直接知识更有复用度
c、探索原理的过程,本身很有乐趣
1.2、需要掌握的原理
a、基础知识
b、系统架构设计知识
c、领域性的基本原则
d、关于管理学,人际沟通,心理学的一些基本原理
1.3、如何实施(实际操作)
a、找到场景与原理的关系:实践中,有个意识是“多问一下为什么”,并一直“刨根问底”,找背后的最终原理
b、实践:解了原理以后,在实践中运用一下,加深原理的印象
c、系统化学习:通过书箱系统化学习, 而不是简单看一下技术博客,这样会造成停留在表面,不深入
2、结构化思维:构建自己的知识树
2.1、习惯性总结
做完任何一个事情,都习惯性地回顾一下,往自己的树上面挂新东西,这个是构建知识树的必备手段,这个总结不需要花很多时间,比如做完事情后花个几分钟回顾一下就可以,但是需要坚持
2.2、训练自己的思维习惯和做事方式变得结构化
3、扩展性思维:举一反三,拓展思维
举一反三:解决同类型的N个问题
寻求更多的可能性:拓展解决问题的不同手段
4.抓重点思维-提升效率,方便记忆和传递
归纳法
优先级法
5、反思性思维-思考哪里可以做得更好
思性思维最重要的意识:做事情的过程总有优化的空间,每次都要有进步;如果没有这种心态,那么很难持续地进行反思;
反思是一种习惯和潜意识,可以再不经意之间经常进行,其实不需要很形式化地花很多时间,有时候做完一个事情,习惯性思考一下就可以
6、如何有效实践
6.1、意识觉醒、转变:是基础、也是最重要的、也是不变提升、转变
很多同学思维能力没有上去,是没有意识到思考力这个概念,只是机械地做事情,做事情,做事情……每次都在同一个思维层次上面转悠,不可能有本质的提升。
从初级工程师,高级工程师,技术专家,高级专家,资深专家……级别提升靠什么?多接了多少需求?多写了多少代码?这些因素会有,但是关键因素不是这些,而是思考力在不断提升,思维方式在不断进化,进而导致业绩产出必变得更加优秀,产生的是事半功倍的效果。
6.2、保持信心
6.3、空杯心态
思考的过程其实是对人的知识、意识进行不断刷新和重构的过程,一定要保证空杯心态,对新的环境,新的理念,新的技术持开放态度。否则就是自己给自己制造阻力。
6.4.思考的时间从哪里来?
常见的借口是“我连需求都做不完,哪来的时间思考”?
训练思考力其实并不需要太完整的时间,我的口诀是:“1.利用碎片时间;2.抓住工作的过程”。
利用碎片时间,比如上下班路上的时间,吃饭的时候,可以把刚才或者今天的事情想一想,想通了,然后定期汇总一下就可以;
抓住工作的过程,注意,每次每次出技术方案,优化代码,排查问题,处理故障,准备晋升……都是一次训练的机会。在做事情的过程中就可以思考并快速实践
6.5、思考力提升没有什么判断标准?
三个度:广度、深度、速度
广度:就是你自己的知识树能够长多大的范围,越广知识越渊博;比如从“如何写一个多线程程序”,提升到“如何做系统性能优化“,再到“如何做系统稳定性备战”,这就是一种广度的提升;
深度:就是你自己的知识树的叶子节点有多深,越深对知识了解越透彻;比如从“分布式事务问题解决思路”,到“利用最终一致性解决分布式事务”,再到“利用DTS解决分布式事务”,这就是一种深度的提升;
速度:就是建立和刷新知识树的速度了。比如原来你想清楚一个建模方案要一天,现在只需要半小时可以想清楚,那就是速度的提升了。
6.6、好的工具有推荐么?
xmind
6.7、一定要相互分享
思考虽然主要是靠自己,但是一定要相互分享。因为思考是智力活动,相互分享完全能够取得1+1>2的效果;
注意分享可以有很多形式,比如我们团队最经常的是:
项目分享:重大项目是一定要分享的,包括架构设计经验,过程经验,质量提升经验,都需要分享出来;
周会分享:团队周会重点过进度?那太浪费啦,了解进度和风险看周报就可以了。周会是学习分享的好时机重点就是一些关键的方案,架构设计理念,好的工具,甚至工作无关的内容;
群内分享:当有个人踩坑以后,在群里面提醒一下大家,这是一个很及时的分享方案;
年度/季度分享:这时候适合找个风景优美喝茶的地方,大家讲一讲自己的成长和思考,非常有帮助;
小圈子:大家形成自己的小圈子,随时都可以相互倾诉一下自己的心得体会,其实这种效果也很好;
6.8、技术Leader在训练大家思考力中的职责
在技术团队中,技术Leader的思考力意识、能力和实际行动,决定了一个团队的整体思考力水平和成长速度!
一个团队要提高思考和学习的能力,首先得这个团队Leader的思考意识就要提上来,如果团队Leader没有思考意识,也没有把团队同学的成长放在心上,那么整个团队的思考力和成长速度绝对快不起来。
在提升团队整体思考力的实践中,技术Leader的职责:
先要把自己变成一个思考者:自己做表率,以身作则;
意识心态上先变过来:要把团队同学的成长速度最为最重要的职责之一,没有这个意识都是空谈;
多创造思考的条件和氛围:一定要抓住任何机会(代码reivew、方案评审、周会都可以)鼓励大家去思考和分享;
控制团队节奏:给大家学习和思考留出一定的时间;
及时的引导和示范:有的同学可能掌握会偏慢一些,这时候需要有耐心去引导同学找到思考的感觉;
不必过多干预细节:发挥大家的群体智慧,而不必做过多干预,更不能以个人的意志去强迫别人接受。