我的部门出现了一次哲学讨论,我想听听她的意见。我们是一个6人的开发部,在一个60人的IT商店里。所有其他部门都在快速增长,我们的部门几年来一直保持着同样的规模(而且没有完全预订到这个规模)。
我的经理和老派的大型机家伙,认为开发者永远不应该有任何客户联系。所有与客户端的交互都应该通过项目管理层来缓解。他断言,这使得编码人员能够集中精力进行编码,并保护企业与客户的关系,使其免受的自闭症谱系倾向的影响。(我的话,不是他的。)
他的老板,这家公司的老板今天早上告诉他,公司里的每一个人都需要把自己看作是销售部的延伸,需要时刻倾听,寻找更好的销售机会。为此,他认为客户应该或多或少完全可以直接接触开发人员,这在一定程度上是为了让开发者有机会了解销售机会。
我自己就在中间。我认为在某种程度上保护开发者不受客户的影响是很好的,但在实践中,这永远不会是完全的。是的,公司的每一份工作都包括销售,但这并不一定意味着每个人都有同样的机会。
编辑:我们不是一个敏捷的商店。我们中的一些人(咳嗽)想要朝这个方向走,但现在假设这是一家传统的固定标书店。
EDIT2:孤独症的笑话一点也不好笑。明白了。完全有可能孤独症笑话从来都不是。也就是说,有些开发商有能力很好地代表自己和他们的雇主,有些开发商(目前)没有这种能力。我的经理真正关心的是,如果所有的开发人员在结构上都有权成为公司的代表,公司将如何被代表。
阅读你的回应也越来越清楚,这里真正的推拉是在瀑布和敏捷之间。
发布于 2011-08-17 19:08:35
就我个人而言,我不会在没有机会与客户直接接触的任何地方工作。当您必须通过多层PMs和BAs来解决需求时,尝试解决一个问题是痛苦的,而这个信息永远不会被清晰地传达出来。我希望通过这种途径来改进产品,这样它就能真实地反映客户的需求,而不是那些不知道该问什么问题的人对这些需求的解释。
这可能与我的回答相关,我做的是数据库ETL工作,通常与客户的It人员进行5-10分钟的交谈可以解决进出口方面的长期问题。有时我们的IT人员需要和他们的IT人员交谈。如果这是一个增量导入或两个方向的导入,则尤其如此。我必须了解他们的数据库结构和需求,以及我的数据库的需求。直言不讳是获得这些信息的唯一途径。
但是,我不希望客户经常收到我的电子邮件和电话,因为他们中的一些人会直接打电话给他们。我只需要和他们谈谈,当有一个问题,我们不能解决任何其他方式。而且你必须能够设定界限,这样他们就不会试图利用这些机会从你那里得到他们不付钱的工作。我总是将超出我们应该讨论的问题范围之外的任何新请求提交给销售方。
即使是直接与客户交谈,我也很少(如果有的话)看到一个额外的销售机会,我的大脑就是不这样工作。
发布于 2011-08-17 19:22:48
我认为应该有几个与客户建立联系的地点。在传统的项目管理中,这个人就是项目经理。在Scrum中,您可以称这个人为产品负责人。在极端编程中,它是客户代表。请注意,在Scrum和XP中,没有任何东西说这个人必须来自客户的组织,而是只在做出决定的时候得到客户的声音。
对我来说,最大的担忧是通信路径数。项目团队中的通信路径数被定义为(N×(N1))/2,其中N是项目团队中的人数。如果团队中的每个人都可以与客户或客户进行通信,那么N会增加客户组织中的联系人数量,大大增加沟通路径。几乎不可能知道,谁知道什么信息,谁说什么,什么时候,并保持所有的沟通组织。
对于您的开发团队和您的客户之间的自由交流,我的第二大关切是跟踪谁在说什么,关于项目的当前健康状况和状态,按计划和预算进行估计,等等。拥有一个主要的接触点可以确保开发组织之外的每个人都确切地知道在适当的粒度级别上发生了什么,并确保团队的每个成员都有完成分配给他们的任务所需的一切。
我的经理和老派的大型机家伙,认为开发者永远不应该有任何客户联系。所有与客户端的交互都应该通过项目管理层来缓解。他断言,这使得编码人员能够集中精力进行编码,并保护企业与客户的关系,使其免受的自闭症谱系倾向的影响。
大多数情况下,我同意你的经理的意见。您的开发人员在那里进行开发,您的测试人员在那里进行测试。这是否意味着您的开发人员不能成为客户联系人、产品负责人或客户代表?绝对不是。事实上,通过参与与客户的交互,拥有具有技术背景的人员可能会有所帮助,特别是在需求工程、可行性讨论和调度方面(毕竟,工程师在调度工程任务方面是最好的)。
断言您的客户需要对您的开发人员进行保护是错误的,甚至可能是冒犯。您的工程师应该具备与客户(以及项目的所有涉众)互动所需的知识和技能。只是他们不应该都被要求去做。
他的老板,这家公司的老板今天早上告诉他,公司里的每一个人都需要把自己看作是销售部的延伸,需要时刻倾听,寻找更好的销售机会。为此,他认为客户应该或多或少完全可以直接接触开发人员,这在一定程度上是为了让开发者有机会了解销售机会。
老板完全错了。没有销售或营销教育或培训的人不应该做那些部门的工作。工程师们可能需要与销售和营销互动吗?绝对是的。但销售软件不是他们的工作,而是他们的工作,以建立符合利益相关者要求的软件。如果您的所有开发人员都在忙于销售和营销软件,那么谁在设计、构建和测试软件呢?
发布于 2011-08-17 19:09:31
我可以在一定程度上同意没有完全保护客户,但开发商不应该兼职作为该死的销售人员。
开发人员就是这样,有人如何开发最终产品.与客户会面几次是件好事,因为它允许双方解决开发特定项目时可能出现的任何潜在问题。客户端将能够直接表达他们想要的东西,而开发人员可以在一个时间框架内表达可能的内容。
这会出错的地方是不断的接触。假设你的客户是那种每隔一天改变主意的人。现在想象一下,客户每隔一天给开发团队发一封电子邮件,让他们改变计划,以及这将如何影响产品的开发。强迫客户通过更多的“适当渠道”来讨论产品的变更,让开发人员能够专注于完成产品,并且只有在真正需要的情况下才能改变事情。
https://softwareengineering.stackexchange.com/questions/101836
复制相似问题