Wie kann man in einer festgefahrenen Diskussion über den Standort der Entwicklungsumgebung navigieren?

TL;DR: Boss besteht auf einer teuren Cloud-gehosteten VM für eine Entwicklungsumgebung für einen kostenbewussten Kunden. Er hat Missverständnisse und Vorbehalte gegenüber der Verwendung physischer Geräte für die Entwicklungsarbeit aufgrund von Kundeneigentums- und Risikobedenken. Wir verbringen Wochen mit dem, was ich als kein Problem ansehe, und kommen bei diesem Antrag nicht voran. Boss ist für Erklärungen oder Argumente auf die eine oder andere Weise nicht empfänglich. Es ist ein 2-Personen-Team und es gibt mehr Summen und Hahen und sonstige Bürokratie, als ich jemals hatte, als ich in einem pharmazeutischen Labor arbeitete ... An diesem Punkt möchte ich nur für diesen Kunden arbeiten, bin mir nicht sicher, wie ich das voranbringen soll.


Ich bin ein Remote-Entwickler, der für ein kleines Unternehmen (<10 Personen) arbeitet, das verschiedene Auftragsentwicklungen für andere Unternehmen durchführt. Ich arbeite alleine an den meisten unserer Projekte, und mein Chef (der Firmeninhaber, nennen wir ihn Frank) entwickelt hier und da ein wenig nebenbei. Aber zum größten Teil leitet er das Geschäft und ist infolgedessen ein wenig ins Hintertreffen geraten, wie sich die Entwicklung im Laufe der Jahrzehnte verändert hat (z. B. ist die Quellcodeverwaltung eine „neue Sache“, die von niemandem außer mir genutzt wird).

Wir starten bei einem neuen Kunden mit einem umfangreichen Greenfield-Projekt, bei dem ich der Solo-Entwickler sein werde – wir gehen davon aus, dass dieses Projekt 2-3 Jahre dauern wird. Sie sind sehr kostenbewusst, da sie ein kleines 10-Personen-Team sind und ihre Anwendung auf einem Cloud-Anbieter wie AWS gehostet wird.

Wir sind endlich an dem Punkt angelangt, an dem ich mit ihrem Produkt beginnen kann; Frank besteht jedoch darauf, dass wir uns um eine Remote-Entwicklungsumgebung kümmern müssen. Und wir gehen jetzt seit Wochen hin und her, ohne Fortschritte zu machen. Das Problem ist, dass eine ausreichend leistungsfähige VM den Kunden ~ 250 $ / Monat an Hosting-Kosten kosten wird (3.000 $ / Jahr oder 9.000 $ in den nächsten 3 Jahren), was exorbitant ist, wenn man bedenkt, wie kostenbewusst sie sind. Ich schlug vor, nur auf einem lokalen Gerät zu entwickeln, was bei allen anderen Unternehmen, in denen ich gearbeitet habe, der Standard war. Meiner Erfahrung nach sind Entwicklungsumgebungen mobil und können auf einem Laptop mitgenommen, auf einer VM gestartet oder auf meiner Workstation verwendet werden. Sie sind wegwerfbar und sind ein paar Installationen und ein Git entfernt von der erneuten Einrichtung.

Frank ist sehr daran interessiert, ein physisches Gerät vor Ort für die Entwicklung zu verwenden. Er scheint zu glauben, dass der Code und die Anwendung auf diesem Gerät leben, und wenn sie verloren gehen, verliert der Kunde sein Produkt. Frank ist besorgt, dass der Kunde jederzeit die volle Kontrolle über alles haben muss und dass die Verwendung eines Geräts, das sich nicht in seinem Besitz befindet, unprofessionell ist. Ich habe in vielerlei Hinsicht erklärt, dass dies nicht der Fall ist und dass eine Entwicklungsumgebung in unserem Stack vollständig verfügbar ist, dass der Code in einem entfernten Repository gespeichert und Backups an anderer Stelle aufbewahrt werden.

Frank scheint nicht zu verstehen, dass die Entwicklungsumgebung nicht besonders ist. Ich habe auf viele Arten erklärt, wie es funktioniert, aber seine Meinungen und Annahmen ändern sich nicht. Wir verschwenden wochenlang Zeit damit, unsere Räder über etwas so Alltägliches wie den Ort zu drehen, an dem die Entwicklungsumgebung sein sollte. Für mich spielt es keine Rolle – es ist mobil und ich kann es jederzeit auf jedem Gerät einrichten. Dadurch soll sichergestellt werden, dass ich meine Arbeit erledigen kann, auch wenn ich unterwegs bin oder den Internetzugang verliere. Eine Remote-VM ist in Ordnung, sie ist nur weniger zeiteffizient aufgrund von Latenz und anderen verschiedenen Problemen, die Teil der Remote-Entwicklung sind, und sie kostet den Kunden mehr Geld.

Ich bin mir nicht sicher, in welche Richtung ich gehen soll oder was ich an diesem Punkt tun soll. Wir haben genug selbstverschuldete Bürokratie, um ein Fortune-500-Unternehmen stolz zu machen, und wir sind nur zu zweit. Es ist extrem frustrierend.

Wie würden Sie das steuern?

Klarstellung: In meiner Firma sind 7 Mitarbeiter beschäftigt, aber bei diesem Projekt bin nur ich als Entwickler und mein Chef als Chef.

"Wie würdest du das navigieren?" Lassen Sie den Chef machen, was er will, wenn er den Kunden verliert, liegt es an ihm.
Es hört sich also so an, als hätten Sie andere Softwareprojekte für dieses kleine Unternehmen durchgeführt. Wurde die Entwicklung auf lokalen Geräten oder Remote-VMs durchgeführt? Wenn lokal, warum ist der Chef in diesem einen speziellen Fall besorgt?
@sf02 Meine Sorge ist, dass dieser Kundenvertrag einen guten Teil meines Gehalts auszahlt. Selbst dann ist es immer noch frustrierend, wenn wir uns einfach an die Arbeit machen können ...
@Dave Ich habe Kunden vom vorherigen Entwickler übernommen, der gegangen ist. Diese wurden auf Remote-Boxen ausgeführt, die intern von den Unternehmen gehostet wurden, mit denen wir einen Vertrag abgeschlossen haben. Das sind grundlegend andere Setups, als wir sie hier hätten.
Was meinst du mit "Chef"? Der Firmeninhaber? Oder irgendein niedriger Manager?
Hören Sie vielleicht auf, sich selbst zu dienen, und fangen Sie an, dem Kunden zu dienen. Was will der Kunde? Haben Sie dem Kunden beide Optionen objektiv dargestellt? Sicherlich entstehen dem Kunden im Zusammenhang mit beiden Optionen Kosten. Letztendlich sind sie es, für die Sie arbeiten. Wenn es dem Kunden egal ist oder es Ihnen überlassen wird zu entscheiden, was am besten ist, dann tun Sie, was Ihr Chef will, da er letztendlich verantwortlich ist.
Haben Sie schon einmal darüber nachgedacht, das zu tun, was Ihr Chef Ihnen sagt?

Antworten (2)

Der Chef ist der Chef. Er übernimmt die Verantwortung für seine Entscheidungen, ob gut oder schlecht. Wenn der Kunde zu ihm sagt: "Warum gibst du mein Geld für dieses dumme Ding aus, das wir nicht brauchen?" und er verliert den Kunden, liegt das an ihm, nicht an dir (und wenn er versucht, es dir anzutun, lauf SEHR weg SCHNELL). Ansonsten ist er der Boss, also macht er was er will. Sie haben Ihre Pflicht getan, ihm zu erklären, warum er etwas falsch macht und warum es falsch ist, der Rest liegt über Ihrer Gehaltsklasse, wie es heißt.

Das heißt, wenn Sie nur zu zweit in dieser "Firma" sind und er so rückständig ist, wie Sie sagen, sollten Sie sich vielleicht nach einem anderen Job umsehen. Kein Unternehmen mit Selbstachtung, das Technologie einsetzt, würde ein solches Beratungsunternehmen mit der Durchführung seiner Projekte beauftragen. Es kann sein, dass Sie früher oder später ohne eigenes Verschulden arbeitslos werden.

Das Problem ist, dass eine ausreichend leistungsfähige VM den Kunden ~ 250 $ / Monat an Hosting-Kosten kosten wird (3.000 $ / Jahr oder 9.000 $ in den nächsten 3 Jahren), was exorbitant ist, wenn man bedenkt, wie kostenbewusst sie sind.

Sie als Entwickler sollten sich wirklich nicht um Kosten kümmern – das ist die Aufgabe Ihres Managers. Wenn er zufrieden ist, dass etwas im Budget des Kunden liegt, dann ist das alles, was zählt. Sie können argumentieren, dass seine vorgeschlagene Entwicklungsumgebung für Sie umständlich sein wird usw., aber das ist etwas anderes, und trotzdem ist es immer noch seine Entscheidung (vielleicht besteht der Kunde darauf).

Unabhängig davon sagen Sie nicht, wo Sie oder der Kunde ansässig sind, daher weiß ich nicht, wie teuer 9000 US-Dollar im Verhältnis zu lokalen Gehältern usw. sind, aber ich kann mir nicht vorstellen, dass es irgendwo auf der Welt gibt, wo 9000 US-Dollar im Verhältnis dazu bedeutend sind bis 3 Mann/Jahr Softwareentwicklungskosten . Denken Sie darüber nach, was Sie für die nächsten 3 Jahre bezahlt bekommen werden, denken Sie darüber nach, was Ihre Firma dem Kunden für Ihre Zeit in Rechnung stellen wird (mindestens das Doppelte dessen, was sie Ihnen zahlen), und vermutlich sind 9000 US-Dollar ein Tropfen auf den heißen Stein.

Umgekehrt, wenn es einen Kunden gibt, der so preisempfindlich ist, dass zusätzliche 9000 $ wirklich als exorbitant angesehen werden (unabhängig davon, wie hoch die Gesamtkosten des Projekts sein werden), dann wird dies eine schreckliche Arbeitssituation sein – wie werden sie reagieren? wenn das Budget ein oder zwei Monate überschritten wird oder Sie eine Bibliothek eines Drittanbieters kaufen müssen usw.?

Verdammt, die zwei Wochen, in denen das OP ihre Füße unter Drogen gesetzt hat, anstatt es nur zu tun, haben einen guten Prozentsatz der 9000 Dollar gekostet, da bin ich mir sicher.