2016-03-01 17:46:02 +0000 2016-03-01 17:46:02 +0000
257
257

提供商 "作弊",但我不想透露我是怎么发现的

我是一名经验丰富的IT开发人员,最近转行做IT咨询。我目前的项目涉及到我的客户租用的一个服务器场的软件性能太可怕了,

我的客户最近花了一大笔钱,对这个租用的服务器场做了一个外部基准测试,结果还不错。今天我发现,服务器场的主机知道了测试的确切时间,他们通过临时增加服务器场的额外资源来Volkswagened测试(即在测试过程中改变设置,以产生比实际使用中更有利的结果)。

结果发现,我的客户实际上把测试时间公布给了主机。测试是在晚上进行的,以免干扰到实时用户,但主机需要关闭一些夜间的自动任务—-否则结果会因为长时间的同步而改变,而这些同步在白天是不会发生的。

我应该敲响警钟,让我的客户知道,因为我对他们负责。不幸的是,我通过服务器主机雇佣的一个初级开发人员获得了这个信息,他对这个问题喋喋不休(可能不知道这些额外的资源应该是个秘密)。由于他在过去几周里一直很有帮助–事实上,他是我在这个项目中最值得信赖和最有价值的联系人–我不想让他失去工作。这对我实现目标有很大的帮助–这就带来了两难的问题。

我愿意接受任何建议,包括道德和实际的建议。

答案 (8)

259
259
259
2016-03-01 21:25:20 +0000

你应该做的是独立验证这个初级开发者告诉你的东西。其一,你其实不知道他说的话是否准确。有可能在某个地方有误传,他可能是误解了,也许他没有从技术的角度了解到全部的情况,传递了不完整的数据,等等。俗话说,"_信任,但要核实。"

还有一个原因,核实你被告知的事情可以保护你的消息来源。没有人需要知道他告诉你什么,因为你可以举着数据作为证据,完全省略了你被人通风报信的事实。你还没有提供足够的技术细节来建议你如何去验证,但听起来,对于一个正派的系统管理员或系统工程师来说,这样做并不难。但核实自己,这样即使有消息来源也是题外话,是比较好的办法。

60
60
60
2016-03-01 18:13:30 +0000

虽然在这种情况下,你对初级程序员的关心是令人钦佩的,但请记住,在这种情况下,你的法律义务是对你的客户。话虽如此…..

我的客户不会提起诉讼,但肯定会甩掉那个供应商。我们是他们最重要的客户之一。

既然你的客户会甩掉供应商,既然供应商不诚实,你为什么要做任何事情,但建议甩掉供应商呢?

可以说,你不需要透露你的来源。事实上,你可以告诉你的客户,既然供应商的业绩没有达到他们的要求,那么是时候离开了。如果被逼无奈,你可以说,既然服务商提前知道了测试的事情,你可以说,既然你怀疑他们为这个测试分配了额外的资源,而不是正常提供的。

如果你_真的想保护初级程序员,并且有一个他可以填补的名额,你可以自己雇佣他,或者你的客户可以雇佣他。这样一来,他肯定可以避免被服务商炒掉。另外,万一服务商试图以违约为由起诉你的客户,你肯定会让他作为证人。

52
52
52
2016-03-01 18:38:16 +0000

对这个

的一点是,据你所知,供应商在测试期间给农场增加了服务器。如果你的客户为基准支付了巨额的费用,那么你应该希望被雇佣的公司会把这个费用拿出来。

这个基准是否超出了农场的理论输出?

你能不能运行一些独立的基准,让你的基准受到质疑?

供应商没有一些基本性能指标的实时监控,比如CPU、IO、带宽……….?你应该在披露的基准测试中运行一些这些指标。我知道事后诸葛亮是20/20,但仍然。

你不是在找问题。你知道问题的所在,现在你只需要证明一下。你的消息来源通过揭露问题,为你提供了一个很好的服务。你能在不暴露源头的情况下证明问题吗

也许你只需要:

这些基准与应用的性能不匹配。要么是应用的负载比我预期的大,要么是服务器的性能没有达到这个性能,要么就是我的问题。这里有一些需要探索的项目….. 在要探索的项目列表中,有一个惊喜的基准。

揪出提供信息的人是个难题。他很可能会被开除。而且很可能会被炒鱿鱼,而且很可能会被炒得很惨,很难找到另一份工作。我会想尽办法在不暴露这个人的情况下,找到一个曝光的方法。就我个人而言,我不会出他们。没有独立的验证,反正也不可能站不住脚。

22
22
22
2016-03-01 21:30:22 +0000

如果现实生活中的性能与测试时的性能不匹配(而且你有数据证明),解决的办法应该很简单:通知服务商,如果性能没有改善,就取消合同。

你不用说你是怎么发现测试是被操纵的,只需要说日常性能与测试基准(你甚至可以 “无辜 "地问:是不是基准之后的一些硬件/软件配置发生了变化?但你的律师可能有兴趣和你支付昂贵的基准测试费用的公司谈一谈–是和服务商一样的,还是不同的?

关于你的泄密者。不要透露他的名字,那就等于无缘无故地把他扔到公车下,对你自己的公司没有任何好处。但你可能会想保持联系,并有可能还他一个人情:警告他需要在事故发生前(当取消合同是公开的信息,而不是之前)找另一份工作。我理解你不能给他提供一个很好的参考资料的窘境(或许你可以—-说他很有帮助,会多花点心思与客户沟通)。

最简单的还人情方式是带他去喝咖啡的时候(在两家公司的办公场所之外,告诉他**的会面严格不在记录范围内)。可以是在项目取消后不久,而不是之前,向他解释一下他被卷入了什么样的企业政治*,以及有什么复杂的道德困境(对你们两个人来说)。这样,他下次就能更好地应对。他似乎是一个诚实和乐于助人的人,可能还不知道生活的复杂性–而你有一个很好的机会来帮助他,帮助他吸取教训,而不损害他的职业生涯。)

14
14
14
2016-03-02 10:06:20 +0000

其他的答案真的很好,但我没有看到任何一个答案中明确指出这一点 -

为什么你的建议不只是让他们的外部基准测试供应商进行另一个测试,因为他们的测试方法有缺陷。如果你知道信息已经公布,服务已经被关闭,我相信你可以找到NIST或ISO标准,说明这类测试的适当程序。你甚至可以向ISACA寻求最佳实践信息。

你知道什么并不重要,只是通过公布时间和被改变的环境,这不是一个有效的测试。

听起来像是基准标记公司和供应商都参与了创造了一种情况造成不准确的结果,而且是IMO至少是疏忽,最多就是串通**。

2
2
2
2016-03-02 11:53:23 +0000

向客户披露一切,告诉他你所掌握的信息。你有专业的义务给他提供最好的服务,你对数据中心的初级开发人员没有专业的义务。你的客户从字面上看,你的客户是花钱让你去发现这样的事情。

在你披露了你所获得的信息后(你的客户是花钱给你的)。讨论核实初级开发人员所说的内容。

如果查出来了–肯定是和其他供应商合作。作为一个专业人士,你有义务为客户提供最好的服务。

2
2
2
2016-03-03 22:09:36 +0000

实际的应用程序有 “可怕的软件性能",而在测试中 "结果很好 "的事实应该是任何人都会想到的,可以作为讨论的出发点,或者质疑测试。你可以/应该在测试场中与客户就这一差异提出怀疑,特别是考虑到你是 "对他们负责"。

此外,手头的原始问题仍未解决,有待于进一步分析,无论是否涉及到高薪的外部公司。很多技术都有工具来监控生产性能,但并没有真正影响到它;你可能想用这个来量化 "可怕"。补充一下HopelessN00b的回复,这将是另一种验证方式。

0
0
0
2017-07-10 18:43:30 +0000

你的消息来源是 “服务器主机雇用的初级开发人员,他对此事喋喋不休"。换句话说,就你而言,你获得这些信息绝对没有做错什么。

你的责任不在于ISP,也不在于ISP的初级开发者,而在于你的客户。所以我认为你应该通知你的客户。你可能会提到你有什么样的消息来源,但没有提到实际的来源。会有什么后果。你的客户会停止使用一个ISP作弊的ISP,ISP会失去他们作弊的客户,而初级开发者希望不要再提这个事情,这样会有危险。