Der Anbieter "betrügt", aber ich möchte nicht offenlegen, wie ich das herausgefunden habe

Ich bin ein erfahrener IT-Entwickler, der kürzlich in die IT-Beratung gewechselt ist. Mein aktuelles Projekt beinhaltet die Bekämpfung der schrecklichen Softwareleistung auf einer Serverfarm, die mein Kunde gemietet hat.

Mein Kunde hat kürzlich einen riesigen Betrag für einen externen Benchmark dieser gemieteten Serverfarm bezahlt, und die Ergebnisse waren in Ordnung. Heute habe ich herausgefunden, dass der Host der Serverfarm den genauen Zeitpunkt der Tests kannte, und sie haben den Test mit Volkswagen durchgeführt (dh das Setup während des Tests geändert, um günstigere Ergebnisse als bei der Verwendung in der realen Welt zu erzielen), indem sie vorübergehend zusätzliche Ressourcen hinzugefügt haben Serverfarm.

Wie sich herausstellt, hat mein Kunde die Testzeiten tatsächlich an den Host veröffentlicht. Die Tests wurden nachts durchgeführt, um Live-Benutzer nicht zu stören, aber der Host musste einige automatisierte Nachtaufgaben ausschalten – andernfalls wären die Ergebnisse durch lang andauernde Synchronisierungen, die tagsüber nicht stattfinden, verändert worden.

Ich sollte die Alarmglocke läuten und meinen Kunden informieren, da ich für ihn verantwortlich bin. Leider habe ich diese Informationen durch einen Junior-Entwickler erhalten, der beim Server-Host angestellt ist und darüber geredet hat (wahrscheinlich ohne zu wissen, dass diese zusätzlichen Ressourcen geheim gehalten werden sollten). Da er in den vergangenen Wochen sehr hilfreich war – eigentlich mein vertrauenswürdigster und wertvollster Ansprechpartner im Projekt – möchte ich ihn nicht seinen Job kosten.

Auch wenn er von der Geheimhaltung nichts wusste, handelte er mit seinem Anruf etwas gegen einen Dauerauftrag, das Ticketsystem zu nutzen. Das hat mir sehr geholfen, meine Ziele zu erreichen – und das bringt uns ins Dilemma.

Ich bin offen für alle Vorschläge, sowohl ethische als auch pragmatische.

Wenn es darauf ankommt, würde mein Mandant keine Klage einreichen, aber diesen Anbieter sicherlich fallen lassen, und mein Mandant ist einer ihrer wichtigsten Kunden.

Können Sie den Test nicht erneut durchführen, ohne den Anbieter zu informieren? Dann hast du Daten, keine Ableitung.
Kommentare sind nicht für längere Diskussionen gedacht; Diese Konversation wurde in den Chat verschoben .
Irgendeine Chance auf Klarheit darüber, was "Hinzufügen zusätzlicher Ressourcen" bedeutet? Welche "Ressourcen"?
Gibt es Metriken, die Sie aus dem Test entnehmen können, die dies unabhängig von Ihrem Kontakt aufzeigen würden? Zeigt der Test, wie viele Knoten ausgeführt wurden, wie viel RAM und MIPS verfügbar waren usw.?
@ user2284570 Was sehr wahrscheinlich Abrechnungsbetrug ist und was sehr wahrscheinlich nicht krimineller Betrug bei einem Benchmark-Test ist, sind sehr unterschiedliche Dinge.
@HopelessN00b Dies ist ein automatischer Kommentar, was bedeutet, dass ein Mod meine Flagge validiert hat.
@user2284570 Nein, es ist ein automatischer Kommentar, der angibt, dass Sie abgestimmt oder zum Schließen als Duplikat markiert wurden. Es zeigt nicht an, dass jemand anderes damit einverstanden war ... und da ich genügend Repräsentanten habe, um enge Abstimmungen zu sehen, kann ich bestätigen, dass es zu dieser Frage keine tatsächlichen engen Abstimmungen gibt, und beide Personen, die diese Flagge bisher überprüft haben, waren anderer Meinung damit.

Antworten (8)

Was Sie tun sollten, ist unabhängig zu überprüfen, was Ihnen dieser Junior-Entwickler gesagt hat. Zum einen wissen Sie nicht wirklich, dass das, was er gesagt hat, richtig ist. Es könnte irgendwo ein Missverständnis gegeben haben, er könnte sich missverstanden haben, vielleicht hat er technisch nicht das ganze Bild und gibt unvollständige Daten weiter usw. Wie heißt es so schön: „ Vertraue, aber verifiziere “ .

Aus einem weiteren Grund schützt die Überprüfung dessen, was Ihnen gesagt wurde, Ihre Quelle. Niemand muss wissen, dass er Ihnen etwas erzählt hat, denn Sie können die Daten als Beweis für das, was passiert ist, hochhalten und die Tatsache, dass Sie von irgendjemandem einen Hinweis erhalten haben, völlig auslassen. Sie haben nicht genügend technische Details angegeben, um Ratschläge zu geben, wie Sie dies überprüfen könnten, aber es klingt nicht so, als wäre es für einen anständigen Systemadministrator oder Systemingenieur überhaupt schwierig, dies zu tun.

Natürlich gibt es immer die Möglichkeit, einfach zu sagen, was Ihnen Ihre Quelle gesagt hat, und zu sagen, dass Sie Ihre Quelle lieber nicht nennen möchten/können/wollen, um Vergeltungsmaßnahmen zu vermeiden. Aber sich selbst zu verifizieren, so dass sogar eine Quelle nebensächlich ist, ist der bessere Ansatz.

@GrzegorzOledzki Ja, keineswegs eine neue Idee, aber im Fall des OP hat es den Vorteil, dass es tatsächlich legal ist, und nicht eine Kloake aus Meineid, illegalem Abhören und grober Verfassungswidrigkeit, die die amerikanischen Gründerväter in ihren Gräbern kreisen lässt. :/
In Anbetracht der allgemein schlechten Behandlung von Hinweisgebern könnte die Aussage, dass Sie nur eine Quelle haben, Grund genug für andere sein, nachzuforschen und herauszufinden, wer Ihre Quelle ist. Am besten gar nicht erwähnen.
Der erste Absatz ist absolut der richtige Weg.

Obwohl Ihre Sorge um den Junior-Programmierer in diesem Fall bewundernswert ist, denken Sie bitte daran, dass dies eine Situation ist, in der Ihre rechtliche Verpflichtung Ihrem Kunden gegenüber besteht. Das gesagt ...

Mein Kunde würde keine Klage einreichen, aber diesen Anbieter sicherlich fallen lassen. Wir sind einer ihrer wichtigsten Kunden.

Da Ihr Kunde den Anbieter verlassen würde und da der Anbieter unehrlich ist, warum würden Sie etwas anderes tun, als zu empfehlen, den Anbieter zu verlassen?

Sie müssen Ihre Quelle wohl nicht preisgeben. Tatsächlich könnten Sie Ihrem Kunden einfach sagen, dass es an der Zeit ist, wegzugehen, da die Leistung des Anbieters nicht dem entspricht, wofür er bezahlt. Wenn Sie darauf drängen, können Sie sagen, da der Dienstanbieter im Voraus von den Tests wusste, dass Sie vermuten, dass er zusätzliche Ressourcen für den Test bereitgestellt hat, die er normalerweise nicht bereitstellt.

Wenn Sie den Junior-Programmierer wirklich schützen wollen und einen Platz haben, den er ausfüllen könnte, könnten Sie ihn selbst einstellen, oder Ihr Kunde könnte ihn einstellen. So entgeht er sicher einer Kündigung durch den Dienstleister. Auch für den Fall, dass der Dienstleister versucht, Ihren Kunden wegen Vertragsbruch zu verklagen, haben Sie ihn sicher als Zeugen dabei.

Ich empfehle, den letzten Absatz zu streichen. Trotz des Haftungsausschlusses handelt es sich sicherlich um eine Rechtsberatung, und es scheint nicht praktikabel zu sein, basierend auf den Informationen, die OP gegeben hat. Ich denke, Ihre Antwort ist ohne sie in Ordnung.
Der Junior ist dem Gericht unter Androhung des Meineids gesetzlich verpflichtet, die Wahrheit zu sagen, die ganze Wahrheit und nichts als die Wahrheit. Wenn Sie Rechtsberatung geben wollen, seien Sie genau, ansonsten lassen Sie sie weg.
@EJP: Selbst mit der gesetzlichen Verpflichtung kommt es jeden Tag zu Meineid. Wenn dem Junior-Programmierer gesagt wird, er solle lügen oder riskieren, seinen Job zu verlieren, wissen Sie nicht, welchen Weg er oder sie gehen wird.
Ich mag diese Antwort, weil sie aktionsbasiert ist. Die Aktion besteht darin, dass Ihr Client den Anbieter ausgibt. Sie müssen Ihrem Kunden also nur die Situation erklären.
@user1717828: Okay, der letzte Absatz wurde überarbeitet. Besser?
Die Empfehlung, wegzugehen, nachdem ein Test keine Probleme gezeigt hat, funktioniert möglicherweise nicht. Der Kunde mag (zu Recht) fragen, warum, wenn der Test (scheinbar) ergeben hat, dass es kein Problem auf der Seite des Anbieters gibt. Es scheint also besser, zuerst Beweise zu sammeln (Antwort von HopelessN00b).

Ein bisschen dazu

Soweit Sie wissen, hat der Anbieter während des Tests Server zur Farm hinzugefügt. Wenn Ihr Kunde einen großen Betrag für den Benchmark bezahlt hat, hätten Sie hoffen sollen, dass das Unternehmen, das mit der Durchführung des Benchmarks beauftragt wurde, dies aufgegriffen hätte.

Übersteigt die Benchmark-Flat die theoretische Leistung des Betriebes? Können Sie zeigen, dass die Ergebnisse einfach nicht realistisch sind?

Können Sie irgendwie einige unabhängige Benchmarks durchführen, die den manipulierten Benchmark in Frage stellen?

Verfügt der Anbieter nicht über eine Echtzeitüberwachung grundlegender Leistungsmetriken wie CPU, IO, Bandbreite ...? Sie hätten einige davon während des offengelegten Benchmarks ausführen sollen. Ich weiß, im Nachhinein ist 20/20, aber immer noch.

Sie suchen nicht nach dem Problem. Sie kennen das Problem und müssen es jetzt nur noch beweisen. Ihre Quelle hat Ihnen einen großen Dienst erwiesen, indem sie das Problem aufgedeckt hat. Können Sie das Problem beweisen, ohne die Quelle preiszugeben?

Vielleicht einfach mit:

Diese Benchmarks stimmen einfach nicht mit der Leistung der Anwendung überein. Entweder bringt die App eine größere Last als erwartet, die Server bringen diese Leistung nicht, oder mir fehlt einfach etwas. Hier sind Gegenstände, die es zu erkunden gilt ... Und in der Liste der zu erkundenden Gegenstände gibt es einen überraschenden Benchmark.

Es ist schwierig, die Person zu outen, die die Informationen bereitgestellt hat. Er würde wahrscheinlich gefeuert werden. Und wahrscheinlich auf sehr schlechte Weise gefeuert, weil es schwer ist, einen anderen Job zu finden. Ich würde mich bemühen, einen Weg zu finden, dies aufzudecken, ohne die Person bloßzustellen. Ich persönlich würde sie nicht outen. Ohne eine unabhängige Überprüfung würde es wahrscheinlich sowieso nicht halten.

Wenn die Leistung im wirklichen Leben nicht mit der Leistung während des Tests übereinstimmt (und Sie die Daten haben, um dies zu beweisen), sollte die Lösung einfach sein: Benachrichtigen Sie den Anbieter, und wenn sich die Leistung nicht verbessert, kündigen Sie den Vertrag.

Sie müssen nicht sagen, wie Sie festgestellt haben, dass der Test manipuliert wurde, nur dass die tägliche Leistung nicht mit dem Testbenchmark übereinstimmt (Sie können sogar "unschuldig" fragen: Hat sich seit dem Benchmark etwas an der Hardware-/Softwarekonfiguration geändert?). Aber Ihre Anwälte könnten daran interessiert sein, mit dem Unternehmen zu sprechen, das Sie für den teuren Benchmark bezahlt haben – war es derselbe wie der Dienstleister oder ein anderer?

In Bezug auf Ihren Leaker: Geben Sie seinen Namen nicht preis, das würde ihn ohne triftigen Grund unter einen Bus werfen und Ihrem eigenen Unternehmen keinen Nutzen bringen. Aber vielleicht möchten Sie in Kontakt bleiben und sich möglicherweise revanchieren: Warnen Sie ihn vor dem Absturz (wenn die Vertragskündigung öffentlich bekannt ist, nicht vorher) vor der Notwendigkeit, sich einen anderen Job zu suchen. Ich verstehe das Dilemma, dass Sie ihm keine gute Referenz geben können (oder vielleicht können Sie - sagen, dass er hilfreich war und die Extrameile gehen würde, um mit dem Kunden zu kommunizieren).

Der einfachste Weg, sich für den Gefallen zu revanchieren, wäre , ihn irgendwann auf einen Kaffee einzuladen (außerhalb der Räumlichkeiten beider Unternehmen und ihm zu sagen, dass das Treffen streng vertraulich ist ). Es könnte kurz nach der Absage des Projekts öffentlich geworden sein, nicht vorher, und ihm erklären, in welche Art von Unternehmenspolitik er sich verstrickt hat und in welches komplizierte ethische Dilemma es (für Sie beide) frei zu nehmen ist. So kann er beim nächsten Mal besser damit umgehen. Er scheint ein ehrlicher und hilfsbereiter Typ zu sein, der möglicherweise noch keine Ahnung von den Feinheiten des Lebens hat – und Sie haben eine ausgezeichnete Chance, ihm dabei zu helfen, ihn einzuweihen; Helfen Sie ihm, die Lektion zu lernen, ohne seiner Karriere zu schaden.

Sie sind sich nicht sicher, wie er beim nächsten Mal reagieren wird: Ihnen nichts sagen oder Kunden nicht betrügen? :-)

Wann Vertragskündigung öffentlich wird, nicht vorher “ Aus Neugier, warum kann er nicht vorher gewarnt werden?
@QPaysTaxes Ich weiß nicht, was Peter Masiar argumentiert hat, aber ich würde vorschlagen, dass das OP wahrscheinlich gesetzlich verpflichtet ist, über Angelegenheiten zwischen ihm und seinem Kunden zu schweigen und keine Informationen offenzulegen, die dies nicht sind, wenn es nicht öffentlich bekannt ist Öffentlichkeit. Wenn das OP den Entwickler vorher informieren würde, wäre er in einer ähnlichen Position wie der Entwickler. Da der Entwickler diese Informationen an das OP weitergegeben hat, besteht die Möglichkeit, dass er die Informationen versehentlich vom OP durchsickern lässt.
@QPaysTaxes - pedro_sland hat es richtig gemacht

Die anderen Antworten sind wirklich gut, aber ich habe dies in keiner von ihnen explizit gesehen -

Warum würden Sie nicht einfach empfehlen, dass ihr externer Benchmarking-Anbieter einen weiteren Test durchführt, da ihre Testmethode fehlerhaft war? Wenn Sie wissen, dass die Informationen veröffentlicht und Dienste abgeschaltet wurden, können Sie sicher einen NIST- oder ISO-Standard finden, der das richtige Verfahren für diese Art von Tests angibt. Sie können sogar Best-Practice-Informationen von ISACA einholen.

Es spielt keine Rolle, was Sie wissen, nur dass die Veröffentlichung der Zeit und der geänderten Umgebung kein gültiger Test ist. Selbst dann könnte ich zum externen Testunternehmen gehen und sie fragen, was sie denken.

Klingt so, als ob sowohl das Benchmarking-Unternehmen als auch der Anbieter daran beteiligt waren , eine Situation für ungenaue Ergebnisse zu schaffen, und meiner Meinung nach zumindest fahrlässig und höchstens geheim waren .

Auch hier weiß ich nicht, für welchen Job Sie eingestellt wurden, aber wenn irgendetwas davon in den Rahmen fällt, ist es eine gute Möglichkeit, die Preisgabe vertraulicher Informationen zu vermeiden.

Test ist fehlerhaft - Das habe ich mir gedacht.
Ich verstehe nicht, wie Sie der externen Benchmarking-Gruppe die Schuld geben können, wenn die Frage angibt, dass sein Kunde derjenige war, der die Testzeiten preisgegeben hat.
@pydsigner ja, du hast recht, ich habe mich verlesen. Ich denke, das würde die Möglichkeit der Absprache ausschließen, aber Fahrlässigkeit ist immer noch möglich. Ich würde zum Kunden gehen und ihn fragen, was zum Teufel er dachte, anstatt die externe Gruppe.

Teilen Sie Ihrem Kunden alles mit und erzählen Sie ihm von den Informationen, die Sie haben. Sie haben eine berufliche Verpflichtung, ihm den bestmöglichen Service zu bieten, und Sie haben keine berufliche Verpflichtung gegenüber dem Junior-Entwickler des Rechenzentrums. Ihr Kunde hat Sie buchstäblich dafür bezahlt, solche Dinge zu entdecken.

Nachdem Sie die von Ihnen erlangten Informationen offengelegt haben (für die Ihr Kunde Sie bezahlt). Besprechen Sie die Überprüfung dessen, was der Junior-Entwickler gesagt hat.

Wenn es geht - auf jeden Fall mit einem anderen Anbieter arbeiten.

Als Menschen versuchen wir, nett und fair zu sein, und das ist bewundernswert. Als Profi sind Sie verpflichtet, Ihrem Kunden den bestmöglichen Service zu bieten.

Dies scheint eine wirklich schlechte Idee zu sein, ohne zuerst das zu tun, was HopelessNoob gesagt hat.
Professionell oder nicht, Sie haben möglicherweise eine moralische Verpflichtung gegenüber dem Junior-Entwickler, der riskiert, in seinem Leben mit großen Problemen konfrontiert zu werden, weil er bestenfalls ein guter Whistleblower ist (und seiner beruflichen Verpflichtung nachkommt!) oder im schlimmsten Fall einen ziemlich unschuldigen Kommentar abgibt.
Sie haben sicherlich die Verpflichtung, Ihrem Kunden den bestmöglichen Service zu bieten, aber ich sehe nicht, wie das Outing des Junior-Entwicklers diesen Service merklich verbessern kann. Du willst sicherlich nicht als der Typ bekannt werden, mit dem man nicht unschuldig und ehrlich reden kann, ohne seinen Job zu riskieren.

Die Tatsache, dass die eigentliche Anwendung eine „schreckliche Softwareleistung“ hat, während in Tests „die Ergebnisse in Ordnung waren“, sollte jedem ein Begriff sein und kann als Ausgangspunkt für Diskussionen oder das Anfechten der Tests verwendet werden. Sie könnten/sollten diese Diskrepanz auf der Testfarm beim Kunden verdächtigen, zumal Sie „für sie verantwortlich“ sind.

Darüber hinaus bleibt das ursprüngliche Problem ungelöst und offen für weitere Analysen, mit oder ohne Einbeziehung des enorm bezahlten externen Unternehmens. Für viele Technologien sind Tools verfügbar, um die Produktionsleistung zu überwachen, ohne sie wirklich zu beeinträchtigen. Vielleicht möchten Sie das verwenden, um "schrecklich" zu quantifizieren. Ergänzend zur Antwort von HopelessN00b wäre dies eine weitere Möglichkeit der Überprüfung.

Ihre Quelle ist ein "Junior-Entwickler, der beim Server-Host angestellt ist und darüber geredet hat". Mit anderen Worten, soweit es Sie betrifft, haben Sie absolut nichts falsch gemacht, um diese Informationen zu erhalten.

Sie sind nicht dem ISP oder dem Junior-Entwickler beim ISP verpflichtet, sondern Ihrem Kunden. Daher glaube ich, dass Sie Ihren Kunden informieren sollten. Sie könnten erwähnen, welche Art von Quelle Sie hatten, ohne die tatsächliche Quelle zu erwähnen. Was passieren wird: Ihr Kunde wird aufhören, einen ISP zu verwenden, der betrügt, der ISP wird den Client verlieren, den er betrügt, und der Junior-Entwickler wird hoffentlich nicht mehr darüber sprechen, da er in Gefahr ist.