工程经理

Chinese, Simplified
SEO Title
engineering manager

【工程经理】“工程经理”作为反模式

Chinese, Simplified

太多的责任,来自各方的要求,没有足够的技术时间,最终注定了表现平平。 对我来说听起来像是上帝的对象。

  • Your managers need to be flying the planes, not sitting on the deck. (US Navy / Wikimedia Commons)

(非?)自然进化


您拥有成功的软件业务和强大的开发人员核心骨干。事情是,你想做更多,所以你的公司正在招聘疯子。很快你就会遇到直接报告问题。
老板跟不上所有入侵地下城的塞尔达人——最好雇佣一些副老板,对吧?
也许我们至少可以让塞尔达传说慢下来。
但是考虑一下:你到底想让这个人做什么?


作为副老板的生活


从广义上讲,软件工程经理具有三项职责:

  1. 让开发人员的任务与领导优先级保持一致
  2. 管理开发者关系和士气
  3. 技术实施建议

现在在现实世界中,数字 1 和 2 通常会导致世界末日——吸吮全人类幸福的毁灭者湿婆神:
会议。
没有时间为#3。因此,随着时间的流逝,您的经理对技术细节越来越脱节。
现在考虑:您要求某人管理一个工程师团队,同时不断削弱该人的工程能力。
不再从事任何工程的专业工程师将失去那些在战壕中的人的尊重。他们可能是一个人;工程师可能想要喜欢它们。但工程是一门技术学科,强大的技术执行力赢得了尊重。
随着时间的推移,对经理的技术能力失去信心,也会影响经理影响人性的能力。现在你也在破坏任务 1 和 2。
一个明确的失败设置。


当生命危在旦夕时它是如何完成的


一个有趣的比较点来自海军航空界。


航空母舰上所有飞行员的领导者被称为“CAG”,即航空大队指挥官。这个人不仅是一名经理,而且他们本身也是一名活跃的飞行员,他们从甲板上发射“猫枪”并“困”在拦阻装置的电线上。


CAG 的日程安排经过精心管理,管理职责被划分,并委派给支持人员,因此有足够的时间来保持他们的技术熟练程度。尊重是因为 CAG 以身作则。
那么如何在软件中做到这一点呢?

你不能腾出时间……但你可以买到


海军航空群指挥官被支援人员包围,因此任何不需要指挥官个人专业知识的任务都会被委派。但是我们可以从软件工程经理的任务列表中委派什么?


呃,怎么样……几乎所有的东西?


你需要的是可以传递信息和管理日程的人。项目进展顺利吗?管理层是否有新的优先事项,这些优先事项简单明了,只需重新安排任务堆栈?委派所有这些事情。


现在,如果有一个调度问题需要的不仅仅是重新安排任务,那很好——去找专家寻求专业知识。
但是考虑一下:我们提拔团队中最有才华的工程师,他们也有一些人际交往能力——这通常是软件世界中罕见的人才。然后,我们继续让他们处理琐碎的消息传递和调度任务。
你可以雇佣其他人来做这个!而且那些人更便宜!


将您的工程领导重新集中在解决工程问题上


聘请技术项目经理。我喜欢称他们为“日程安排经理”。更多关于这个角色的帖子。
让您新聘用的项目经理团队处理消息传递、日程安排和消除冲突。 TPM 花费的每一小时都是工程可用的新小时。这是一个新的小时,琐碎任务的待办事项清单上更少。问问任何开发人员——那些开放的顶空时间是编程的黄金。


接下来,聘请一位才华横溢、受人尊敬的工程顾问。寻找在一系列软件项目和技术堆栈方面拥有丰富经验的人。让这位顾问与您的经理和高级开发人员一起审核您的代码库和开发过程。有什么可以改进的?可以解决哪些长期存在的技术债务?顾问的经验可以为您的技术障碍带来哪些新想法?


请记住——软件工程是关于创新思想的。即使只有一个好主意也可能是一种转变。
将琐碎的支持任务从您的技术经理手中拉开。让他们的顶空再次打开;让您的顶级工程师重新开始做工程师擅长的工作。看着您的团队士气提高,创新飙升,障碍消失。在一个令人失望、平庸的软件世界中,您的新灵感团队将击败竞争对手。


愉快的委派!

精彩评论1:

我觉得您更多地谈论的是团队负责人或架构师(与经理相比)。 团队负责人应该是工程师和“3. 技术实施建议”,这让经理松了一口气(因为需要成为比团队中的工程师更有经验的工程师)。
一方面,拥有良好的技术背景极大地有助于成为一名经理。 另一方面,在您的团队中担任顶级技术人员同时担任经理会适得其反。

精彩评论2:

我绝对同意这种观点,“需要比团队中的工程师更有经验”,这肯定是有害的。
我认为划分委托责任的最佳方式基本上也是你所说的。 您的顶级技术专家可以在组织中四处游荡,根据需要在现场和各个团队中提供帮助。

 

原文:https://add-lightness-software.medium.com/engineering-manager-as-an-ant…

本文:https://jiagoushi.pro/node/2058

SEO Title
“Engineering Manager” as an Anti-Pattern

【工程经理】工程经理与技术主管——哪个更好?

Chinese, Simplified

工程经理应该拥有什么?


公司以多种方式分解工程经理的角色和职责。 这篇文章描述了划分这些职责的各种方法。 我也提供了权衡。


技术负责人职责


许多初创公司都是从技术领先模式开始的。 对于公司的早期阶段来说这很好,但往往是你长大的东西。

  • 技术主管负责管理人员、项目和流程。他们还领导技术决策
  • 人员管理受到影响,因为技术负责人有太多责任。而且他们通常不是经过培训的工程经理。
  • 流程受到影响,因为 Tech Lead 有很多责任。而且他们通常不是经过培训的工程经理。
  • 项目管理受到影响,因为 Tech Lead 有很多责任。他们可能没有项目管理经验。
  • 技术主管负责监督团队技术工作的质量。他们帮助他们的团队在技术思维方面做得更好。他们确保团队的技术计划合理且面向未来。
  • 产品经理与客户交谈并整合来自多个来源的反馈。他们优先考虑团队的工作。他们还确保团队有上下文,以便他们可以构建高价值的软件。


工程经理负责项目


这是我倾向于的方法。使用这种方法,您将拥有一名工程经理、产品经理和技术主管。

  • 工程经理负责人员管理。他们指导他们的团队成员,使他们更有影响力。
  • 工程经理负责管理项目:项目分解、排序、风险管理和项目沟通。这使他们能够了解团队的日常工作,并帮助他们成为团队的有效教练。
  • 工程经理管理团队的流程。他们适应并改进了团队的运作方式。这有助于球队不断进步。
  • 技术主管负责监督团队技术工作的质量。他们帮助他们的团队在技术思维方面做得更好。他们确保团队的技术计划合理且面向未来。
  • 产品经理与客户交谈并整合来自多个来源的反馈。他们优先考虑团队的工作。他们还确保团队有上下文,以便他们可以构建高价值的软件。

产品经理负责项目


目的是让产品经理大量参与团队的工作。并拥有高度技术性的工程经理,他们审查代码,有时甚至编写代码。至少谷歌的某些部分使用这种模式。

  • 工程经理负责人员管理。他们指导他们的团队成员,使他们更有影响力。
  • 工程经理管理团队的流程。他们适应并改进了团队的运作方式。这有助于球队不断进步。
  • 工程经理负责监督团队技术工作的质量。他们帮助他们的团队在技术思维方面做得更好。他们确保团队的技术计划合理且面向未来。由于经理处于权力位置,这可能会导致问题。这些问题可能会发生,因为人们不想反对他们经理的观点。此外,工程经理可能会发现很难专注于技术工作。或者,您可以让技术主管处理此区域。这可以正常工作,但有一个缺点。工程经理将离工作太远。这将导致他们无法指导团队的流程或指导他们的团队。
  • 产品经理运行项目:项目分解、排序、风险管理和项目沟通。这让他们可以了解团队的日常工作,并帮助他们为团队成员提供大量背景信息。
  • 产品经理与客户交谈并整合来自多个来源的反馈。他们优先考虑团队的工作。他们还确保团队有上下文,以便他们可以构建高价值的软件。
  • 因为产品经理如此专注于团队,所以他们花在客户身上的时间更少。当你负责项目时,很难平衡工作的两个方面。我认为这是一个主要缺点。


单线程所有者


单线程所有者拥有一切。他们可以雇佣人来委派他们的部分工作。我有关于单线程所有者模型的较长经验报告。亚马逊推广了这种方法。

  • 单线程所有者 (STO) 拥有一切。他们要么自己完成工作,要么找人委托。
  • STO管理人。他们指导团队成员以提高他们的影响力。
  • STO 可以运行项目或让项目经理运行项目。该人负责项目分解、排序、风险管理和项目沟通。
  • STO 管理团队的流程。他们改变了团队的运作方式以提高效率。
  • STO 负责处理团队技术工作的质量。他们可以委派这一责任。他们帮助他们的团队在技术思维方面做得更好。他们确保团队的技术计划合理且面向未来。
  • STO 或产品经理与客户交谈并整合来自多个来源的反馈。他们优先考虑团队的工作。他们还确保团队有上下文,以便他们可以构建高价值的软件。

SCRUM模型


SCRUM 方法是软件开发的经典方法。它没有明确提出管理职责。这是 SCRUM 的概述。

  • SCRUM 中没有具体说明人员管理的工作方式。通常,该人担任 Scrummaster 或产品负责人角色。忽略 Scrummaster 不应该对团队拥有权威。指导个别团队成员往往会受到影响。经理可能离工作不够近,无法指导团队成员。
  • 你不会看到很多使用 SCRUM 的项目管理。这一切都集中在点或燃尽图上。我合作过的 SCRUM 团队忽视了项目分解、排序和风险管理。 SCRUM 在产品负责人和 Scrummaster 之间划分项目职责。
  • Scrummaster 的激励措施是专注于流程和会议。他们倾向于过度使用它。他们往往过于依赖流程。
  • 团队拥有他们的技术计划和工作的质量。它通常以平等主义的方式完成。如果团队运作良好,这可能会很好。
  • 产品负责人充当轻量级产品经理。产品负责人角色是产品经理角色的子集。通常,产品负责人也不会完成这项工作。

回馈


我对上面列出的所有这些模型都有经验。我没有包括的一个模型是管理人员、流程和技术的工程经理,但与项目经理一起工作。我确信这些模型中的任何一个都有可能取得成功。我欢迎您的反馈和意见!

原文:https://medium.com/interviewnoodle/engineering-manager-vs-tech-lead-whi…

本文:https://jiagoushi.pro/node/2053

SEO Title
Engineering manager vs. tech lead — which is better?

【工程经理】工程经理的职责是什么

Chinese, Simplified

当我第一次成为工程经理时,我无法清楚地说明我的职责是什么。 作为个人贡献者,我知道我必须对各种项目进行编码、测试、设计和交付,但作为工程经理,我无法提出一套可以客观地陈述为我的职责和可交付成果的东西。


那时,我还在积极编码、管理人员、发送状态报告、参加面试以及进行绩效评估等数百万件事情。
我的时间分散在许多活动中。 我不知道该做哪一个,离开哪一个。 我感到不知所措,同时又觉得成绩不佳。


经过几年的奋斗,我放下了自我,承认我不知道工程经理的实际角色和责任,我从我们大多数人开始的地方开始——GOOGle。
我遇到了很多非常通用的东西。 这个例子

我做了大部分,但我仍然觉得我无法客观地衡量其中的大部分。
我开始接触其他工程经理,其中一些人给了我很好的指导,并分享了他们的日常工作。我非常感谢他们,但直到我遇到了一些很棒的产品经理,我才开始理解我作为 EM 的角色,越来越好。我注意到优秀的产品经理使用输入和输出指标来跟踪他们的大部分影响。


输入和输出指标


大多数公司都有一套他们跟踪的业务指标。这些指标通常具有树状结构。例如,对于 Spotify,创建播放列表和发现新歌曲会增加每次会话花费的时间,这反过来会增加听音乐的时间。第一级输入指标是发现新歌曲和创建播放列表,这有助于提高每个会话花费的时间的下一级输出指标和听音乐时间的最终输出指标。如果您是负责这些输入指标的团队中的产品经理,您需要创建一个框架来跟踪这些输入指标,并为您的即时输出指标和最终输出指标创建属性。

这非常清楚,更重要的是可以衡量。 我复制了这个并开始根据树中的节点以及它与业务的连接方式来定义我的目标、角色和职责。


一个例子


当时,我是一名主管,在我的团队中管理着 2 名工程经理和一名实施经理。 我的团队大约有 30 人。
这是我提出的基于输入和输出指标的颜色编码树结构示例(此处的数字和文本只是说明模型的示例)

Sample Template — https://miro.com/app/board/uXjVOLKZdLA=/?invite_link_id=45595259908

我对我负责的树节点进行了颜色编码,我团队中的经理负责,其他团队负责。这样做有助于我了解我的责任,并分享和让其他团队成员对他们的结果负责。


请注意,每个盒子都有一个可衡量的方法来知道它是否完成了。在一个月或一个季度末,我能够判断我/我的团队负责的结果是否得到满足。如果没有遇到,我们离我们有多远。


意想不到的好处


在提出这个框架后,对我来说最大的好处是我能够向任何提出要求的人阐明我的责任。我很高兴。还有其他意想不到的好处。


高层管理沟通


有了这个框架,我注意到我与经理和跨级经理的沟通变得非常清晰。他们能够了解我的团队正在做什么,以及他们如何为公司的整体战略做出贡献。发送我讨厌的定期状态报告变得轻而易举,因为我只需要列出来自各个树节点的最新数字。

 

  • 负面的南希说——“每个团队和每个经理都是不同的。只有数字和对齐是不够的”
  • 我——同意。但是将这些细节添加到您已经拥有的模板中将为读者增加价值。


解决技术债务与否


作为一名工程经理,我很难确定技术债务的优先级。在优先级划分期间,它始终是一个热门话题。
有了这个框架,我不得不拿出数字来跟踪和衡量技术债务的改善情况。我使用以下指标来量化对技术债务的需求

 

  • 生产中的事故数量
  • 由于回归错误导致的部署失败次数
  • 解决事件的平均时间


负面 Nancy 说——“技术债务不容易量化或归因于实际价值。跟踪这些指标可能无法准确衡量解决技术债务的影响。”
我——是的,有时它可以帮助提高团队的士气,而这很难准确衡量。尽管如此,如果您放下一些真实的指标并对其进行衡量,它将指导您了解整体趋势。


1x1


我觉得我的 1x1 报告更有结构。在预期内容和交付内容方面几乎没有误会。我们每月检查两次这些数字,如果事情没有按计划进行,我们可以进行必要的调整。
我收到的积极反馈之一是我的报告如何看待他们的工作与一些公司目标一致。


绩效评估


当我接手工程管理时,我遇到的最大挑战之一就是撰写绩效评估。由于我被“活动”压得喘不过气来,我无法为自己或我的团队写一篇好的绩效评估。
拥有这个框架有助于创建编写绩效评估所需的构建块。我可以清楚地说我是否实现了我/我的团队负责的目标。

如果你和我在同一条船上,那么试试这种方法,让我知道它对你有什么好处。
我相信还有许多其他方法可以解决工程经理的角色和职责。 你解决这些问题的方法有哪些? 您可以回复此电子邮件并分享您的想法。


原文:https://medium.com/@ganeshsridharan_35314/what-is-the-responsibility-of…

本文:https://jiagoushi.pro/node/2048

SEO Title
What is the responsibility of an engineering manager