软件行业的技术负责人/主管的定义 -patkua


我们的行业因术语混乱而臭名昭著。软件开发中的角色就是一个很好的例子。诸如架构师,技术主管,团队主管和工程经理之类的头衔给人带来无尽的困惑。在本文中,我们将探讨技术负责人角色的定义。

定义
简而言之:技术负责人是负责领导团队和协调技术方向的软件工程师。
详细:技术主管是负责领导团队和协调技术方向的软件工程师。提供强有力的技术指导涉及建立技术远景,解决技术分歧并管理团队可交付成果的技术质量。有效的技术领导力确保团队使用适当的工程实践(例如CD或自动化测试),对工具或技术债务进行持续改进方面的投资,并确保系统不断发展以满足不断变化的需求和环境。
有时团队领导是共享的,但技术领导很少出现这种情况。技术负责人可以与其他角色(例如产品经理或工程经理/团队负责人)共同领导团队。产品经理关注“ 什么 ”,而技术主管关注“ 如何”。”其中,工程经理/团队负责人专注于“ 人员和团队成长 ”,而技术负责人则专注于团队成员和系统的“ 技术成长 ”。技术负责人的独特重点是领导团队的技术方向和质量。根据特定团队的不同,他们可能还会增加职责。

优秀的架构师看起来像技术主管
架构师角色确保现在和将来的整个应用程序体系结构都适合业务环境。在某些组织中,架构师与团队合作来建立和验证架构构想。架构师还希望找到标准化的适当平衡。适当数量的标准化可提高生产率。太多的标准化会扼杀创新。
一些组织聘请了“象牙塔架构师”来咨询,标准化和记录文档。他们在团队之间浮动,开始新的软件项目,很少跟进以了解其最初的体系结构构想的结果。这不是技术主管的样子。
一个有效的架构师看起来像一个好的技术主管。他们了解团队目标是什么,并建立适当的架构构想。他们会与团队合作,以在团队了解更多有关选择的问题和解决问题的技术方面进行调整。

技术主管的核心技能是什么?
尽管技术主管的范围有所不同,但所需的技能却没有。技术负责人需要在以下领域建立一套平衡的技能:

技术主管的核心技能

  • 开发 –技术负责人必须具有开发人员背景。他们需要知道如何编写代码以及高质量的代码是什么样的。即使他们不一定是专家,他们也应该能够帮助他们的团队解决任何技术难题。
  • 体系结构 –开发只是构建工作系统的一部分。技术主管必须对软件如何适合整个系统有更广泛的了解。他们需要对如何在生产环境中部署,管理和操作软件有很好的了解。
  • 领导力 –有效的技术主管需要具备强大的领导才能,即使他们不负责生产线管理。领导技能,例如教练,影响力和授权是成功的关键。