Ich bin ein Junior-Level-Programmierer in einem Unternehmen. Mein Chef hat mir den Auftrag gegeben, einen Job auf eine bestimmte Art und Weise zu erledigen, aber ich denke, das ist zu kompliziert und erfordert auch etwas Lernen. Ich kann die Aufgabe auf meine eigene Weise erledigen, was die Verwendung eines bestimmten Open-Source-Programms erfordert.
Soll ich die Aufgabe einfach so erledigen, wie es mein Chef sagt, oder auf meine Art?
Soll ich die Dinge einfach so machen, wie es der Chef sagt, was ein wenig Lernen erfordert, oder die Aufgabe auf meine Art erledigen, was die Verwendung eines bestimmten Open-Source-Programms erfordert?
Ich möchte Sie dringend bitten, die von Ihrem Chef beschriebene Methodik und Technologie zu verwenden. Er ist erfahrener als Sie und verfügt über mehr geschäftliches und technisches Fachwissen.
Sobald Sie ein paar Projekte auf den Weg gebracht haben, können Sie gerne Vorschläge unterbreiten, die eine Aufgabe schneller erledigen könnten. Seien Sie nicht überrascht, dass Sie in diesem Fall möglicherweise herausgefordert werden, Ihren Vorschlag im Hinblick auf die Markteinführungszeit, die Anschaffungskosten und den Gesamtbesitz zu rechtfertigen.
Besprechen Sie Ihr Vorgehen mit dem Chef. Lassen Sie es nicht so klingen, als wäre Ihre Herangehensweise besser und Sie würden seine Herangehensweise missachten.
Boss, ich habe diese Aufgabe analysiert und mich über den folgenden alternativen Ansatz gewundert. Was denkst du darüber?
Es gibt zwei Hauptergebnisse, die beide für Sie von Vorteil sein können:
Boss erklärt Ihnen 1 , warum der von ihm vorgeschlagene Ansatz besser ist
Dies zeigt Ihnen einen Teil des Gesamtbildes und einen kostenlosen Einblick in das, was hinter den Kulissen passiert, wenn Chefs diese Entscheidungen treffen. Wenn Sie die Karriereleiter hinaufsteigen, sind Sie dafür verantwortlich, diese Entscheidungen selbst zu treffen, sodass Ihnen diese Erkenntnisse später helfen werden.
Ihr Unternehmen macht Geschäfte, und die Softwareentwicklung ist nur ein Teil dieses Geschäfts. Daher haben geschäftliche Erwägungen Vorrang vor Ihren persönlichen Vorlieben . Als Junior-Entwickler konzentrieren Sie sich vielleicht fast ausschließlich auf den Teil der Softwareentwicklung, aber Ihr Chef ist dafür verantwortlich, die richtige Geschäftsentscheidung zu treffen.
Boss erkennt, dass Ihr Ansatz besser ist
Das ist weniger wahrscheinlich, aber nicht unmöglich. In diesem Fall können Sie die Aufgabe nicht nur auf Ihre Weise erledigen, sondern auch einen positiven Eindruck hinterlassen. Wenn diese Aufgabe oder etwas Ähnliches das nächste Mal ansteht, erinnert sich Ihr Chef an Sie als die Person, die einen besseren Weg gefunden hat 2 .
Dann sollten Sie in jedem Fall tun, was der Chef sagt . Mit dem obigen Ansatz würde Ihr Chef jedoch sehen, dass Sie tatsächlich über Ihre Arbeit nachdenken . Dies ist auch oft ein wichtiger Aspekt bei der Entscheidung über Beförderungen im Juniorenbereich. Ein Junior-Entwickler, der einfach tut, was ihm gesagt wird, braucht ständige Überwachung und wird nicht befördert, während jemandem, der beharrlich versucht, einen Beitrag zu leisten und zu verstehen, wie die Dinge funktionieren, größere Verantwortung anvertraut werden kann.
1 Wenn der Chef nicht bereit ist, es zu erklären, können Sie ihn höflich fragen, aber belästigen Sie ihn nicht. Manchmal entscheidet der Chef, dass es von größter Bedeutung ist, die Arbeit zu erledigen, und die Überzeugung eines Nachwuchskräften ganz unten auf seiner Prioritätenliste steht. Erledigen Sie in diesem Fall einfach die Arbeit, wie er sagt, und stellen Sie vielleicht später Fragen, wenn er eher bereit ist, etwas Zeit für die Erklärung zu haben.
2 Es sei denn, Ihr Chef ist ein Idiot, der sich darüber ärgert, in welchem Fall Sie ein viel größeres Problem haben, das nicht Gegenstand dieser Frage ist.
Wann Sie Ihrem Chef folgen sollten
Wenn Ihr Chef Ihnen ausdrücklich Anweisungen gibt, wie etwas zu tun ist, sollten Sie die Arbeit so erledigen, wie er es beschreibt. Im Allgemeinen geben sie sich nicht die Mühe, zu skizzieren, wie etwas getan werden sollte, es sei denn, sie interessieren sich für das Wie.
Sie sollten vor allem nicht abtrünnig werden und Ihr eigenes Ding machen, nachdem der Chef Ihnen Anweisungen gegeben hat, wenn dies die Verwendung von Bibliotheken von Drittanbietern beinhaltet. Es gibt normalerweise zahlreiche Probleme, die sich aus der Verwendung von Software von Drittanbietern ergeben können, und als neuer Entwickler ist dies keine gute Idee. Die Verwendung von Software von Drittanbietern (insbesondere ohne Genehmigung) kann zu einem oder mehreren der folgenden Probleme führen:
Wenn Sie Probleme damit haben, wie der Chef Sie auffordert, die Arbeit zu erledigen, und zuversichtlich sind, dass es einen besseren Weg gibt, sollten Sie Ihre Ergebnisse Ihrem Chef präsentieren und eine Genehmigung einholen, bevor Sie die Arbeit auf Ihre eigene Weise erledigen. Es ist im Allgemeinen verpönt, wenn neue Entwickler zeigen, dass sie glauben, es besser zu wissen als die leitenden Ingenieure, und keine Anweisungen erhalten.
Wann Sie die Initiative ergreifen sollten
Sobald Sie das System und die geschäftlichen Anforderungen hinter einem Projekt vollständig verstanden haben und die Freiheit erhalten haben, ein Projekt ohne zusätzliche Anweisungen oder Aufsicht über die Durchführung des Projekts abzuschließen, können Sie dies auch so tun Sie halten es für richtig. Im Allgemeinen sollten sich neuere Entwickler Code-Reviews unterziehen, damit die Senior- und Mid-Level-Ingenieure die Arbeit überprüfen können, bis alle mit der Qualität der geleisteten Arbeit zufrieden sind. (Eigentlich sollten Code-Reviews fortgesetzt werden und alle einbeziehen, aber dies wird viel seltener befolgt und ist eine weitere Diskussion für ein anderes Forum).
Hören Sie auf Ihren Chef
Junior-Entwickler übersehen oft den Aspekt der Wartbarkeit vorgeschlagener Lösungen. Ja, Sie haben vielleicht einen genialen Open-Source-Ansatz zur Lösung des Problems, aber es hilft Ihrem Chef (oder dem Unternehmen) langfristig nicht, wenn Sie die einzige Person im Team sind, die weiß, wie man es unterstützt. Denken Sie darüber nach, was passiert, wenn Sie in den Urlaub fahren oder krank werden oder gehen. Was passiert dann? Es ist nicht Ihr Problem, aber Ihr Chef könnte sich darüber ärgern.
Das soll Ihren Innovationsgeist nicht töten, aber es gibt eine größere Realität, die Sie berücksichtigen müssen, wenn Sie etwas Neues einführen.
Muss ich die Dinge so machen, wie der Chef es verlangt?
Du musst es immer so machen, wie es dein Chef verlangt.
Wenn Sie eine solide Alternative haben und Ihr Chef offen für Anregungen ist, können Sie ihn davon überzeugen, Sie zu bitten, es anders zu machen, aber Sie würden es immer noch so machen, wie Ihr Chef es verlangt hat .
Angenommen, ich bin Ihr Chef. Wenn ich dir sage, A zu tun...
... und Sie tun B, Sie sind ein schlechter Angestellter und ich werde wahrscheinlich sauer oder enttäuscht von Ihnen sein. Ich werde dir weniger vertrauen, da du tust, was du willst.
... und Sie überzeugen mich, dass B besser ist, dann werde ich Sie bitten, B zu tun, und Sie werden tun, was Ihnen gesagt wird. Ich werde dich hoch schätzen. Sie beide (haben einen besseren Weg gefunden, etwas zu tun) und (haben getan, was Ihnen gesagt wurde) .
... und Sie können mich nicht davon überzeugen, dass B besser ist, und Sie tun A, ich werde Sie mehr schätzen. Sie haben eine Alternative vorgeschlagen, die besser hätte sein können, aber die höheren Anforderungen akzeptiert. Ich schätze beides.
... und Sie können mich nicht davon überzeugen, dass B besser ist, und Sie tun B ... siehe (1) . Wahrscheinlich noch schlimmer: Sie können sich nicht auf Unwissenheit oder guten Willen berufen, da ich Ihnen ausdrücklich gesagt habe, B nicht zu tun.
... und Sie können mich nicht davon überzeugen, dass B besser ist, und Sie tun beides, um "mir zu beweisen", dass es besser ist ... es ist ein riskanter Schritt. Du würdest mehr Zeit aufwenden, vielleicht unnötigerweise, und selbst wenn du Recht hättest, könnte ich dir deinen Trotz übelnehmen. Es hängt WIRKLICH von meiner Persönlichkeit, meiner aktuellen Stimmung und Ihrer Beziehung zu mir ab. Es ist riskant und ich würde es nur empfehlen, wenn Sie Ihren Chef kennen und wirklich denken, dass es gut funktionieren wird. Selbst dann ist es riskant.
Wenn Sie also wirklich denken, dass Ihr Weg (B) besser ist, sollten Sie wirklich gute Argumente dafür vorbringen, damit Ihr Chef sagen kann: „Ok, probieren Sie es aus“. Seien Sie nicht nervig oder zu aufdringlich. Wenn du seine Zustimmung nicht bekommst, lass es einfach. Mach es wie sie sagen. Verdienen Sie sich ihr Vertrauen und ihren Respekt mit solider Arbeit und wahrscheinlich werden sie das nächste Mal offener für Ihre Vorschläge sein.
Ihr Chef ist, nun ja, Ihr Chef.
Sie sind buchstäblich verantwortlich für das, was Sie tun. Das ist ihre Aufgabe. Es ist ihr Daseinszweck. Sie sind da, um Ihnen zu sagen, was zu tun ist.
Manchmal beschließen sie, auf Ihren Rat zu hören, und manchmal beschließen sie sogar, Ihren Rat anzunehmen. Aber das müssen sie nicht, denn sie sind dein Boss.
Es ist ihre Entscheidung.
Das ist nicht schwer.
Mit einem Wort, ja.
Während die Verwendung eines Open-Source-Programms zur Lösung des Problems kurzfristig funktionieren kann, gibt es keine Möglichkeit zu wissen, wie sein Status in der Zukunft sein wird. Unternehmen werden etwas mehr Zeit damit verbringen, etwas Eigenes zu machen, damit die Wartung dieser Software sichergestellt ist, weil sie intern erledigt wird.
Sie können auch davon ausgehen, dass Ihr Chef Ihnen diese Aufgabe als Lernerfahrung präsentiert. Es ist nichts falsch daran, Fähigkeiten zu verbessern :)
Gehen Sie davon aus, dass Sie über ein gewisses Budget an sozialem Kapital verfügen, das durch „aufsässiges“ Verhalten genutzt werden kann.
Gehen Sie jedoch davon aus, dass Sie auf absehbare Zeit über einen spärlichen Vorrat an diesem Budget verfügen werden. Wenn Sie zu viel ausgeben, treten Konsequenzen ein, bis hin zur Kündigung.
In einer solchen Situation lautet die Kernfrage: „Ist es das wert, meinen Chef so viel näher zu drängen, mich zu feuern?“
Wenn das Problem nur darin besteht, dass Ihr Chef Ihnen gesagt hat, dass Sie etwas auf eine bestimmte Weise tun sollen, ohne Open-Source-Tools zu verwenden, möchten Sie wirklich nicht Ihr Sozialkapitalbudget dafür verschwenden. Es kann länger dauern und eine Fehlerbehebung erfordern, die das Open-Source-Projekt bereits durchgeführt hat, aber die richtige Antwort für einen Mitarbeiter, der ein Jahr später im selben Job arbeiten möchte, lautet „ Nein “ .
Als Junior-Level-Entwickler (oder überhaupt als Junior-Level-Entwickler) ist es nicht Ihre Aufgabe, das Rad neu zu erfinden oder „kreativ“ zu sein – Ihre Aufgabe ist es, sich als vertrauenswürdige und glaubwürdige Ressource zu etablieren.
Sie können sicherlich fragen, warum Ihr Chef es auf eine bestimmte Weise möchte, aber wundern Sie sich nicht, wenn Sie (Ihrer Meinung nach) keine zufriedenstellende Antwort erhalten.
Für einen Manager gibt es nichts Ärgerlicheres als einen Mitarbeiter, der denkt, er sei klüger als sein Vorgesetzter. Sich wiederholt seinem Chef zu widersetzen, wird von Experten als „karrierebegrenzender Schritt“ bezeichnet, und glauben Sie mir, die Leute erinnern sich viel länger daran, als Sie sich vorstellen können.
Es ist besser, wenn Sie Ihrem Chef richtig zuhören und nach Anweisung programmieren.
Der Hauptgrund dafür ist, dass Sie möglicherweise nicht nur ein einzelner Programmierer für das Projekt sind. Wenn Sie sich also an die Richtlinie halten, ist dies gut für andere Programmierer und die Programmierer, die nach Ihnen arbeiten werden.
Jedes Unternehmen hat eine spezielle Arbeitsstruktur/Kultur, hier meine ich das Softwaremodell. Wenn alle Programmierer der gleichen Richtlinie folgen, wird es allen leicht fallen, den Code anderer zu verstehen.
Wenn Sie ein Junior- Entwickler sind, dann ja. Ihre Rolle ist in Ihren Titel eingebrannt. Junior-Entwickler werden dazu gebracht, Grunzerarbeit zu leisten. Es mag ein wenig ausbeuterisch klingen, aber gleichzeitig hilft die Grundarbeit den Entwicklern, den Code zu verstehen und sich mit Mustern und Prozessen vertraut zu machen, insbesondere in Bezug darauf, wie Ihre spezielle Organisation sie verwendet.
Mach die Dinge so, wie es dein Chef sagt, aber du kannst trotzdem kreativ werden, während du innerhalb der Linien ausmalst. Suchen Sie nach innovativen Wegen, um die Effizienz, Lesbarkeit und Stabilität Ihres Codes zu verbessern. Stellen Sie sicher, dass es gründlich getestet wurde, und überlegen Sie sich Randszenarien zum Testen. Der Code fast jedes Junior-Entwicklers wird irgendwann überprüft, und wenn der Prüfer durchweg soliden, effizienten, vollständig getesteten und gut dokumentierten Code sieht, wird Ihre Meinung viel mehr Gewicht haben. Schließlich können Sie vielleicht neue Vorgehensweisen vorschlagen, weil Sie dann eine gute Arbeitsmoral und solide Programmierpraktiken demonstriert haben. Es ist auch wahrscheinlicher, dass Sie zu diesem Zeitpunkt in eine Position mit mehr Autonomie befördert werden.
Denken Sie auch daran, dass die Programmiergemeinschaft wohl oder übel sehr kastenbasiert ist. Senior-Entwickler sind nicht immer freundlich zu Junior-Entwicklern, die denken, sie wüssten es besser, selbst wenn sie es wissen. Letztendlich sollten Sie bei allem, was Sie tun, Respekt zeigen. Selbst wenn Sie einen bestimmten Entwickler, Ihren Chef usw. kennen, liegen sie völlig falsch, kommen Sie nicht einfach heraus und sagen Sie das. Gehen Sie Konflikte stattdessen aus einer Lernperspektive an. Bitten Sie Ihren Chef oder wen auch immer (freundlicherweise), zu erklären, warum eine Sache so gemacht werden sollte, wie sie es sagen, damit Sie es wirklich verstehen können. Sie können Gespräche oft auf diese Weise beginnen und Ihre Ideen möglicherweise entspannter vorbringen, wo Ihr Chef weniger „Sie liegen falsch“ als vielmehr „Lass uns zusammenarbeiten, um den besten Weg zu finden“ hört.
Schließlich werden Sie nicht übermütig. Alle Entwickler aller Erfahrungsstufen halten sich immer für Rockstars. Es ist ein Nebeneffekt dessen, was wir tun, da der Schöpfungsakt einem das Gefühl gibt, gottgleich zu sein. Die einfache Wahrheit ist jedoch, dass es immer etwas Neues zu lernen gibt und immer Bereiche, in denen Sie sich verbessern können. Ich habe den größten Teil meines Lebens programmiert und lerne immer noch jeden Tag neue Dinge, habe immer noch jeden Tag kopfklopfende Momente der Dummheit. Das ist gut. Das ist normal. Die Gefahr kommt, wenn du denkst, du weißt alles, denn dann bist du unbelehrbar.
Ja, ich bin diesen Weg schon so oft gegangen, dass Ihr Chef hoffentlich das Gesamtbild im Blick hat. Ich habe aufgehört zu zählen, wie oft ich Dinge schneller und effizienter erledigen konnte, nur um später von einer Abhängigkeit/Funktion zu erfahren, die das Spiel komplett verändert. Befolgen Sie das beschriebene Verfahren und schlagen Sie anschließend gegebenenfalls Verbesserungsvorschläge/Feedback vor.
Wie andere gesagt haben, ist die kurze Antwort "Ja". Tun Sie, was Ihr Chef Ihnen gesagt hat.
Sie denken vielleicht, dass Ihr Weg „besser“ ist, aber die Definition Ihres Chefs von „besser“ könnte sich von Ihrer unterscheiden. Wenn Sie ein Junior-Programmierer sind, verfügt Ihr Chef im Allgemeinen über viel breitere Kenntnisse und Erfahrungen als Sie. Er wird zum Beispiel über Dinge Bescheid wissen wie:
In einer idealen Welt würde Ihr Vorgesetzter Ihnen all diese Dinge erklären, damit Sie den vollen Kontext Ihrer Arbeit kennen. Aber nicht alle Führungskräfte haben die Zeit/Lust dazu. Sie können auf diese Erklärungen drängen, aber hören Sie auf zu drängen, wenn Sie Ärger spüren. Ohne diese Erklärungen können Sie nicht sagen, welcher Ansatz „besser“ ist, also tun Sie einfach, was Ihr Chef Ihnen gesagt hat.
Patricia Shanahan
Überlastung
Jane S
Coxy
Brian McCutchon
JDługosz
Aaron
Aaron
Aaron
Maskierter Mann
Maskierter Mann
MrWonderful