一说到管理者的能力特质,我们马上会联想到沟通、授权、决策等能力。然而,对于软件开发活动中的基层技术管理者(team lead、line manager等),我想指出被极为忽视的另一种重要能力 — 技术敏感度。
对于基层技术管理者来说,何为技术敏感度?技术敏感度表现为:1)工程师解释技术问题时,能快速理解并切中问题要害; 2)面对多个技术方案做选择时,具备权衡能力,并能给出有建设性的意见和建议,甚至做出选择;3)工程师提出技术想法时,能敏锐地意识到对产品和团队的意义; 4)能根据团队成员的个体差异和技能特点,及团队技能整体发展的需要,合理地调配团队成员的工作内容;5)从代码层面了解项目的质量状况;6)理解软件开发活动的复杂性本质。部分内容看似应是工程师应具备的,为何却要求基层技术管理者必备?
第一,基层技术管理者在日常工作中作为技术团队面向管理层的接口人,他们在各类与产品经理、项目经理的会议中代表着工程师队伍解释影响项目进展所面临的技术问题。这就要求管理者适时地了解项目在技术方面的进展,显然,这些进展得从工程师口中获得。日常工作中,基层技术管理者不仅要能理解工程师所解释的技术问题,还得掌握问题要害,而不能工程师解释时了解,过后却健忘。基层技术管理者如不具备这种能力,容易造成与管理层和技术团队的沟通不畅而影响工作效率。(注:我碰到过一些基层技术管理者,同样的技术问题得在不同时间段为他解释。开技术会议的主要工作是让他理解所出现的技术问题,效率之低可以想象)
第二,基层技术管理者在日常工作中不时会面临团队技术方案的选择问题。规模较大的技术方案(如系统级、子系统级)的选择通常由架构师们完成,但团队级别小规模的技术方案选择很多情形下会成为基层技术管理者的工作内容。当团队具备一个以上技术实力相当,但在设计理念上存在明显差异的工程师时,他们很有可能在项目实施的过程中主张不同的实现方案,如果设计方案无法及时达成共识,势必影响项目的顺利进展。此时,基层技术管理者得参与其中,通过运用自己的技术能力与团队共同做出设计方案的选择。在这种情况下,即使技术管理者不直接做决策,也得通过询问一些问题帮助团队做出决策。所问的问题可能有:各方案的开发成本如何?各方案所获得的长远与短期利益分别是什么?长远与短期利益哪一个更紧迫?等等。问怎样的问题,完全取决于基层技术管理者的技术能力和项目当时的具体状况,并没有标准问题集。基层技术管理者如果不具备这种能力,很容易让团队在技术方向上迷失,不利于在团队维持向上的技术氛围。(注:我看到过一些基层技术管理者,对于团队所出现的因为技术方案选择而产生的争议不闻不问,做决策时是根据各方案有多少人支持,而不是依靠自己的技术能力施加影响)
第三,工程师在工作中会提出这样或那样的技术想法,基层技术管理者很重要的工作内容是对这些想法进行积极的回应,以引导团队的技能发展。这就要求基层技术管理者对各种技术想法具备甄别能力,能敏锐地发现想法对产品与团队的意义。对于能改善产品质量与提高团队效能的想法,基层技术管理者应在团队内给予及时的肯定,并为想法的实施适当地分配资源。假如基层技术管理者缺乏这种能力,要让团队具备一定的创新能力几乎不可能。要知道,工程师所努力的方向很大程度上与基层技术管理者的认可内容有很大的关系。(注:这一点我认为是基层技术管理者做得很糟糕,他们似乎只在意项目计划和进度)
第四,提高团队技能是基层技术管理者的核心工作内容,这就要求基层技术管理者在工作中有意识地弥补团队的技能“短板”,通过考量团队成员个体的特点和技术特长合理安排工作。技术管理工作中,很害怕的是忽视个体特点以为每个人只要有机会都能成为技术专家。另外,软件开发活动中所出现的项目延期,很容易给人的假象是“任务估计不准”,而实际上,这是团队能力不足的表现。(注:请参见《技术管理的核心内容 - 提高团队技能》一文)
第五,设计是软件产品的质量之本,但再好的设计也得通过程序代码这种“物质外壳”去表达,因此代码质量将决定软件产品的最终质量(引自《专业嵌入式软件开发》)。对于基层技术管理者来说,真实了解软件产品的质量状况并非简单地知晓发现了多少缺陷,或阅读所谓的“质量报告”,而应从产品代码中获得。由于软件开发团队是以交付高质量软件产品为使命的,这就要求基层技术管理者根据代码质量去指导技术管理工作,否则很容易浮在质量管理的表面。我认为基层技术管理者很重要的一个工作内容是帮助团队形成良好的编程习惯,如果对项目的质量没有代码级的认识,就很难就这一点在工作中引导团队。(注:有不少基层技术管理者根本没有阅读过项目的代码,而是一味地通过项目的缺陷率间接了解产品质量,甚至一厢情愿地生活在“产品质量很高”的梦境中)
第六,软件开发作为一种脑力密集型的工作,基层技术管理者如何管理知识工作者一直存在很大的挑战。在面对和克服挑战的过程中,一定需要基层技术管理者很好地理解软件开发的复杂性本质(没有“银弹”),否则很容易生搬硬套纯率的管理理论,而忽视技术因素。也只有理解软件开发的复杂性本质,才能对工程师因为面临技术难题而使得工作处于焦灼状态表示理解和保持耐心,也有助于在工作中区分问题的根源是来自管理域、抑或技术域。(注:不少基层技术管理者因为忽视管理工作中的技术因素,采用管理方法去解决技术问题,其效率与效果可以想象)
技术敏感度归结起来就是要求基层技术管理者应具备很强的技术能力(千万不要丢了“很强”两个字),或者说对技术具备良好的洞察力。对于以上谈到的几点,读者或许会想:绝大多数基层技术管理者都是技术出身的,难道就没有技术敏感度?我消极地认为,很多人都没有!
很多基层技术管理者是从技术能力较强的人群中提拔上去的,这是一个事实。然而,由于他们中的大多数在技术道路上积累的时间都比较短(8年以下),在走上管理岗位时其实对软件的复杂性本质并没有深刻的认识,更谈不上拥有自己的软件哲学思想,也没有多少成功克服技术困难的磨砺。加之,一旦走上管理工作岗位,公司在能力培养方面总爱假设他们在技术能力上能胜任工作,而大力弥补他们的管理技能。结果是,相当数量的基层技术管理者技术能力并没有达到相当的水准(管理水平也一般),谈不上对技术敏感。
基于这种现状,对于那些在技术积累还没有达到相当水准却一心想成为管理者的同仁,我的建议是:请不要急着去做管理,否则你会身不由已地失去技术的成长空间。尽管早走上管理岗位能让我们把握先机,但操之过急的职业发展是以牺牲自己的将来而换取的。在如今浮燥的社会,很少有工程师知道,其实精进自己的技术是通向成功技术管理的最有效途径。技术敏感度的缺乏会让我们在将来付出很多,也会在职业发展的道路上面临更大的困境(到时技术不精,管理也做不好,拿什么去竞争?你如何证明你的管理能力突出?)。
之所以如此强调技术敏感度,是因为只有这样基层技术管理者才更具软件开发常识,而运用常识去管理复杂的软件开发应是最为有效的方法。现实中,正是因为基层技术管理者常识的缺乏,他们在不了解工程师能力的情况下却做着绩效管理(能公平吗?),在很大程度不了解项目技术细节的情况下却做着项目计划(能合理吗?),在没有读过项目代码的情况下却做着质量控制(能有效吗?),……
强调技术敏感度并不是说基层技术管理者对所管理的项目需要了解每一个技术细节,而是强调他们应具备很好的技术积累。这里的技术积累并不是简单地指他曾经经历了多少项目、写过了多少代码(这些都是必须的),而是需要对软件开发能有深刻的认识,并拥有自己的思想,因为只有这些内容才对不同的项目具有普适性。
读到这,相信有读者会问:管理者如果没有技术敏感度,难道就不能通过用好技术人才而获得成功吗?这种话某种程度上具有一定的欺骗性。在我的工作经历中,的确碰到过一位技术敏感度缺乏,但在技术管理上却做得很好的基层技术管理者。这类人在心态上与大多数人不同,他们勇于承认自己技术能力的不足,且对团队中的技术人才给予允分的尊重和信任。实际上,要做到这些很难,尤其对于那些有很强控制欲的人来说,根本不可能。
对于基层技术管理者,最后我想说的是:你所获得的不只是权力,更有责任 —  让团队成员在快乐的工作中不断提高技能。

技术敏感度 — 基层技术管理者必备相关推荐

  1. 技术管理者必备管理模板

    点击▲关注 "中生代技术"   给公众号标星置顶 更多精彩技术内容 第一时间直达 对于公司技术团队新晋升的一些研发Leader.主管等管理人员,即使在大公司具有完善的培训机制,大多 ...

  2. “技术男”升为“管理者”,角色一定要转变

    对于多数勤勉的工程师来说,努力数年后走上技术管理岗位似乎是一件水到渠成的事,但要真正做好技术管理,成为一名优秀的管理者却并不太容易. 对技术男来说,技术团队建设.人员管理.产品开发过程管理,都是不小的 ...

  3. “技术男”升为“管理者”,角色一定要转变,有好方法吗?

    对于多数勤勉的工程师来说,努力数年后走上技术管理岗位似乎是一件水到渠成的事,但要真正做好技术管理,成为一名优秀的管理者却并不太容易. 对技术男来说,技术团队建设.人员管理.产品开发过程管理,都是不小的 ...

  4. 如何做好基层技术管理工作?

    最近有朋友与我探讨了软件基层技术管理工作方面的话题,借此从动机和方法两方面谈谈我的看法. 动机 要做好基层技术管理工作,首先要确保自己有良好的动机,即明白自己为何要走上技术管理岗位.做管理的根本是为了 ...

  5. 从技术专才到现代管理者

    从技术专才到现代管理者   课程介绍: 因为你在某一领域.某一岗位表现优秀,被提升到一个管理者的位置上.作为企业的一名新晋主管,面临一个全新的管理岗位,你是否知道,过去你优秀专才的成功经验,往往正是你 ...

  6. 唐巧:技术人如何成为管理者

    唐巧:技术人如何成为管理者 前不久趣直播举办了一场技术人成长交流会.邀请了小猿搜题产品技术负责人唐巧来分享.我也有幸参加了此次的交流会 以下是文字版: 我大概自我介绍一下,我叫唐巧,是小猿搜题的产品技 ...

  7. 时钟树综合CTS技术经验分享(高薪必备)

    时钟树综合CTS技术经验分享(高薪必备!) 文章右侧广告为官方硬广告,与吾爱IC社区无关,用户勿点.点击进去后出现任何损失与社区无关. 说到时钟树综合,需要大家紧紧围绕 3W 和 1H 来思考,即 W ...

  8. 不只是技术!成为IT经理必备的十大软技能

    不只是技术!成为IT经理必备的十大软技能 地址http://www.csdn.net/article/2013-11-07/2817427-10-soft-skills

  9. “技术男”升为“管理者”,角色一定要转变,你有好方法吗?

    "技术男"升为"管理者",角色一定要转变,你有好方法吗? [思维] [方法] [角色] 总结 从三个维度来转变: [思维] 从技术走向管理,原来技术男的思维是& ...

最新文章

  1. Matlab函数bwmorph
  2. Spring Cache抽象-缓存管理器
  3. php多图上传插件ios,yii2组件之多图上传插件FileInput的详细使用
  4. boost::hana::not_用法的测试程序
  5. 【14】GO语言的接口类型
  6. 蓝桥杯 反置数 数论
  7. 材料科学与工程考计算机,计算机在材料科学与工程中应用作业.pdf
  8. ArchLinux On Win10
  9. 无人驾驶的分级以及产品化后会带来的改善
  10. spring boot session超时设置
  11. 获取csdn 积分和c币方法指南
  12. 数据库系统工程师学习记录(计算机系统知识)
  13. JAVA汽车4S店管理系统
  14. Kconfig使用详解
  15. 百度网盘目录搜索引擎
  16. 什么是二进制,进制之间是如何转换的,浅显易懂的,一看就会
  17. 快速搞懂Oracle 19c安全新特性 (二) Privilege Analysis(权限分析)
  18. 手机银行消息服务器,服务与功能_手机银行_服务介绍_个人电子银行_电子银行频道_建设银行...
  19. Spring Aop(十五)——Aop原理之Advised接口
  20. 深圳实验室装修准备工作

热门文章

  1. 基于租房数据进行数据分析
  2. android屏幕抓取,Android抓取屏幕展示 内容(类似屏幕截图)
  3. 图像压缩(基于matlab)
  4. 单片机C语言制作ESR表,电容ESR表(二) 电容ESR表的设计、制作、调试
  5. 计算机在测控技术与仪器中的应用,测控技术与仪器在实践中的应用分析
  6. SpringCloud Alibaba之 Sentinel流量防卫兵
  7. 详解2020数学建模国赛A题炉温曲线
  8. java毕业设计社团管理系统mybatis+源码+调试部署+系统+数据库+lw
  9. 需求管理软件(TC Requirement)介绍
  10. easyuefi添加linux分区,linux學習筆記(一)——使用easyBCD或easyUEFI引導從硬盤安裝Ubuntu系統...