Sie können direkt zum Fazit springen, wenn Sie den Hintergrund und die Problemdetails nicht lesen möchten
Hinweis: Ich arbeite aus der Ferne, was seine eigenen Herausforderungen für die Kommunikation mit sich bringt.
Ich arbeite für ein kleines Unternehmen (<10 Personen), das einige verschiedene interne FileMaker-Projekte hat, die seit etwa einem Jahrzehnt herumhängen. Das meiste, was sie haben oder tun, beruht auf technologischen Entscheidungen und Praktiken, die Mitte bis Ende der 2000er Jahre eingefroren wurden (was an sich keine schreckliche Sache ist). Ich arbeite mit Kunden zusammen, um ihre C#- oder asp.net-Anwendungen zu erstellen, zu reparieren oder zu ändern. Ich kam von einem Ort, an dem ich in der Lage war, Probleme auf Organisationsebene mit Tools und Software zu finden und zu lösen, die ich und mein Team mit fast vollständiger kreativer und architektonischer Kontrolle erstellten. Was dazu geführt hat, dass „verkaufsbasierte Entwicklung“ ein ziemlich langweiliges und demotivierendes Dasein führt. Ich habe wirklich nicht die Möglichkeit, mein Entwicklungswissen unter Beweis zu stellen oder viel zufriedenstellende Arbeit zu leisten.
Mein Chef (CEO) (nennen wir ihn Fred) hat großes Interesse daran bekundet, dass ich mein Fachwissen einsetze, um eine REST-API zu entwickeln, um Social-Media-Daten und -Analysen aufzunehmen und den Zugriff auf diese Daten zu verkaufen. Ich habe auch Interesse daran bekundet und ausdrücklich erwähnt, dass ich ein Projekt mit kreativer Kontrolle brauche, damit ich das tun kann, was ich am besten kann, und eine gewisse Arbeitszufriedenheit habe. Fred hat aufgeregt zugestimmt, dass wir das tun sollten.
Über Fred:
Während meiner Zeit hier habe ich Fred als sehr hartnäckig kennengelernt, wenn es darum geht, Tools und Frameworks zu verwenden, mit denen er vertraut ist. Auch wenn sie sehr alt sind und viel Zeit kosten. Bis zu dem Punkt, an dem Fred glaubt, dass ein Lieblingswerkzeug alles kann, auch wenn seine praktischen Grenzen sehr klar sind. Dazu gehört das Festhalten an alten Annahmen und Ideen zum Umgang mit Benutzerdaten, Sicherheit und wie und wo Sie Ihren Code speichern und verwalten (z. B. keine Quellcodeverwaltung, keine HTTPS-Zertifikate, keine E-Mail-Validierung, Benutzeranmeldeinformationen sind im Klartext, Administratorkonten). mit Passwörtern 123
brauchen wir nur noch FTP für alles...etc)
In der letzten Woche hat Fred mich dazu gebracht, FileMaker zu verwenden, was gelinde gesagt eine raue und frustrierende Erfahrung war. Ich habe eine harte Zeit mit solchen Tools, da es fast die gesamte Entwicklungskontrolle wegnimmt und unzählige "Features" vermisst, die einfach mit fast jedem Web-Framework und RDBMS implementiert werden könnten. Ich habe erwähnt, dass dieses Tool in einigen Dingen großartig, in anderen jedoch schlecht ist, aber Fred glaubt, dass Sie mit FileMaker alles machen können, unabhängig von der Komplexität oder dem Umfang.
Ich gestand, dass ich nicht weiß, warum wir diese FileMaker-Übungen durchführen, und es stellt sich heraus, dass Fred bereits fest entschlossen ist, mich die gesamte Web-API, Datenverarbeitung und Datenaufnahme in FileMaker erstellen zu lassen. Was für mich als Full-Stack-Entwickler nach einer schrecklichen Idee klingt. Es gibt zahlreiche Anforderungen an ein solches System, die FileMaker nicht erfüllen kann, und es ist als RDBMS nicht der Aufgabe gewachsen, Tabellen mit möglicherweise Milliarden von Zeilen zu handhaben. Ganz zu schweigen davon, dass das Erstellen und Verwalten einer REST-API nicht einmal etwas ist, das das Tool unterstützt.
Ich habe diese Bedenken geäußert, aber die Antwort, die ich bekomme, ist, dass „FileMaker das kann“.
Der CEO möchte, dass ich ihn zu einer REST-API mache, um große Mengen an Social-Media-Daten aufzunehmen, und zahlenden Kunden Wege biete, diese API für ihre eigenen Bedürfnisse zu nutzen. Dies ist ein ziemlich komplexes, facettenreiches und großes Projekt. Und das ist etwas, woran ich schon lange gebissen habe. Er besteht jedoch darauf, dass ich es mit FileMaker schaffe, obwohl ich Erfahrung in der Full-Stack-Entwicklung vieler Varianten habe. Meine vorgeschlagene Lösung besteht darin, Asp.Net Core und ein RDBMS wie MS-SQL, MySQL/MariaDB oder PostgresSQL zu verwenden. Da dies Tools sind, in denen ich mich schnell weiterentwickeln kann, und andere im Büro C# kennen, einschließlich des CEO. Ich kann fast jede andere wichtige Sprache und jedes Web-Framework verwenden, um die Arbeit zu erledigen. Nur kein FileMaker.
Ich bin besonders besorgt darüber, dass ich keinen Einfluss auf den Entscheidungsprozess hatte (Machbarkeit, Technologieauswahl oder Anforderungen). Wann ich derjenige sein werde, der diese Anwendung erstellt.
Ich glaube auch nicht, dass ich hier gute Arbeit leisten werde. Denn meine Motivation und mein Antrieb für das Projekt sind unter den aktuellen Umständen so gut wie verflogen.
Hinweis: Ich kenne FileMaker nicht, gehe aber davon aus, dass Ihre Behauptungen alle richtig sind.
Wenn Sie möchten, dass sie Alternativen in Betracht ziehen, kommt es darauf an, wie Sie sie präsentieren.
Ich persönlich habe festgestellt, dass der Ansatz der "einfachen Demo" in solchen Fällen gut funktioniert. Ich neige dazu, einige Tests durchzuführen und die Ergebnisse in greifbare Metriken für nicht-technische Manager umzuwandeln (meistens Zeit oder Geld, je nach Thema). Das Ziel hier ist es, die Unterschiede zwischen dem gewählten und dem bevorzugten Ansatz hervorzuheben und die Unterschiede leicht verdaulich zu machen.
Ich war zum Beispiel mit einem Manager konfrontiert, der Refactoring wie die Pest vermeiden wollte. Ein Problem bestand darin, dass bei jedem Laden einer Seite unnötig 5 KB Daten gesendet wurden. Also habe ich gerechnet. Ich habe die Seitenlasten über einen Zeitraum von zwei Wochen verfolgt, das mit 26 multipliziert (um auf ein Jahr zu kommen), das mit 15 KB multipliziert und das mit den Bandbreitenkosten multipliziert (dies war eine Azure-Anwendung). Das wären Kosten pro Jahr . Die Kosten für die Umgestaltung des Problems betrugen selbst für meinen (relativ teuren) Auftragnehmerlohn <20 % der jährlichen Bandbreitenkosten.
Und diese Anwendung würde mindestens 10 Jahre lang gehostet. Die Preisunterschiede zu sehen, überzeugte meinen Manager sofort, auf meinen Vorschlag zu hören. Habe ich technisch gesehen seine Arbeit für ihn erledigt? Sicher. Aber er macht jetzt ähnliche Kostenanalysen selbst, was er vorher nicht gemacht hat. Ich habe ihm nur auf dem Weg geholfen.
Obwohl ich nicht sagen kann, dass dies definitiv der Fall ist, kommt das Festhalten an älteren Technologien oft aus der Angst vor den neueren Unbekannten. Indem Sie eine verdauliche Informationszusammenfassung der Unterschiede erstellen, senken Sie die Schwelle, sich von FileMaker zu entfernen.
Am Ende ist es die Entscheidung deines Chefs, und du kannst das nicht ändern. Wenn sie entscheiden, dass FileMaker verwendet werden soll, muss FileMaker verwendet werden. Alles, was Sie tun können, ist, an dem Projekt so zu arbeiten, wie Sie angewiesen wurden, daran zu arbeiten. Oder aufhören.
Wenn jedoch erhebliche Probleme auftreten, die Sie nicht einfach umgehen können, sprechen Sie mit Ihrem Chef. Er hat sich endgültig für FileMaker entschieden, also kennt er vielleicht Möglichkeiten, das Problem zu beheben. Um Onkel Ben zu zitieren:
Mit großer Macht kommt große Verantwortung
Wenn Ihr Chef eine bestimmte Entscheidung erzwingt, dann übernimmt er von Natur aus die Verantwortung für die Folgen dieser Entscheidung, die er getroffen hat. Schlechte Chefs vermeiden die Konsequenzen ihrer Entscheidungen und schieben die Probleme auf jemand anderen, aber ein guter Chef wird tatsächlich helfen, alle Probleme zu lösen, die sich aus der von ihnen erzwungenen Entscheidung ergeben.
Auch wenn er nicht helfen kann oder will, weisen Sie auf schwer zu lösende Probleme mit FileMaker hin, die mit anderen Bibliotheken oder Tools möglicherweise nicht auftreten würden, was seine Meinung für das nächste Projekt beeinflussen könnte.
Sie sagen, Sie werden das Projekt durchführen, aber nicht in FileMaker.
Aber bevor Sie mit der Diskussion beginnen, bereiten Sie sich vor. Stellen Sie sicher, dass Sie erklären können, warum dies in FileMaker eine wirklich schlechte Idee ist. Betonen Sie, dass Sie wegen Ihres Fachwissens eingestellt wurden. Sie sind der Experte.
Und wenn Sie schon dabei sind, eliminieren Sie die schrecklichen sicherheitsbezogenen Praktiken, die Sie erwähnt haben.
Natürlich kann dies Ihre Beziehung zum CEO belasten und, abhängig von Ihren lokalen Gesetzen, dazu führen, dass Sie gefeuert werden. Aber wenn das passiert, solltest du sowieso nicht dort arbeiten wollen.
Ich habe wirklich nicht die Möglichkeit, mein Entwicklungswissen unter Beweis zu stellen oder viel zufriedenstellende Arbeit zu leisten.
Während meiner Zeit hier habe ich Fred als sehr hartnäckig kennengelernt, wenn es darum geht, Tools und Frameworks zu verwenden, mit denen er vertraut ist.
Ich glaube auch nicht, dass ich hier gute Arbeit leisten werde. Denn meine Motivation und mein Antrieb für das Projekt sind unter den aktuellen Umständen so gut wie verflogen.
Der CEO möchte, dass Sie FileMaker für eine Anwendung verwenden, für die es nicht entwickelt wurde. Du willst nicht.
Sie haben bereits versucht, den CEO mit vernünftigen Argumenten davon zu überzeugen, dass es keinen Sinn macht, FileMaker einzusetzen. Doch der CEO sagt nur „das kann FileMaker“. Wie Sie geschrieben haben, bleibt er „stur im Festhalten und Verwenden von Tools und Frameworks, mit denen er vertraut ist“.
Damit haben Sie nach eigener Aussage entschieden, dass Sie keine gute Arbeit leisten, nicht motiviert sind und keinen Antrieb haben.
Wenn all das zutrifft, scheint es an der Zeit, einen neuen Job zu finden; eine, bei der Sie FileMaker nicht auf diese Weise verwenden müssen, denke ich.
find a new job
eine gesunde Einstellung ist, wenn es brenzlig wird.Sie müssen Ihren Chef fragen, warum er File Maker allen anderen von Ihnen vorgeschlagenen Technologien vorgezogen hat. Du verstehst eindeutig etwas sehr Wichtiges nicht.
Douglas Gaskell
Mawg sagt, Monica wieder einzusetzen
David Thornley
Douglas Gaskell
gnasher729
Douglas Gaskell
Thorbjørn Ravn Andersen