开发人员与客户打交道的最佳实践

时间:2008-11-15 10:26:25

标签: language-agnostic

就个人而言,我发现当优秀的开发人员与客户打交道时,他们往往会陷入售后支持流程,而且这个过程很难逆转,因此只想听听开发人员采用的各种策略。保持健康,有用的关系,使客户在正确的时间使用合适的人。

你也是,如果是这样,你如何与客户打交道?

11 个答案:

答案 0 :(得分:6)

只是提示:写下客户对你说的每一件事。

答案 1 :(得分:6)

我所处理的大多数项目都是按时间和材料合同完成的,这意味着:我们给客户初步估算项目需要多长时间,但是实际工作时间的账单,无论是高估还是低于估算(我不知道为什么客户会同意这一点,但他们确实如此)。一旦项目“完成”并投入生产,我们就时间和材料合同建立了服务扩展,创建了一小部分计费小时以支持售后支持。当客户意识到他们要与我们进行所有联系时,他们倾向于将这种联系保持在最低限度。

答案 2 :(得分:5)

另一点:我发现最好尽可能通过电子邮件与客户沟通。这是一种更有效的信息传递方式(假设每个参与者都可以写),并且会留下客户告诉你的永久记录。

答案 3 :(得分:4)

这也是我们感受到的痛苦。一旦您帮助客户,客户就可以在以后直接联系开发人员并请求支持。而且,由于我们通常的目标是取悦,并且在我们为他们构建的应用程序出现问题时可能会有点负责,我们经常会给客户提供快速帮助。

我认为开发人员应该与客户分开,但这要求公司有一个支持/整合部门,可以解决问题。他们反过来应该可以自由地联系开发人员,除非它是一个拥有主流应用程序的大公司,其中问题可以追溯到源代码问题的风险较小。

但是让我告诉你,我明白这有多难。我一直在我们的咨询公司工作多年,从支持开始,现在我主要管理其他顾问和开发。有很多客户(比如数百人)认为他们与我有个人关系,并且假设他们可以在多年和几年后直接给我打电话。

我的建议是确保您拥有一个良好的咨询顾问和支持工作者网络,他们可以为您提供帮助,如果他们无法理解,请让他们与您联系。

答案 4 :(得分:4)

我会与所说的相反。

客户是您的头号信息来源

  • 避免中介(人力和技术)
  • 保持跟踪(不要将其用于客户,即使它可能发生,但因为他付钱得到他想要的东西)
  • 在你的倡议下进行沟通 - 定期但很短时间。
  • 如果提出好问题,可以清除任何疑问。这家伙不想要那个?摆脱它(即使你更喜欢它)。那家伙想要那个?为什么不,在合同上增加时间和金钱。

你必须培养你的沟通技巧

之前所说的大部分内容基本上与程序员通常沟通能力差的事实有关。所以他们陷入了典型的陷阱:

  • 客户给他们不好的信息
  • 他们浪费时间
  • 他们感到压力

最后,没有人幸福。

但是,通过训练有素的沟通技巧,您将学会指导何时,多长时间以及您的聊天内容,以及:

  • 让任何交易快速而且好看
  • 给客户充满信心
  • 了解客户想要的东西(不是他想要的东西)
  • 确保对答案感到满意(即使它不适合你)

每个人都会更快乐:客户会感觉良好让您安心工作,同时您将获得继续工作的信息。最终,生成的软件会更好。

想与客户交谈很无聊吗?他们也这么认为。文书工作也很无聊,但你必须这样做,所以做得好而不是寻找借口。

答案 5 :(得分:2)

我刚刚完成了我的教育并且正在完成我的第一份工作,但这就是我们的工作:

我通过同一家公司的第三方与“更高级别”进行沟通。第三方是熟悉软件应具备要求的人,但不是软件工程专家。当我询问规格或向他们提出建议时,他会将他们答案的精髓提炼给我。

我认为这种处理方式限制了客户在更改规格,扩展规格等方面可以逃脱的欺凌行为。

对我来说,它特别有用,因为我只有21岁,人们可能很难相信我能完成任务。

答案 6 :(得分:2)

最佳做法:

请记住,客户是签署支票的人。

用户为客户工作。

将任何用户请求提交给客户批准。

始终与客户打交道,因为他们知道您所做的一切都会花费他们的钱。

如果客户想要在销售支持后愿意支付,那么请高兴地给他。

哦,MusiGenesis说的是什么!

答案 7 :(得分:2)

最好的方法是永远不要直接向客户提供。让他们首先通过技术支持(如果存在)。我们采用这种方法,效果很好。软件开发人员是最后的选择 - 因为支持的东西根本无法做到/不知道如何修复 - 例如DBA不知道服务器是实例化的。但它会减少“它没有连接到互联网”类型的电话。

您还可以强制所有支持请求通过电子邮件/秘书。那时,您可以看出哪些是关键的,哪些可以通过一个关于如何解决问题的简单“教程”来解决。

如上所述 - 在与客户的交流中记录所有事项。这样做可以防止'他说她说的'好的'客户可能陷入的交易。

然后再次 - 如果您遇到大量客户支持问题,您应该查看原因 - 无论是培训问题,还是软件是否合法错误。

答案 8 :(得分:2)

在我们公司,每个开发人员也是推销员。如果我跨过客户的大门,那么我就能够开展更多业务。

  1. 他们了解我,我有可靠性,因为我已经交付给他们了。
  2. 我了解他们的业务
  3. 我用我的知识询问有关其业务中其他部分的问题
  4. 当我和他们交谈的时候,我就把他们挂钩给他们,当然是他们最好的利益。
  5. 我明确指出,我们不是一个“热门和奔跑”公司,但真正支持他们的业务。
  6. 也许这不是所有公司的做法,但我认为你应该利用你已经在客户公司中占有一席之地的人来真正与他们合作,创造更多业务,让客户更紧密地与你联系。

答案 9 :(得分:1)

我个人认为开发者不应该与客户互动。这就是你有Q / A团队的原因。他们获得需求,将其交给开发人员,讨论任何问题,安排开发进度会议。如果开发人员有疑问,请前往负责要求和文档的Q / A人员。开发人员是工程师,而不是推销员或谈判者。他们应该获得环境来开发稳定的工作代码而不会被客户电话分心。无论公司规模如何,这都是有多少公司与客户打交道。最后,您按时完成项目的机会高于客户打电话并决定更改要求或请求功能时的机会。这可能意味着您必须返回几次迭代并更改可能会破坏在此之后完成的所有内容。

答案 10 :(得分:0)

很多很多沟通。通过在办公桌前停车(如果您在同一地点)或通过电话保持联系,可以轻松地与客户办理登机手续。通信越个性化(面对面打电话,打电话打电子邮件等),你的关系就会越强。

我使用的另一个良好的冲突解决方法是在单个共享位置保留尽可能多的信息。我为此目的使用了一个错误/功能数据库(JIRA),一个wiki,甚至一个网络共享驱动器,但重点是任何一方都没有独占锁定/写入权限。可以与您的客户一起进行更新,并且可以清楚地公开记录您系​​统的更改历史记录。