Wie kann ich wieder ein selbstbewusster Entwickler werden?

Hier ist also die Geschichte: Ich bin ein frischgebackener CS-Absolvent, der seit ungefähr einem halben Jahr für ein Regierungsunternehmen arbeitet, nicht weil es meine erste Wahl war, sondern weil ich ihr Universitätsstipendium genommen habe und keine halbe Million dazu habe zahlen sie zurück. Es ist traurig, weil ich ursprünglich ein Stellenangebot im Silicon Valley hatte, dieses aber aufgrund der ganzen Situation ablehnen und in mein Heimatland zurückkehren musste.

Meine Arbeit dreht sich derzeit um mehr F&E-Arbeit und die Beratung der Kunden, daher verbringe ich einen großen Teil meiner Zeit damit, Meetings zu organisieren und Papierkram zu erledigen, anstatt Entwicklungsarbeit zu leisten, was mir in früheren Praktika woanders sehr viel Spaß gemacht hat. Die Kultur ist, individuell an einem Projekt zu arbeiten, Versionskontrolle wird selten (!) verwendet und ich interagiere nicht viel mit anderen Teammitgliedern. Ich habe mich bemüht, mich anzupassen, aber an den meisten Tagen fühle ich mich nur gelangweilt und traurig, was meine Leistung beeinträchtigt.

Ich versuche mein Bestes, um aus diesem Loch herauszukommen, indem ich aktiver bei Stack Overflow bin und ein paar Nebenprojekte habe (die ich viel interessanter finde als meine Arbeit), und beabsichtige, bald einige Patches für Open Source einzureichen, aber Ich komme oft müde und demotiviert von der Arbeit zurück und wälze mich auf dem Bett, anstatt einen Job zu suchen und an meinen Projekten zu arbeiten.

Wie kann ich mich zwingen, wegen Schulden weiter zu arbeiten? Was kann ich tun, um als Programmierer wieder Vertrauen in mich selbst zu gewinnen?

BEARBEITEN: Vielen Dank für den Rat, es ist aufschlussreich, verschiedene Perspektiven zu sehen, und es ist großartig, einen erfahrenen und unterstützenden Haufen von Leuten hier beim Stack-Austausch zu haben! jetzt zurück zu den bugs...

Hallo d3lphi, willkommen bei Workplace, der Q&A-Site für Fragen zur Navigation am Arbeitsplatz. Ein paar Punkte, zuerst würde ich vorschlagen, den Punkt über das Geschlecht zu klären, da Leute von beidem Ihre Aussage falsch verstehen könnten. Außerdem werde ich den letzten Teil Ihrer Frage ein wenig bearbeiten, damit er sich darauf konzentriert, Antworten auf das Problem zu finden, und nicht auf eine Umfrage. Fühlen Sie sich frei, eine weitere Bearbeitung vorzunehmen , um sich auf die Klärung der Frage zu konzentrieren, wenn meine Bearbeitungen nicht ganz ins Schwarze treffen. Viel Glück! :)
Ich würde sagen, Nebenprojekte und/oder Open Source. Sie könnten auch versuchen, mit der Situation zu Ihrem Chef zu gehen (es sei denn, Sie müssen die Schulden zurückzahlen, wenn Sie gefeuert werden, was haben Sie zu verlieren?)
Moment mal, was ist deine Rolle bei diesem Praktikum? Werden Sie aufgrund des Vertrauensproblems, wenn Sie Code schreiben sollten, dazu gedrängt, mit Kunden umzugehen und Meetings zu verwalten? Warum sollte diese Regierungsbehörde Ihnen dieses Praktikum geben, nur damit Sie die Fähigkeiten, die Sie erworben haben, nicht tatsächlich einbringen? Es muss jemanden geben, der mehr von dir erwartet und will. Wenn nicht, machen Sie diese Person zu Ihnen und lassen Sie sich feuern, damit Sie frei sind, diesen Auftritt im Silicon Valley zu bekommen.
@Amy: Ja, ich muss die Schulden trotzdem zurückzahlen (mit Zinsen!), Aber je länger ich bleibe, desto geringer werden sie. Aber die Situation so weit wie möglich zu ändern und mit dem höheren Management zu sprechen, klingt gut.

Antworten (3)

Vor einem Jahr war ich fast oder in einer noch schlimmeren Situation als Sie jetzt, mit den finanziellen und familiären Sorgen zu kämpfen. Ich brauchte 2 Jahre, um die Dinge von meinem Heimatgelände zu sortieren, um an einem Ort zu sein, an dem ich nach Abschluss meines Abschlusses von CS Stream sein sollte.

Aus meiner persönlichen Erfahrung kann ich Ihnen daher folgendes empfehlen:

  • Versuchen Sie, unabhängig von der Situation positiv zu bleiben.
  • "Rom wurde nicht an einem Tag erbaut", also müssen Sie mit Ihrer Karriere den Entwicklungsprozess kontinuierlich verfolgen.
  • Die IT ist eine der dynamischsten Branchen, Sie müssen auf dem neuesten Stand sein, um dem Tempo zu folgen.
  • Versuchen Sie, etwas Zeit von Ihrer täglichen Arbeit zu sparen, und Open Source wäre wirklich eine gute Option (vorgeschlagen von einigen Benutzern hier, wie einmal gestellt Meine Frage ).
  • Versuchen Sie für Codierungszwecke, Konzepte über Entwurfsmuster, das Schreiben von Algorithmen, das Programmieren usw. zu erfassen.
  • Sehen Sie sich diese Seite an: http://projecteuler.net/ ; Ich benutze es, um meine Codierung zu verbessern.
  • Vielleicht mögen einige Leute diese Antwort nicht, aber meiner persönlichen Erfahrung nach ist Workplace ein großartiger Ort, um positiv zu bleiben, den Fragen und Antworten zu folgen, da Sie sicherlich feststellen werden, dass Sie nicht der Einzige sind, der Probleme hat.
  • Versuchen Sie auch, Ihren Freunden und Ihrer Familie zuzuhören und fragen Sie nach ihren Vorschlägen für Ihre Karriereplanung, aber überlassen Sie die endgültige Entscheidung nur Ihnen.

Eine Sache, die Sie wahrscheinlich im Hinterkopf behalten sollten, ist, dass es zwar eine großartige Sache ist, Entwickler zu sein (ich bin selbst seit fast 30 Jahren einer), aber Sie können den langfristigen Nutzen nicht unterschätzen, wenn Sie lernen, wie man Beziehungen pflegt und, was noch wichtiger ist, zuhören zu Ihren Kunden. Ob Sie es glauben oder nicht, Sie haben gerade jetzt eine ziemlich gute Gelegenheit, nach dem, was Sie beschrieben haben. Sie haben die Leidenschaft, die ein Entwickler braucht, um erfolgreich zu sein, aber jetzt müssen Sie wahrscheinlich an der Geduld und den Fähigkeiten zur sozialen Interaktion arbeiten, die nicht immer auftreten, wenn Sie sechs bis acht Stunden am Tag vor einem Computer verbringen . Auch wenn Sie vorhaben, selbstständig zu arbeiten, sollten Sie dies als Chance betrachten, die geschäftliche Seite der Softwareentwicklung kennenzulernen.

An Nebenprojekten zu arbeiten, um Ihre Fähigkeiten auf dem neuesten Stand zu halten, ist eine sehr gute Idee, aber geben Sie dieser Position noch eine Weile eine Chance. Wenn die Arbeit ermüdend und langweilig ist, nutzen Sie Ihr technisches Know-how, um Wege zu finden, die Qualität Ihrer Zeit zu verbessern. Entwickeln Sie kleine Workflow-Automatisierungsprojekte, die Ihnen helfen, Ihre Aufgaben unter Kontrolle zu halten, und Ihnen auch die Möglichkeit geben, Ihre Programmiermuskeln spielen zu lassen. Es hört sich so an, als würden sie Ihnen sagen, was Sie tun müssen, aber nicht, wie es erreicht werden muss. Scheuen Sie sich also nicht, Ihrer Fantasie freien Lauf zu lassen. Wenn Sie richtig damit umgehen (wozu Sie fähig sind), werden die richtigen Leute darauf aufmerksam, was Ihrem Berufswunsch keinen Abbruch tut und die Tage auf jeden Fall viel einfacher vergehen lässt.

Manchmal ist es nicht so schwer, das Sprichwort "Wenn das Leben dir Zitronen gibt, mach Limonade" anzuwenden, wie wir es für uns selbst machen ...

Aber was ist, wenn Sie Limonade auch wirklich hassen?
Ganz zu schweigen von Ihren wichtigsten „Kunden“ sind Ihr Chef und die Gesprächspartner
@Erik Reppen - "Aber was passiert, wenn man Limonade wirklich hasst?" Dann gibst du es oder verkaufst es an andere. Oder machen Sie stattdessen Zitronenquadrate und verschenken oder verkaufen Sie diese. Oder Sie schneiden es in dünne Scheiben und dekorieren es mit einem Gin Tonic und trinken, verschenken oder verkaufen es. Oder Sie tauschen die Zitronen gegen Limetten, pressen sie aus und geben sie mit Eis, Triple-Sec und Tequila in einen Mixer. Aber das sind alles etwas weniger prägnante Sprüche.

Ich habe schon einmal in einem ähnlichen Umfeld gearbeitet. Ich konnte immer noch viel programmieren, aber die Kultur der Isolation war genauso ein Thema. Darunter litten nicht nur meine Motivation und Leistungsfähigkeit, sondern es gab keinen Ausgleich zu meinen Schwächen, sodass auch die daraus resultierende Software litt. Die Kombination führte schließlich dazu, dass ich losgelassen wurde, bevor ich die Dinge umdrehen konnte.

Dies sind Vorschläge, die ich basierend auf dem gemacht habe, was für mich funktioniert hat und was nicht:

  • „Bleib positiv“ ist ein absolut guter Ratschlag, aber einer dieser Dinge, die einfach nur nervig zu hören sind. Es ist ja nicht so, als würdest du es nicht schon versuchen! Versuchen Sie, sich auf sich selbst zu konzentrieren und darauf, was Sie tun können, um ein besserer Entwickler und Teamplayer zu sein. Stellen Sie sich vor, Sie haben diesen süßen Job im Silicon Valley, müssen aber trotzdem diese Art von Arbeit erledigen, während Sie als Neuling Ihre Gebühren bezahlen. Tun Sie es so, als wollten Sie Ihre großartigen neuen Chefs beeindrucken und gleichzeitig die Zeit minimieren, die Sie nicht mit dem Programmieren verbringen. Nutzen Sie Ihre CS-Kenntnisse, um den Workflow so zu gestalten, dass er besser zur technischen Struktur des Projekts passt. Arbeiten Sie an der Optimierung der Dokumentenerstellung, indem Sie Vorlagen erkunden und Shortcuts und Tipps zum Bearbeiten von Dokumenten lernen.
  • Neil hat Recht mit der Möglichkeit, Ihre Kommunikationsfähigkeiten zu verbessern. Die Wünsche und Bedürfnisse eines Kunden zu verstehen und die Unterschiede zu erkennen, wird immer eine wesentliche Fähigkeit sein. Lassen Sie die Begeisterung der Kunden anstecken und konzentrieren Sie sich darauf, ihnen beim Erreichen ihrer Ziele zu helfen. lass sie deine Teamkollegen sein. Wenn Sie wie viele Programmierer introvertiert sind, arbeiten Sie auch daran, charmant und umgänglich zu sein. Betrachten Sie es als unternehmerische Praxis; Dies ist eine der Klassen, die für ein erfolgreiches Start-up erforderlich sind.
  • Das Gleiche gilt für die Workflow-Automatisierung. Erstellen Sie nach Möglichkeit Skripte und automatisieren Sie die alltäglichen, regelmäßigen Aufgaben. Wenn kleine Unternehmen erfolgreich werden und wachsen, ist dies ein Bereich, der den Fortschritt ernsthaft beeinträchtigt. Die Wartung ist ein erheblicher Zeitfresser; Werden Sie ein Guru darin, es robust zu minimieren.
  • Wenn die Versionskontrolle nicht wirklich verwendet wird, gibt Ihnen das viel Spielraum, um zu lernen, wie Sie sie einrichten und gute Verzweigungstaktiken und Commit-Gewohnheiten entwickeln. Sie können mit Ideologien und Technologien experimentieren, ohne andere zu beeinflussen. Richten Sie ein Git-Repository für sich selbst ein und üben Sie das Jonglieren von Dev-, Bugfix- und Release-Branches, spielen Sie mit automatischem Skripting, um Versionsnummern hinzuzufügen usw. Wenn Sie länger genug dort bleiben, lernen Sie mehr als eine Möglichkeit kennen, dies zu tun.
  • Wie Swapnesh sagte, arbeiten Sie an Ihren Entwicklungsfähigkeiten. Wenn Sie immer noch Dinge programmieren, üben Sie einige der Softwareentwicklungsmethoden so genau wie möglich selbst. Es ist wahrscheinlich ziemlich schwierig, Scrum als eine Person zu führen, aber Sie können immer noch ein Gefühl dafür bekommen. Informieren Sie sich über Designmuster und Best Practices. Vielleicht ist ein Programm, das Sie schreiben müssen, für die Verwendung einer Klassenfabrik geeignet, obwohl es niemals so weit skaliert wird, dass es einen Unterschied macht. Sie können es immer noch zum Üben verwenden. Sie können sogar verschiedene Architekturen für dasselbe Problem ausprobieren, um zu lernen, wie Sie sie in der Praxis verwenden.
  • Isolation kann ein großes Problem sein. Es ist nicht nur selbstverstärkend, sondern es ist auch leicht, Einzelpersonen dafür verantwortlich zu machen, dass sie sich nicht mehr anstrengen. Mittagessen mit Menschen, soweit es die Kultur zulässt; Brown-Bagging ist sparsam, hat aber soziale Kosten. Finden Sie heraus, was andere gut können oder lieben, und behandeln Sie sie als lokale Experten darin. Angenommen, eine Person ist für die Netzwerkprogrammierung bekannt, und Sie müssen eine Nachrichtenanalyse oder ähnliches implementieren. Kommen Sie mit Ihrem Plan und fragen Sie sie dann, ob sie denken, dass es funktionieren wird oder verbessert werden könnte. Oder probieren Sie Ihren Plan aus und tun Sie dasselbe, wenn er überarbeitet werden muss. Es spielt keine Rolle, wie gut Sie oder sie sind; Sie geben ihnen die Möglichkeit, sich gut zu fühlen, ihr Fachwissen zu zeigen und gleichzeitig Kontakte zu knüpfen. Es ist wichtig für die Bindung, und wenn es anfängt, sich durchzusetzen, Möglicherweise erhalten Sie mehr Chancen, an Code zu arbeiten. Dies funktioniert auch für all die Dinge, die Sie nicht programmieren müssen.
  • Jetzt ist nicht die Zeit, den Status quo aggressiv in Frage zu stellen. Wenn Sie versuchen, sich für die Versionskontrolle für alle oder etwas Ähnliches einzusetzen, werden Sie wahrscheinlich Ressentiments fördern, die Isolation verstärken und anfangen, als Schurke angesehen zu werden. Scheuen Sie sich nicht, zur Verbesserung der Dinge beizutragen, aber seien Sie bescheiden und hilfsbereit. Kreuzzüge gewinnen keine Freunde.

Hoffentlich ist dieser Beitrag zum Jahresende hilfreich für Sie oder jemand anderen, der darauf stößt. Der Hauptpunkt hier ist, sich darauf zu konzentrieren, ein guter Programmierer zu sein . Ihr Job ist immer noch voller Möglichkeiten, Ihre Krallen scharf zu halten und mehr zu lernen, Sie müssen sie nur selbst finden und nutzen. Wachsen wird Ihr Selbstvertrauen stärken, und je mehr Sie Ihr Arbeitsumfeld für sich selbst produktiver gestalten , desto erträglicher wird es.