开发人员团队需要经理吗?


28

背景:

我目前是一个由4人组成的团队的成员:1个经理,1个高级开发人员和2个开发人员。我们为大约3500名员工的组织执行了一系列定制的内部系统/项目(例如6-8周),以及以前创建的系统所需的所有维护和支持。我们没有足够的精力来完成可能要走的所有工作-人手不足。管理层承认这一点,但是预算限制限制了我们向团队招募更多成员的能力(即使我们将薪金返还给了储蓄)。

改变

这使我们离开了现在的位置。我们的经理将继续担任牧场的新职务,团队中有空缺。管理层正在利用这一机会重组我们的团队,这将看到团队经理的角色被另一位开发人员和另一位高级开发人员所取代。他们的逻辑是我们需要更多的开发人员,因此这是一种为其筹集资金的方法(其中一个角色部分由另一个空缺职位提供资金)。

团队将没有直接的直线经理,而职位和职责将由上级和(相对较新的)服务经理(非技术角色,几乎没有开发知识/经验,其重点是共享的)来划分其他团队和个人)-谁将是我们在食物链中的下一位实际经理。

我猜最后一个问题是:

是否可以在没有经理的情况下运营开发团队?你有经验吗?哪些事情可能出问题/对我们有好处?

理想情况下,我想“以这种方式来做事”,或提出一些反对的意见。


20
如果没有人是经理,那么实际上每个人都是经理。灾难食谱。
JohnFx 2012年

14
Google自我管理或自我指导的团队。有轶事证据表明它在某些情况下可以很好地工作。它是否适合人们,文化是IMO真正的问题。
Guy Sirton 2012年


@Guy Sirton:这些文章中有任何一篇适用于程序员吗?我对此表示怀疑。
Jim G.

@Guy Sirton:请参阅JohnFx的评论。他是100%正确的。
Jim G.

Answers:


47

风险越大,您越需要“空气掩护”。这是经理真正应该提供的。在团队进行工作时,经理应确保没有任何事情会使团队无法实现团队目标。无论是调整日程安排,团队与销售人员之间的干扰,还是只是确保团队按时付款并确保咖啡机保持正常运转。一个真正出色的经理可以使团队几乎像经理不在那样运作。

当然,现实是,大多数管理者完全没有这样做。他们要么是微观管理,要么是过时的,以使公司的高层可以更直接地控制事物,而真正的优秀管理者的确是稀有鸟类。就软件团队而言,在拥有分层或扁平化的团队结构时,有两种利弊。如果团队很小,并且完成的工作需要很少的重叠(并且我的意思是每个人都有一个独立的项目),那么根据我的经验,如果所有(团队成员受到纪律处分。但是,根据我的经验,团队成员在工作上有很多重叠之处,并且有两个或多个相对较强的人格,

其中涉及许多因素,但实际上归结为所涉及的个性,他们的个人动机和职业目标,以及高层管理人员提供的示例和指导,这些示例和指导将确定经理或团队领导者职位的必要性。通常,如果有任何混乱,并且在团队要求时,那么团队显然需要领导。如果在没有管理人员投入的情况下事情通常顺利进行,那么也许团队可以在一段时间内在非分层结构中进行管理……至少直到工作量和进度表变得难以管理为止。


11
+1是“空中掩护”,这是经理在这种情况下真正需要做的事情(如果他们特别是项目经理,则情况不同 )。
jcmeloni 2012年

5
第一个段落+1-下一个段落-1,最后一个段落+1。Dissing经理可能很有趣,但是在这些论坛上却显得有些
困惑。

7
+1:“在团队进行工作的同时,经理应该确保没有什么会阻止团队实现团队目标。”:并不是所有的经理都这样,但是我有幸拥有这样的团队经理。我通常可以在没有指导的情况下工作,但是拥有一个可以防止在工作期间干扰事件或信息到达我的经理真的很棒,并且可以提高我的工作效率!
Giorgio 2012年

17

有人需要成为经理,但就您团队而言,我认为这不是全职职位。雇用另一个sr。开发人员并任命其中一位为经理。理想情况下,最适合的人是经理,不一定是最好的程序员。

如果没有共识,管理者需要做出最终决定,因此该人应具有技术资格。评估其他程序员,会议和抵御高级管理人员是工作的一部分。

建议阅读:没有裤子的一年。即使是大型软件项目(WordPress),也可以没有直接管理者,但是有些任务(没有人想做/非常艰苦)或需要为同一任务集成大量开发人员,而没有一些任务可能非常困难。中央控制。


我从来没有像团队那样直接编写代码的直接经理。
Vorac

@Vorac-很好奇,您迄今为止最大的开发团队是什么?
JeffO 2014年

总共10人:)
Vorac 2014年

12

正如其他人所指出的那样,对您问题的简单答案是肯定的。

对于您的问题,更完整但更复杂的答案是:

“管理层承认这一点,但是预算限制限制了我们向团队招募更多成员的能力”

管理层说“是的,我们承认,我们承认”只是为了让您感觉更好的“言语”。他们认为这对于组织的成功并不重要,否则他们将真正支持真正找人!

其他需要提防的事情(因为其中有很多心理问题)是当管理层告诉您一个坏消息时,但又混有一些笑话,也许直接提到了这个问题,也许不是,但这基本上使人们无法质疑(这是一种巧妙的技巧)。另一个需要注意的是3个小时的会议,向您介绍计划,并在2个小时55分钟时询问您的意见。

对“说”正确的事情的管理持谨慎态度,而不是“做”正确的事情的管理。


6

没有经理=没有责任感=至少从长期来看没有。每个人都会按自己喜欢的方式做事,而中层管理人员会四处奔波,不确定给定问题或要求与谁交谈或谁是对的,谁是错的。除非任务如此分离并且几乎没有关系,否则拥有许多“小管理人员”在开发中就行不通,因为执行给定任务的方法太多了,并且由于管理需要专业知识,忙碌的开发人员可能不一定会获得。需要有人看全貌。建议的样式可能适用于为旧版或当前应用程序提供支持但不支持开发的团队。乐观地说,这需要您的组织以及一些尝试和失败,才能很好地解决。


对于没有纪律的开发人员群体来说,这可能是正确的,但对于一个积极进取,自我组织的团队而言,情况并非如此。如果团队按照您的回答所要求的纪律不佳,那么问题出在人力资源而不是管理层。
丹·里昂斯

@DanLyons,感谢您的评论。当高层管理人员需要知道什么时候将交付产品时,或者我们仍然需要支付多少钱,或者为什么此报告不起作用等等。必须至少有一个可靠的答案。我认为任何超过1人的小组都必须指派一名经理。毕竟在每个IT项目结束时都必须有一个人要解雇:)
NoChance 2012年

1
建立WordPress的公司似乎能够做到这一点。
JeffO 2014年

这对我来说是个新闻。好点子。
2014年

4

我同意上面的答案,但是有一个重要的考虑因素。

“经理”是一个职位,但是从角色的角度来看,经理是一个有一定责任的人。无论这些职责是什么,与CxO进行谈判,编写报告,管理休假,甚至加满咖啡机-您的团队都需要为此负责的人。

专业人士 -可以是你们当中的一员,这可能会极大地促进他/她的职业发展。团队的其他成员将得到一个不是“从天而降”的人,而是一个深刻理解团队需求的人。
当然,别忘了谈谈她将花费多少时间来执行管理任务,以及她以前曾经做过的工作还剩下什么。

骗局 -可能没有人希望成为经理。这没什么不好的。许多开发人员更喜欢键盘和其他开发人员,而不是“浪费时间”来查看报告,图表和会议。相信我,每天早上与尖叫的老板在一起五分钟非常令人沮丧!:)

因此,我想对您提出这样的问题:
是否可以在没有专职经理的情况下运营开发团队?是的
您的团队准备好进行这种更改了吗?-我不能说。
试试吧。只是值得尝试。


-1:值得尝试吗?什么时候?在一个没关系的项目上?
Jim G.

@吉姆:...除非有一个经理只关心他/她通过阻止人们成长来光顾人们的机会,否则。;-)
bytebuster 2012年

3

我目前正在一个没有经理的小团队中工作。小公司。它运作良好。

你的旅费可能会改变。


3

您需要技术主管和经理。我个人认为,技术主管更为重要。(如果您不确定那是什么,那么基本上就是那个人来分发工作,并确保每个人都在做应做的事情。)


1
同意。根据问题中“服务经理”角色的描述,补充是团队的技术主管。
MSalters 2012年

2

如果每个人的成熟程度足以组建团队并达到利益相关者的期望,那么开发团队就不需要经理。

有某些角色(例如开发人员)需要专注于需要解决的问题,而不用担心其他环境因素。那是有经理帮助的地方。

话虽如此,可以增加价值的资深人士总是有帮助的。甚至首席执行官也向经理团队(董事会)汇报工作。

我的2分钱


1

我建议这取决于组织中团队需要进行的战斗。如果存在妨碍您完成工作的问题,那么经理应该对这些问题进行梳理。

可能是诸如确保以合理的方式控制和设置优先级,确保您拥有完成工作所需的设备,软件等。他们应该是组织中团队的倡导者。

您如何与企业打交道,如何确定应该从事的工作,以及谁决定何时完成。如果组织无需您的经理就可以处理这些事情,那就太好了。但是,团队外部可能会有变化,也许如果业务中的一两个关键人物改变了角色,您可能会发现自己陷入困境。

也许您可以在组织中选择一位强有力的领导者作为您的拥护者,但无需参与您的日常管理,与他们接洽,看看他们是否愿意将您的团队置于他们的领导之下。(也许您已经使用您提到的“服务经理”做到了这一点。)


1

简短的回答:是的。

长答案:但这取决于团队的个性。显然,某人必须决定您的工作,因此您需要向某人报告-这可能不必成为您团队的经理,但某人必须让您去做。在团队内部,您可能需要某人来决定优先级和/或技术问题,但这可以由团队负责人轻松完成。

也许您需要将您的开发团队与另一个团队合并,您是否有一个测试团队>在保持开发团队半自治的同时为这两者使用同一个经理会更好吗?

在我看来,服务经理可以很高兴地为您提供需要执行的工作,并检查其是否符合必要的质量,并且他不需要任何开发经验即可完成此任务-软件是一种商业工具,无论是符合要求或不符合要求,通常最好的人员是用户。服务经理将充当您与他们之间的联络人,并希望您能够正常工作。我只是担心他对您的团队的职责没有足够的控制权,好像事情开始变得不对劲,您最终会陷入不高兴的状态,直到管理层确实让他(或更糟的是,其他人)负责您。


1

自我管理的团队并非与众不同。他们通常需要明确的绩效指标来创建内部产生的责任。您的组织可以拥有此功能,但是如果您不能基于节省的成本来产生额外的人员,那么这也许行不通。另一个挑战是您的新老板听起来不像一个会奖励人才的人。

无论好坏,听起来您都需要一名球员教练。既可以管理团队又可以在团队中发挥作用的人。在4人一组中,这当然是可行的。在8或10的小组中,事实并非如此。面临的挑战是确定谁应该担任这位球员教练。默认值是使其成为最佳程序员,但是您是否一定要将它们与admin捆绑在一起?除了说高绩效的组织找到不强迫他们所有最好的技术人员成为经理的方法外,没有其他的决定。


-1为第一段。第二段为+1。
Jim G.

1

经理往往是组织和开发团队之间缺少的环节。

  • 他们确保您的工作是相关的并满足组织的需求。
  • 回答高层管理人员
  • 管理时间表,以便项目按时进行
  • 确保照顾好您对项目的需求。

责任较小的较小团队可以在没有指定经理的情况下运作。但是随着责任的增加,您将需要有人来管理所有这些风险和问题。

根据您的设置,即使没有被指定为团队成员,团队中的某人也将最终担任经理角色。通常,分散的职责不能很好地发挥作用。在很大程度上取决于它的分布方式和所涉及的人员类型。


1

拥有经理的好处取决于他们在您的团队中所扮演的角色。因此,这实际上取决于团队所需的角色:

  • 您是否需要有权解决团队成员之间的纠纷并使团队专注于按时交付高质量工作的人员?
  • 还是您需要某人提供最佳答案中提到的空气覆盖物?管理时间表,确定优先级,干预高层管理人员与团队之间,等等。

那么,您需要吗?您提到的职位上的人员可以为您这样做吗?如果是这样,那很好。如果没有,您可能会走向灾难。

资料来源:小组项目以及托管和非托管团队的个人经验。


0

我认为Flat团队始终是个问题,除非您让一个人来领导一群相同/相似等级的工程师。

如罗宾斯(S.Robins)所述,如果所有团队成员都受过良好的训练,那么在这里聘请经理可能是不必要的瓶颈。我工作过的一些小型公司存在人力限制(由于预算限制等原因),因此,他们倾向于将几名新生/大三学生组成一个扁平的团队,并由一个人管理。 。

如果“高级1级”经理无法管理人员,这将适得其反。刚开始职业生涯的新生/大三学生将具有极大的竞争能力-尝试尽早在团队中稳固地建立自己的位置,并且有时需要有人控制住人,以便他们的竞争力不会损害合作。

拥有一支扁平团队的问题在于,随着项目规模的扩大,您将不可避免地不得不让一个或两个家伙做更多的事情,承担更多的责任。在这一点上,您将必须创建一个定义明确的层次结构,并且一定要安排一个适当的Manager来接听电话和管理人员,因为在同一组中进行升职时,总是会有很多不高兴的事情。

在许多较小的Cos中,我看到的另一个坏主意是只任命最高级的人担任经理。或者是团队中技术最熟练的人被提升为经理的角色。我从未见过这样的解决方案。

我认为,如果项目具有良好的扩展性,那么任何超过4人的团队肯定都需要在他们的时间表中尽早地需要一位经理。理想情况下,具有人事管理技能的技术人员应在良好的沟通中负责某些决策。


0

我在一家采用敏捷实践(尤其是Scrum)的公司工作。它在各个方面都很有效:开发团队和执行管理层都很高兴。他们得到了他们想要的。

  1. 所有工程师均向工程经理报告。工程经理是非常技术和职能的角色,需要使该部门获得更多业务。该角色等效于产品负责人。
  2. 项目经理是一个独立的角色,类似于Scrum管理员,通常是固定时间的承包商(12个月至18个月,不延长合同期限)
  3. 项目经理-Scrum Master-完全负责非功能性和非工程性活动

当开发团队专注于工程方面,而业务分析师/产品所有者专注于业务方面时,这非常出色。项目经理负责任务跟踪,报告和其他典型的Scrum Master职责。

中层管理是外包的,没有从中层管理到高层管理人员的成长之路。增长机会来自开发团队或业务分析师角色,再到工程经理,而不是主管角色。

我们公司坚信,中层管理不是公司的主要增值,最好留给外部咨询公司。


0

值得注意的一点是,无论他们是否指定某人为经理,你们中的一个很可能会成为“事实上的”经理,可能是经验/时间最多的人。

特别是因为这是作为削减成本的措施(即不付钱给经理,而是聘请开发人员)而不是通过重组来思考的,因此,更高层的管理层似乎很可能会继续工作,以前,只与他们认识的人打交道(即服务时间最长)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.